[ad_1]
Game Development Stack Exchange is a query and reply web site for skilled and unbiased sport builders. It solely takes a minute to enroll.
Anybody can ask a query
Anybody can reply
The finest solutions are voted up and rise to the highest
Asked
Viewed
3k occasions
I learn right here a spectacular story of somebody (scrappily) fixing some issues in a sport’s supply code, making it load 4 occasions sooner!
How did the developer get the supply code within the first place? Is there a standard sample to getting sport supply code?
Link to the GitHub repository talked about within the article: https://github.com/tostercx/GTAO_Booster_PoC
$endgroup$
3
Getting entry to a sport’s sourcecode could be something between trivial to inconceivable. Factors which resolve which can be:
- What expertise was used to create the sport? Decompiling executables to readable sourcecode could be straightforward (like in Java) to onerous (like C++). Some applied sciences even require to incorporate the sourcecode with the sport, as a result of they interpret the sourcecode at runtime (like browser-based javascript, for instance).
- Did the builders take measures to make sourcecode entry simpler or tougher? They would possibly run their code trough an obfuscator earlier than creating the sport construct to make it tougher to learn. With compiled languages, they may run the exe via some extra obfuscation steps to make decompiling tougher. Or they may even supply components of their sourcecode in a public repository for gamers to view, even perhaps with documentation.
- Are there server-sided parts? When components of the sport run on a server, then the code for these parts is inaccessible to gamers, until it will get leaked by an insider or hacker.
But if you wish to know extra about how a participant going by the synonym t0st troubleshot the loading time drawback in GTA 5 and stuck it, they wrote an essay about that. tl;dr:
- They used a profiler to search out the components of the code which took probably the most time to execute.
- They disassembled the sport executable by dumping the reminiscence at runtime and working it via a C++ decompiler.
- They dug via the hardly readable C++ sourcecode and discovered that the sluggish components parse strings containing JSON knowledge.
- They discovered that the JSON knowledge in query contained the information about objects, and that they have been parsed in a really inefficient method.
- They created a extra environment friendly implementation and injected it as a DLL, which is a well-liked methodology for modding components of video games which weren’t supposed to be accessible to modders.
$endgroup$
3
You should log in to reply this query.
default
[ad_2]