A hacker by the name of T0st says he has discovered a core problem that caused years of longer than necessary loading times in Grand Theft Auto Online. The hacker has released a proof of concept DLL fix that reduces these long boot times by about 70 percent.
Grand Theft Auto Online’s PC load times have been a persistent problem for seven years, and remain slow despite general improvements to the hardware and the game’s status as a continuing lucrative revenue stream for publisher Take Two. An anonymous Reddit poll last year found that about half of players waited three to six minutes to load the game, and about 35 percent of players waited even longer to start each session.
This is not a scientific study or anything, but even taking into account self-selection and reporting problems, these load times are very long, especially for such an old game. The problem is even harder to understand when the single-player Grand Theft Auto V tends to load many times faster.
For example, the particular function used to parse the JSON string (in this case, sscanf) was apparently performing a time-consuming strlen check repeatedly after reading for each piece of data. Simply caching that string length value to speed up those checks resulted in a more than 50 percent reduction in load times on its own, writes T0st.
After parsing all this JSON data, GTA Online seems to load it into an array in an extremely inefficient manner, checking the entire array for duplicates as it grows. This is not scientific research or anything, but even taking into account self-selection and reporting problems, these load times are very long, especially for such an old game. The problem is even harder to understand when the single-player Grand Theft Auto V tends to load many times faster.
With these two fixes combined, T0st says that GTA Online loading time dropped from six minutes to just under two minutes on the test machine. Those interested in replicating the results can build a similar DLL from T0st’s source code. Players should do so at their own risk, however, as such modifications can easily (and erroneously) trigger the game’s anti-cheat controls.
Meanwhile, T0st writes that implementing this fix for all players on Rockstar’s side “shouldn’t take more than a day for a single dev to fix.” Let’s hope the renewed attention this issue is getting will prompt Rockstar to do so as soon as possible.
Hacker reduces GTA Online loading times by about 70 per cent