News:

Don't forget to visit the main site! There's lots of helpful docs, patches, and more!

Main Menu

Basic GBAtroid Hacking Timeline

Started by alexman25, August 28, 2024, 09:42:20 PM

Previous topic - Next topic

alexman25

(Repost from Discord, as requested by RT and Dragnet!)

General GBAtroid timeline is:
2007: Serious-ish GBAtroid hacking begins, mostly ZM. Seventeen ZM hacks and four Fusion hacks are released at this time. Interdpth and Trunaur can be thanked for the majority of heavy lifting during this time

2016: AP Bossrush releases, which is the most well-known pre-MAGE hack, and then later MAGE releases

2017: Other ZM releases, which is considered to be the best pre-MAGE hack, and Deep Freeze releases, which is considered to be the fist truly good ZM hack and also I think the first MAGE hack. English Fusion hacking ignores Fusion for the most part, but the Chinese Fusion hacking scene is already kicking off in full swing

2018: GBAtroid hacks start coming into their own more. Early big-hitters such as Spooky Mission, Stargazer, SR387, and Return to Zebes release. Also, Metroid Fusion: The Mass and C.L.E.A.N. Station are notable Fusion hacks, although many don't really like them

2019: Some more big hacker names show up for the first* time; notably Spedimus with Takeover and ConCon with FreezeFlame. Project ZM also shows up, here. RTZ's 2.0 overhaul also released here to match the slightly higher quality standard of the times. Oil Spill is also here, which is still considered to be the "best" Fusion hack I believe.

2020-2021: I'd say this is the peak ZM so far. Subzero, Mintroid, DOOMtroid, SM: GBA Edition, So Little Bubble, Scrolls 6, Odyssey of Aran, Freezeflame II, Operation Execution, and Spooky Mission 2 all release

2022-2024: Some notable hacks are GRAVITY, Crocomire's Last Stand, Execution, Lost Chozo, ES Mission, and Juicy Mission. While, it has less overall super high quality releases, it also has what many argue is THE best ZM hack: Desolation. And, for those who don't consider it the best, RTZ's 2.5 overhaul released in this time, which the non-Desolation believers generally consider the best ZM hack from what I've seen

2409: MAGE 2 releases, and ALIE is only four more years away

Any corrections or additional information (especially regarding Fusion and/or pre-2017) would be appreciated!

biospark

P.JBoy also documented a lot of stuff in the early days

MAGE development began in Feb 2015: https://twitter.com/biosp4rk/status/569022624501604352

ZM randomizer was released in Dec 2017

ZM decomp became shiftable in Nov 2023

P.JBoy

#2
uNsane and I were chatting about Fusion and Zero Mission ASM discoveries on the m2k2 IRC server back in 2007 (possibly late 2006, this was before I started logging IRC), which was when I started compiling the RAM maps and other resources for those games. I had a bit more of a focus on Fusion, and it's also when I made that Fusion speed hack (that is a youtube link with code 6PhWvYs-F5E) that I eventually abandoned

This was all original research that I did, but interdpth came out with Zero Fission in 2006, so he must have been a couple steps ahead of me. Trunaur68 just kinda came out of nowhere and made that Crocomire patch, and started working on that SA-X port for a bit, but he was never a part of any of the metroid hacking communities AFAIK.

Discovering the Fusion debug menu with interdpth in 2013 using IDA was the last notable thing I ever did for GBAtroid hacking
...

interdpth

#3
The journey into ROM hacking began with a breakthrough back in 2004, detailed in this document https://neoromhacking.net/documentpage.php?id=184. It all started when Jigglysaint discovered the type of compression used for rooms (RLE) and the graphics (GFX) compression using LZ77, along with some initial offsets. Coming from the Pokémon ROM hacking scene, I realized I could create an editor, and from there, I gradually figured out the rest of the headers.

LdngNow, one of the first to create LZ77 decompressors and compressors for Pokémon, helped me get an LZ77 decompressor and compressor up and running in VB6. Cearn, a master GBA programmer, gave me the basic RLE method and commented assembly, which I then turned into the decompressor for Zero Fission. He graciously helped me create the compressor as well. However, after recoding it in C, I found the VB6 versions to be quite buggy.

During our early days, PJBoy, Unsane, Trunaur, and I were doing ASM hacks by hand in a hex editor, randomnly changing memory addresses, using cheat searchers, manually calculating our branch links. I hosted several ASM learning sessions, which helped some people achieve success. The four of us contributed immensely, and shared as much as we could find. While Trunaur was also part of the community for a time, him leaving sucked and I wish him the best. You would mainly know of him from [spoiler]https://www.youtube.com/watch?v=sSobo06z4-I[/spoiler] in which he edited the black space pirate gfx to be sax or the crocomire patch. Most of our early work took place on the Acmlmboards and Metroid2002 forums as well as Datacrystal. Here is an early "what we know" http://acmlm.kafuka.org/archive3/thread.php?pid=180238&r=1#180238

As my skills evolved, I found the limitations of VB6 increasingly restrictive, so I created and reworked ZF several times. But driven by a desire to learn new programming languages. I made Double Helix.  I am grateful to everyone who used it during its various iterations.

Eventually, most GBA hackers gravitated towards the #rom-hacking or #jzd channels, i think there was a generic #metroid channel as well on the Esper IRC server. It was there that Kennon decided to unite us under the Metroid Construction banner, first starting a channel and later a forum. The rest, as they say, is history.

For a glimpse of our early work, you can watch this video showing the first room hack [spoiler]https://www.youtube.com/watch?v=_OSJ_z3yUyA[/spoiler], done 17 years ago. A few days later, we made further progress, as seen [spoiler]https://www.youtube.com/watch?v=vTq3LvOyD1I[/spoiler] . You can observe the development journey on that channel until our work concluded.