PSX Doom - Physics inconsistency bug (high vs low frame rates)

preview_player
Показать описание
A brief video demonstrating a curious bug found in PlayStation Doom. When the game is running at its 30 FPS framerate cap (as shown initially), certain physics like gravity behave very differently and can make jumps like the one in this video much harder, or in some cases impossible. I only managed to complete this particular jump only by exploiting the extra movement speed given by 'straferunning'...

Later in the video, when I artificially cap the framerate at 15 FPS, the issue goes away and the physics become much more 'floaty'...

A similar inaccessible ledge issue can also be experienced in the original game in level 58, 'The Mansion' if the framerate is running too high. Thankfully though that was never an issue on a real console given the performance :)

Рекомендации по теме
Комментарии
Автор

I'm confused by this. On the one hand, straferunning made certain jumps markedly easier on the PSX. But your video is of a non-PSX map and I presume you are using a converted map on an emulator? Not exactly like for like stuff. Then again, it makes sense that the physics of PSX Doom were altered to take the slower gameplay into account - that's really interesting.

adammclaughlin
Автор

1) What was the frame rate cap of original PSX Doom? Seemed quite smooth on the original, so could it at least be 30fps if not 60? I would be surprised if it was only 15, however from what I heard that's the Jaguar cap and that one looked smooth (although less than the PSX version). Maybe 30fps is the cap on PSX unless the frame rate gets worse, which might have always been the case in that particular area in the original PSX (so they never noticed that if the performance improved then the jump would suddenly be impossible), but in your port with no speed bottleneck of the original hardware it always caps at 30fps even in the heavier maps.
When I first saw this I had to pause and it was funny that the player was not even surprised, was just casually running through the window and didn't realized what he had done. I didn't think it was possible before. That's because player forward movement is delta timed but gravity seems to not be (so in low frame rates, player moves forward at constant rate but gravity updates fewer times). This one is reproducable on 3DO (after few attempts) but I fail to do it with higher framerates.

Optimus