Info - Frame limiter explained
Guides
/
Info - Frame limiter explained
Updated 6 years ago by oasiz

WHY DISABLING THE FRAME LIMITER IN GTA GAMES IS A BAD THING

Doc by oasiz, contact info at the bottom.

GTA is coded like shit, kinda like stuff on old systems. Instead of saying "Apply friction 30 times in a second" and monitoring the time it actually does things like "Apply friction every time code loops" Since GTA runs at 30fps we can skip the time check and things run faster, right? Problem is that framerate is very variable in games nowadays and without the limiter it can run (or apply friction) many faster than they ever imagined.

Let's observe this in a way that is familiar to most: PAL vs. NTSC speeds in games The reason why PAL games ran slower than NTSC is as the code loop gets done 50 times a second instead of 60. Reason why it was coded like this is because every system was identical and it cost less CPU to ignore timing.

Values get adjusted until they fit, say, speed gets increased from 0 by 2 increments every "frame". What will the speed value be after one second? Yup, Speed would be 60 if the game ran at 60fps (Typical NTSC rate). But the speed would only be actually 50 with PAL!

Usually this isn't a problem, developers simply slowed down the game so that the ten extra frames from NTSC would "leak" in to the next second. This means that everything after 50fps would be put in to the next second.

But hey! Mario 3 runs at the same speed as the NTSC ! Not exactly.. if you compare the physics, they actually just adjusted values by "eye" to get it as fast as the NTSC version. Physics for acceleration and jumping are different! Say.. instead of increasing speed by 2units every frame they alternated 2u and 3u to keep it "close". They simply changed the game logic to be close to NTSC but you can not get really accurate values without some more complex math that was would slow down games too much back in the day.

So how does this all relate to GTA Physics? In GTA they actually tied a lot of the game logic to time but for some of the things they "hardcoded" values that are tied to the game loops. This means that they adjusted values like friction under 30fps and they just settled with that. What they didn't try out is to actually change the FPS to say... 80fps and see how things change. Back when GTA3 was made, PS2 was the target platform. Turning the limiter off was a novelty feature when it came to PC gaming, it worked well with the 800MHz systems of the time, instead of 30fps you got something like 45-60fps. Nowadays it's a bigger problem. Instead of rates around 60fps you can get something closer to 130-200fps without the computer needing to do much lifting. This means that most of the stuff run like they normally would under 30fps but some things can potentially run 5-7 times faster. Imagine stuff like friction when reversing or loads of oversights when one thing completes 7 times faster than the other. It is something they did not test for.

In short, Turning off the frame limiter in GTA is BAD! Side effects may include:

  • Too much friction Reversing broken, impossible dodo takeoff, etc..
  • Softlocks Game code freezing and not progressing, usually happens after you die or take a mission +-Fucked up slopes/stairs You can literally fly away 100-200 meters away, and I mean launch from slopes/ledges when running. Sometimes even dropping from a sidewalk to the road can take 50% of your health.
  • Boats are fucked up This goes back to too much friction.
  • Handbrake is fucked up Friction
  • Missions take forever to progress Related to softlocks
  • Audio is glitched Audio / Ped lines / etc.. get called after a specific amount of frames, too high fps and the sounds will play over each other and non-stop almost. Imagine speeding up NPC horn-honking frequency and such by say.. 5 times.
  • Crazy flicker Things that go on/off say.. 2 times in a second (like wanted stars) will flicker like mad as they go on/off many times faster than usual.
  • Pushing cars You can literally flip cars over by running in to them as they don't get proper friction. For some reason they will be really light with a high framerate.
  • Broken AI / scripts Stuff like AI driven sections for small cut scenes can be totally off due to changed physics and coded "drive this path" scripts can be totally borken due to wrong frame/time references.
  • Helicopter takeoff A big plus is that helicopter takeoffs are nearly instant as the acceleration is tied to fps.

These are just some of the things that get changed, there are more side effects. Therefore the GTA community has decided to ditch runs that run without the limiter. GTA3 / VC run at 30fps and SA runs at 25fps. For SA runs at 30fps are also accepted (which can be achieved by using an external frame limiter instead of the internal one).

"I don't understand anything you said, and you are a shithead!" 
Did you know that you can say it straight to my face? Catch 'oasiz' on IRCnet/Quakenet/Freenode.
I'll gladly help you if you have any questions about this route.
And I stream from time to time at http://twitch.tv/oasiz
on Speed demos archive I am known as 'oasiz' and yeah, I was the one who did the GTA3 run at AGDQ2013
Game stats
Followers
1,757
Runs
3,971
Players
561
Latest news
Y-Sens Fix is now officially allowed in speedruns

VC Enthusiasts, good news!

The VC Mod Team has decided to allow users to access a y-sens fix for mouse issues. This can be used legally in speedruns from today onwards, with only one rule.

This script w

11 months ago
Latest threads
Posted 2 years ago
0 replies
Posted 3 years ago
36 replies
Posted 3 years ago
0 replies
Posted 4 years ago
0 replies
Posted 3 months ago
2 replies