I’ve never been particularly good at Pokemon games. In fact, my introduction to Pokemon overall is pretty wonky. Aside from the card game, Pokemon GO and a poorly dubbed anime, I never got into the games. In fact, technically, Pokemon GO is the first Pokemon game I’ve ever played. I’ve played a little bit of Pokemon Shield, but aside from that, Pokemon has kinda been something that’s eluded me.
But for some reason, I am kinda obsessed with glitches in the original Pokemon games.
Despite having never played them.
I’ve never actually played any of the original Pokemon games. Mostly because I never had the right console. As a kid, I wasn’t allowed a handheld console. It wasn’t until I was an adult that anyone I was close with even owned a handheld console.
So if I ever wanted to play a Pokemon game, my only real option was an emulator. And I’m kinda too dumb for that sort of thing. Although, to be fair, I was distracted by other games as well. Even if I had access to Pokemon games, I was always impatient. Too impatient for time-based Pokemon games at least.
Yet somehow, I still look up glitches.
There’s something weird about the first Pokemon games. So many cool glitches have been discovered over the years. Everyone knows of MissingNo. but that was just the tip of the iceberg. There were TONS of glitch Pokemon! And glitch items, trainers, effects, all sorts! And the reasoning behind these glitches is actually very simple when you think about it. When it comes to glitch Pokemon, for example, these appear because the game is somehow confused into counting past 151, up to 256. But the crazy thing is, the game will still try and run, and will make a Pokemon out of whatever data it can find.
And seeing how these glitches change and affect the game is genuinely interesting. But what is even more interesting is how far you can take it.
The first Pokemon games were technologically genius.
In early Game Boy cartridges, space was at a premium. Everything had to be as compact as possible. With very limited memory and storage, every single byte counted. But, for the sake of storage, some things had to be skipped. Things like checking for every single potential error. The Pokemon games, whenever they encountered something that didn’t make sense, they just keep on trying anyway.
What you get, instead of a game crash, is, well, something, anything to go on the screen. Doesn’t matter if it’s not a valid Pokemon, the game will try to make it all work. It’s generally only when you start overwriting stuff that the game gets super upset and eventually crashes. Eventually. The games do this for all sorts of things. For every area where a developer created a way to force the game to crash rather than deal with a bug or glitch, there’s a multitude of ways around it.
What is just as interesting though is seeing people tear these games apart.
The entirety of the early Pokemon games have been completely dissected in every way. People have studied how these games worked, right down to how the glitches work. The reason MissingNo. has that weird stair step shape isn’t because it’s just random data, it’s also due to unexpected values when decompressing data. Data that isn’t actually sprite data, but something else entirely. The game just uses whatever it’s given.
It goes further than that though. You can manipulate these games in such a way that escaping a trainer can allow you to finish the game in less than 50 presses of the A button. Arbitrary code execution is something you can genuinely do in Pokemon Red/Blue/Yellow, and one could theoretically execute almost anything within the console’s limits, given enough time. These early Pokemon games are in fact so well-researched that you can use them to execute code in completely different games. How fucking insane is that?
It’s possible that the glitchy, endless possibilities of the original Pokemon games are also available in a myriad of other early Game Boy game too. But Pokemon’s popularity means that there’s a stream of people willing to spend hours digging through ancient code, tearing it to pieces and creating glitchy monsters with the remains.
And that, at least as far as I’m concerned, is completely mind-blowing.