Install Steam
login
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem
There's a known issue regarding step height due to a difference in how steps are climbed in the true 3D world of Garry's Mod vs the pseudo 3D world of Doom. Doom's map structure is simpler, and so it is able to work out exactly how high the player needs to move to fit through an opening, while half-life 2 derived games will perform a hull trace at the player position + step height, which will fail in areas with low ceilings. But, based on your description of getting stuck on the exit sign, I don't think this is the issue you are seeing. You need to use the teleporter pad entity to enter the map. This will set your player hull to the correct size.
I noticed that the portals set your height correctly the last time I tried the mod. But does a level change at the end of the map not set your height to that same value? Because I noticed on map 2 on doom 2 I got stuck in the little drop down areas with the water in them because there is a little square of water and I guess that prevents me from walking anywhere else. I'll try it again starting from map 2 and entering with a portal to see if you can only get this height with the entry portal. But there's also issues on later maps where the teleporters have a bit of a ceiling and you can't actually step into them without noclipping, like map 2's secret teleporter where you get the red keycard.
IIRC the teleporter you cannot step on to is affected by that step height issue I mentioned. Doom guy has an absurdly large step height compared to Gordon Freeman, which makes the flaw with the Half-life 2 step height implementation more obvious. You are usually able to jump into these spaces.
I have the marine model enabled in the doom cl menu and i used the portal to get into the map, but it still doesn't let me step onto the
I have the marine model enabled in the doom cl menu and i used the portal to get into the first map, but upon map change it doesn't let me step onto the platform to get in to the portal that teleports you to the start.
And upon simply going directly into the second map using the teleporter, I run into the same issue
https://postimg.cc/gallery/7PhS5nT
attached files
First is the location of the room with the secret
Second is the secret with the portal I can't step into
Third is another spot on the same map where if you land in the little water space, you get stuck and have to noclip out.
https://postimg.cc/3dGc1nD6
These issues are the step-height issue I mentioned.
I'm going to use some real numbers to help explain the problem. To keep things simple, I'm going to ignore the vertical stretching needed to keep Doom's original aspect ratio, and the "thin layer of air" that exists between all collisions in Source
Doomguy has a height of 56, and a step height of 24. In the real game, if Doomguy is about to cross into another sector, the game can simply check the difference between the 2 floor heights to see if he can pass. if the sector floor he is moving to is no higher than 24 above his current sector, and the ceiling is no lower than 56 units above the destination, then doomguy can pass.
Source works a bit differently. While I can use the Garry's Mod APIs to make the player have the same height and step height attributes, steps are climbed in a very different way. Source's maps are more complex, and so calculating the height difference between 2 floors isn't trivial. You cannot simply ask the engine "Hey, what sector is on the other side of this linedef?". So, Source uses a different method. It instead asks "Can the player exist at 24 units above the spot they are moving to?" If the next floor is 8 units above the current floor, but the ceiling is exactly 56 units above it, then the player cannot exist 24 units above the next floor, and the game will decide that "the step is too high", even though 8 is clearly less than 24. If I were to change the player step height to 8, suddenly Source would be ok with allowing the player to step up in the scenario I described, but then you would not be able to go up steps that are 24 units.
I'm pretty sure that some aspect of my code (possibly the recursion) is confusing LuaJIT, as the variable it claims is nil is set as part of a loop over an array that 100% definitely has no holes in it. There is no possible way that the variable is actually nil. I've seen even more absurd messages where it claims the type is a number or a string, when the only thing it could possibly be is a table. If I use the type() function to get the type and print the value if it is ever anything but a table, this error never happens. Using the type() function disables the JIT compiler for the function, so I can only conclude that this is a LuaJIT bug.
This makes more sense. Thank you.
Just checked. It's another mod conflicting with it.
I'll have to figure out which one though. Do you have any idea of mods that might conflict?
I've seen this error and others like it while developing this addon, and I prefer to develop with few to no other addons enabled. Other addons also wouldn't be able to produce the scenarios that I have seen while trying to debug it. It's not other addons, it's LuaJIT. The really annoying part is that it is incredibly inconsistent to reproduce, until it isn't. You could play 10 or 20 maps and never have it happen, but once it does happen, it suddenly becomes way more frequent until you restart Garry's Mod.
DOOM and Gmod uses different scale of sizes, so where the player can easily go through originally, it might be trickier in Gmod to get trough. Other thing, for example, a red key is on an elevated platform: in DOOM when the player walks to it the key will be picked up, but in Gmod, it needed to be noclipping into the key to pick it up. Also, going up on stairs can be a lots of jumping in Gmod. So yeah, size scale differences between the two games... 😉
Just an FYI, since I last posted in this thread, I discovered what was causing this problem. It was the continue keyword. Basically, gmod's implementation of continue was busted, and generated bad LuaJIT bytecode that allowed local variables to be freed while they were still being used. I happen to have my own LuaJIT continue implementation, so I fixed the issue there. During the brief window where code_gs was employed by facepunch, he used my implementation to fix it in gmod.