-
Full Game Leaderboard
Level Leaderboard
All
Checkpoint Charlie
Dirtring
Hotring
RC Bandit Race
RC Baron Race
RC Raider Pickup
Terminal Velocity
Ocean Drive
Border Run
Capital Cruise
Tour!
V.C. Endurance
Downtown Chopper Checkpoint
Ocean Beach Chopper Checkpoint
Vice Point Chopper Checkpoint
Little Haiti Chopper Checkpoint
PCJ Playground
Trial By Dirt
Test Track
Cone Crazy
The Party
Back Alley Brawl
Jury Fury
Riot
Four Iron
Demolition Man
Two Bit Hit
Treacherous Swine
Mall Shootout
Guardian Angels
Sir, Yes Sir!
The Chase
Phnom Penh '86
The Fastest Boat
Supply & Demand
Death Row
Rub Out
All Hands On Deck
Shakedown
Bar Brawl
Cop Land
Stunt Boat Challenge
Cannon Fodder
Naval Engagement
Trojan Voodoo
Juju Scramble
Bombs Away!
Dirty Lickin's
Love Juice
Psycho Killer
Publicity Tour
Alloy Wheels of Steel
Messing with the Man
Hog Tied
Recruitment Drive
Dildo Dodo
Martha's Mug Shot
G-Spotlight
V.I.P.
Friendly Rivalry
Cabmaggedon
Spilling The Beans
Hit The Courier
No Escape?
The Shootist
The Driver
The Job
Gun Runner
Boomshine Saigon
Cap the Collector
Keep Your Friends Close...
Road Kill
Waste the Wife
Autocide
Check Out at the Check In
Loose Ends
Distribution
Paramedic
Taxi Driver
Vigilante
By oasizoasiz Last updated
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
| Thread | Author |
|---|---|
|
Controller on Japanese version
Last post
|
SkullCrusherSkullCrusher
0 replies
|
|
bar brawl issue
Last post
|
WintollWintoll
5 replies
|
|
VC Instapasses & Stuff Megathread
Last post
|
RactrotRactrot
12 replies
|
|
Glitchless Category
Last post
|
siro2156siro2156
5 replies
|
|
a record problem
Last post
|
VercettiSRVercettiSR
5 replies
|
български
Català
Čeština
Dansk
Deutsch
ελληνικά
English
Español
Français
Gaeilge
Gàidhlig
Bahasa Indonesia
Italiano
עברית
Latviešu valoda
Lietuvių kalba
Nederlands
日本語
Norsk
Polski
Português
Русский
Suomi
Svenska
Türkçe
中文 (简体)
中文 (繁體)
