A group of dedicated coders has generated complete reverse-engineered raw source code for the PC versions of Grand Theft Auto III and Vice City, which comprises hundreds of thousands of lines of C++ code, in a years-long process.
We’ve discussed in the past how video game fan coders use reverse-engineering techniques to deconstruct the packaged executable files distributed by a game’s original developers. This painstaking, function-by-function process creates raw programming code that can generate exactly the same binary file when compiled.
With that code in hand, coders can examine what makes the game tick and make improvements and changes at a much more granular level than with traditional modding. In the case of Grand Theft Auto, those improvements include bug fixes, reduced load times, improved rendering, widescreen monitor support, and a free-floating camera system, to name a few examples. The source code can also be used to generate ports of the game to new platforms like Linux, Switch, and PlayStation Vita (though these recompiled versions all require the copyrighted art and music files extracted from the original game).
Github contributor “aap” wrote that the project started in early 2018 “initially as a way to test reversed collision and physics code inside the game” by reverse-engineering specific DLLs. By 2019, the project grew to incorporate other contributors, who were able to generate a working executable by April of 2020. The team built off that code to generate a source version of Vice City that was ready by December 2020, aap wrote.
In addition to working on a similar decompilation for Grand Theft Auto: Liberty City Stories, the source code team has also expressed interest in generating PS2 and Xbox ports of the PC version of the game, as well as additional bug fixes.