Advantages: mergable branches, and git

Hiram Anderson 2021-02-18 22:24:43 -06:00
parent 229ba83eb4
commit f3b33df2c0
1 changed files with 4 additions and 0 deletions

@ -4,4 +4,8 @@ The decompilation, on the other hand, allows for the use of C code, in writing n
There is also another, if not _the_ most important advantage to using decompilations: **we do not care about offsets**. Unlike binary hacking, one can easily change the size, locations, even the members of variables at their will. The linker (`ld`) does the work for you, recalculating and modifying references to variables. Gone are the days of worrying about remaining free space; we just dont do that here.
Like binary hacking, we have a wealth of resources available to you that tweak things, add new features, Pokémon, moves, etc, and even a completely revamped battle engine. However, *unlike* binary hacking, instead of applying a "ROM base" patch at the beginning of your project, you can use **as many of those resources as you want,** and can add them **even in the middle of your project.** No more worrying about whether a patch will break something; it all just works. And for the same reasons that we stated above, these resources are typically much better-developed than their binary equivalents, with less bugs and more advanced features.
One final advantage is that there is no need to keep a folder full of ROM backups while developing your hack. Ask anyone who has successfully released a binary hack and they will tell you that they have a folder full of hundreds of backups with every little change in case something breaks down the road. With the decomps, you will be using a program called Git to make code backups for you (called **commits**) and upload them to Github (the website you are on right now). The difference is that Git makes a backup of the *code*, not the ROM. This is better for a lot of reasons; for example, you can easily see exactly what you changed between each commit instead of having to guess from a list of identical-looking ROMs. Also, if you find a bug, instead of having to boot ROM after ROM to find when it happened, then starting over from that point, Git has tools to test when a bug occurred, allowing you to fix it without losing any progress. Git also has a lot more advantages to hacking over binary; for example, you can have multiple people working on the hack at the same time because you are editing separate parts of the code instead of a single file.
**Before you start hacking, it is recommended that you have some experience in coding in C, C++, Rust, C#, Java, or any other C-like programming language, if you want to use use the decompilation.**