Becoming a Pokemon Master by Hacking Assembly
Greetings! Today's article is going to be a fun one for sure. I'm sure that many of you are at least semi-aware of the ROM hacking scene where people take their favorite games and alter the data to make their own custom version, and we're going to look at one of the most famous games thats known for this: Pokemon. That's right fellow millenials, we're going to hack our childhood here, and it's super easy. The original Pokemon games were written in straight Assembly due to the small size of the Gameboy cartridges, and while that may seem intimidating at first (the Intro to Assembly and x86 Buffer Overflow courses on HtB broke my brain for a while) but its just not. And the games themselves aren't hard to find either, which actually is a suprise considering Nintendo's crusade on suing anybody doing anything besides buying and playing their games as intended. The disassembly of quite a few of the early Pokemon games are available via the group of Chads known as 'pret' on Github, and going through these files is a blast. Let's take Pokemon Yellow, my first introduction into the series. I always wanted a surfing Pikachu so that I could play the minigame, so I added it into Pikachu's learnable TM/HM moves in it's .asm file. How about a 150 base speed Nidoking that knows fissure, horn drill, and guillotine? Why not? Mew but it also learns flamethrower, thunderbolt, and blizzard by leveling up? Sure. Tauros with Explosion? You know it. Alakazam that evolved via leveling up and learns all the elemental punches since they're special attacks in Gen 1? Don't mind if I do. Why bother dealing with the hassles Arbitrary Code Execution in-game (even though ACE is absolutely fascinating) when you can alter the code to be what you want then just use a make command to compile the ROM of your dreams. Obviously this can be pushed way further if you're willing to put in the work, as we've seen with the available ROM hacks today, but I'm sure that you see the possibilities. It's nothing super amazing or revolutionary, and definitely nothing relevant, but it's cool. If you're like me and grew up with these games, I'm sure that you'll appreciate it as much as I do. Thanks for the read and have a great rest of your day, peace.