Pokémon: No Friend Left Behind

 
venusaur.png
 

NO FRIEND LEFT BEHIND

A DIGITAL RESCUE MISSION TO 1998

 

I


pokemon_blue_version__game_boy__hq_box_art_by_jadelune-d9tkraf.jpg

I received a copy of Pokémon Blue for my 12th birthday.

At the time, I had never heard of Pokémon. The pop culture phenomenon was just picking up momentum in America, and the general public was just barely being introduced to Pikachu, the yellow electric mouse that would grace the side of everything from lunch boxes to airplanes within five years.

The game was a gift from Dallin, a friend from school. Dallin was a full year older than us, a 13 year old perpetually going on 45; at a summer pool party earlier that year he had brought a small jar containing the kidney stones he had passed a week or two earlier, and the x-ray of his pelvis for us all to examine. He was an old soul in a short, scrawny body. Dallin was awesome.

Handing me the wrapped box, he looked almost more excited than I did. Somehow a member of his family had managed to break Nintendo's strict release date for the game, and Dallin had acquired two copies almost a week and a half early: a copy of Pokémon Red for himself, and copy of Pokémon Blue for me.

Side note: this was not, in hindsight, an entirely altruistic move. Both Pokémon Red and Blue are slightly incomplete games; each one requires the other to trade exclusive monsters from, and juggling two simultaneous playthroughs at the same time would have been difficult. I was both a gift recipient and an accomplice.

Opening the gift, I was more confused than pleased (to Dallin's disappointment). I was, however, curious. Deeply curious. Here was a game that offered a collection of weird and unusual creatures (which I was super into as a kid), looking faintly dinosaur-ish on the box (which I was also into), with some sort of strategy game (which I was, for the third time, super into). It was a perfect combination. The next day after my friends had left the birthday sleepover, I popped Pokémon Blue into my Gameboy.

The average player can usually complete Pokémon Red or Blue in about 26 hours of gameplay. A completionist can catch all 150 Pokémon in about 120 hours. My saved file has 170 clocked hours, mainly because I wanted to make sure my digital battling bros were in tip top form.

I was hooked.

 
 

II


cart.png

Nintendo (the creative company behind Pokémon) has a peculiar reputation among video game creators. Namely, Nintendo does what Nintendo does, period. Very rarely shaped by general trends or behaviors, Nintendo tends to do the opposite of what everyone else is doing. When the video game industry got tired of carts and moved to CDs as a means of data storage, Nintendo doubled down on cartridges and made theirs even more unusual looking. Eventually the video game industry got tired of regular CDs and moved to high capacity DVD storage; Nintendo switched to low capacity MiniDVD discs (about half the size of a regular CD). Now in the age of digital downloads and streaming, Nintendo has moved into digital downloads... and also back to cartridges rather than CDs.

Like I said, Nintendo does what Nintendo does.

So it should be no surprise that Nintendo's handheld cartridges for the original Gameboy are unique; they're small and compact, with a wide exposed circuit base, and they tend to not interface with anything except Gameboys. And after all, why should they. It was the mid-90s, still in the early days for home computing, and why would you ever need data from a Gameboy cartridge anyway?

The original Gameboy cartridges had one quirk typical of most early video games: if there was a save system (and that's a big if, as most titles didn't feature saving), the data was saved via a small watch battery inside the cartridge. The battery constantly fed a supply of energy to the cartridge allowing the data to remain written however long the battery lasted. When the battery finally died, the save file was 'deleted', so to speak, and can be considered lost forever.

In the retro gaming community, it's widely agreed that Gameboy cartridge batteries last anywhere from 7 - 12 years, depending on the quality of the battery and the conditions in which the cartridge was stored. This means that realistically speaking, most Pokémon Red or Blue cartridges started losing saves in 2008 or 2009.

 
 

III


Pokémon Bank launched worldwide in 2014. When discussing the idea during a Nintendo Direct conference, the producer of Pokémon X/Y (Tsunekazu Ishihara) said the following:

 
At the end of the interview, [Nakagawa, a Japanese pop idol] told me that she wished I would create something like Pokémon Bank. She wanted her Pokémon that she trained to be securely stored and passed down to her kids and grandkids.

She wanted something like Pokémon Bank because she wanted her kids and grandkids to remember that their grandma fought battles using Charizard.
 
charizard.png
 
 

There's something beautiful and nostalgic about this. The idea that your digital friends and companions could continue on long after you in memory of you is an elegant idea in an age when data is easy to create and delete. Dannel Jurado wrote a beautiful article on the subject at Tiny Cartridge that I remember reading and nodding along to. And after all, why not? Why shouldn't some string of code and pixels that I had developed an emotional attachment last longer than I do? Code is forever, all things considered, and there's no reason it shouldn't be able to be preserved. And how neat would it be for my little digital bros to keep fighting decades into the future? When Pokémon Bank launched a few months after that quote, I signed up immediately and began the task of collecting all my old friends in one place. But there was a problem.

 
 

IV


Around what is described as 'Generation 3', Pokémon changed significantly. The first generation of Pokémon games (Red, Blue, and Yellow) could charitably be described as held together with duct tape and prayers. They're reliable and very playable, but the backend code is buggy and fraught with glitches. Some of those got better in Generation 2 (Gold, Silver, and Crystal), but the majority of polish and streamlining occurred when the franchise changed from the Gameboy and Gameboy Color to the Gameboy Advance. With the new console came a new chance to code the series, and Nintendo took advantage.

New stats and values (the DNA of a Pokémon, so to say) were coded or replaced, leading to what's known as a 'generation break'. Pokémon from Gen 1 or Gen 2, which could previously pass back and forth between each other, were ineligible to transfer to the new Gen 3. There were three basic reasons for this:

  1. As mentioned above, improvements to the game system were made that resulted in the code from Gen 1 and 2 to be considered 'obsolete'. Values that were required for modern games simply weren't coded into old monsters, and rather than have the new games simply randomize those values on the fly (like they would for any Pokémon encounter in the game itself), the game simply refused to process the data.

  2. The link cables between the original Gameboy and Gameboy Color were incompatible with the Gameboy Advance. The systems used different voltage to power the cables, so it would not be possible on their own to sustain a link between the devices that play Gen 1/2 games and the ones that play Gen 3 games.

  3. Nintendo circa 2003 honestly didn't realize anyone would care about their legacy pals, so they never released a product to solve the issues described above. Gen 3 was considered a fresh start for anyone looking to play Pokémon.

But that decision made in 2003 still left me feeling a little cold.

It was awesome that all my old friends from 2003 were there and could carry over into the future. That was genuinely great. But they weren't my only friends, and they certainly weren't my oldest ones either.

There, in an antequated cartridge from 1998, was where it all began.

There was my very first Pokémon, the beginning of a pastime that has spanned twenty years.

Not many things in life can last twenty years. Twenty years is a long time for human friendships; pets will almost certainly pass away before then. It's four or five jobs for the average employee, two or three cars for the average driver, and almost the full duration it takes for a child to become an adult.

Those twenty years have to count for something. The beginnings of great things deserve to be celebrated.

And Venusaur deserved to be broken out of prison.

Friendship means nobody gets left behind. It means that no matter what, we're all doing it together. And even if I can do it with a facsimile of Leaf the Venusaur doesn't mean that I should.

So I got to work.

 
 
 

V


bulba.png

In Pokémon games, one of the first choices you're asked to make is regarding your 'starter Pokémon'. Your starter is a freebie; it's given to you before starting the game, and usually accompanies most players for 10 - 20 hours worth of gameplay. After that your starter can sometimes feel irrelevant compared to progressively more powerful monsters, but even the most experienced and hardened players will admit that they feel a twinge of guilt taking their starter out of their party during the core campaign. Pokémon trains friendship and loyalty, you see, and not just from the monsters. By being cute and friendly and terribly helpful, you're encouraged to grow attached to them, hopefully taking them on your full gameplay journey.

My starter in Pokémon Blue was Bulbasaur (pictured here with his evolutions, Ivysaur and Venusaur). Objectively, Bulbasaur is the 'worst' starter in Pokémon Red and Blue. I disagree with that appraisal, but it's probably the hard truth. The objectively best starter in the game is Squirtle, a cute little water turtle/squirrel hybrid whose final form graces the outside of Blue's box. He's more powerful all around than the other starters, as a study by Scientific American confirmed (yes, seriously), and he's super cute. Also super cute is Charmander, the little fire lizard whose final form graces the box of Red: a gigantic flaming dragon with huge claws, a fiery tail, and mighty wings. Compared to that, Bulbasaur is a little lame. He starts out cute and VERY Pokémon-y, but his final evolutionary form just doesn't match up visually or mechanically to the others. He goes from a dinosaur with a bulb on his back to... a bigger dinosaur with a flower on his back. Not exactly inspiring confidence or fear. But the heart wants what the heart wants, and I wanted Bulbasaur, because dinosaurs were (and are still) totally amazing.

When I left him, Leaf the Venusaur was Level 100 (the highest level a Pokémon can be) and had been in my team for the entire duration of my playthrough. Remember, that's 170 hours of man and dinosaur quality bonding time stuck on a cartridge from 1998 whose battery...

Whose battery... was statistically likely to have died in 2008.

Resigned, I accepted the worst. Leaf was gone, lost to the ages, as was the rest of my first journey through Pokémon. I didn't even check; when Pokémon Bank finally came out, I defeatedly left my Blue cartridge in my old Gameboy, still in its original Gameboy carrying case somewhere in my cold, cold basement (where it had been for several years).

 
 

VI


2018: Nintendo announces that Pokémon is set to take another large leap as a new spin-off game is coming to the Nintendo Switch console, followed by a new core game on the Switch in 2019. It's a move that fans have expected for a long time -- a jump to a modern day, Triple A console rather than just the traditional handhelds. Feeling excited and a little nostalgic, I started digging through my old pile of games to see if I could find my original copy of Blue, just for old times' sake. I tracked down my original Gameboy, found the requisite four AAA batteries, and stuck them in the console. Turning it on, I recognized the familiar tinny music of Blue and, hitting enter to start a new adventure, made a surprising discovery:

My save file from 1998 was still there, twenty years later.

As the people from Energizer will tell you, battery performance is a tricky thing. Batteries themselves are fickle things. They prefer a relatively narrow band of temperature to store energy at their best, discharging energy quicker in cold temperatures and slower in warm ones. In reverse, they tend to hold a charge better the lower you are in the recommended range. In this case, the lowest recommended temperature is 68 degrees. The temperature of my basement, where Pokémon Blue had lived for the past 20 years?

68 bloody perfect degrees.

Image courtesy of nitro2k01

Image courtesy of nitro2k01

Leaf was still there. Everything I had originally done was there, in fact. All that I needed to do was find a way to bridge that impossible gap between Generations 1 to 3 so that my friends could battle into the foreseeable future.

A Swedish dude named nitro2k01 felt the same way I do about vintage Gameboy titles. Unsatisfied with the deteriorating state of old media, he set to work on a passion project he would come to name 'Altane': a Gameboy Classic flashing device. Utilizing modern equipment and a schematic from a Polish engineering student circa the early 2010s, he constructed a pocket-sized device (light grey, the same color as the original Gameboy) capable of reading and writing save data from old Gameboy games. He recognized that the device wouldn't have a massive appeal, only to a handful of collectors, so he sold a few to family, friends, and fellow enthusiasts on the internet before wrapping up the project and calling it good. Finding an Altane was, for the longest time, sorta a pain; the folks who had one didn't want to part with it, and if they did, they wanted a substantial amount of money for it. Until I found one on the Retro Modding site for about $60 shipped. A little spendy? Sure. A means to preserve forever one of my oldest battling friends? Absolutely.

I ordered, and it shipped from Canada the next day.

 
 

VII


Image courtesy of Project Pokémon

Image courtesy of Project Pokémon

It's difficult to say which moves quicker: the shipping from Canada, or the Altane itself. Both were over before I knew it; the Altane plugs into any computer via a microUSB to USB-C, and the entire dumping process took less than thirty seconds. This makes sense; it's not a tremendous amount of data thats being stored, which likely helped keep the battery running twenty years later. But in under a minute, that battery went from being an ominous looming deadline to a complete irrelevancy.

My Pokémon Blue save was backed up, and Leaf the Venusaur was backed up with it.

The rest seems complicated, but is actually sorta boring unless you’re also a huge dork. A piece of desktop software named PKHeX was developed by fans as a save editing software, ostensibly to let you ‘cheat’ at Pokémon, but also as a general multipurpose Pokémon editor. The basic idea is that you load any save file into the software, and the software will let you add or subtract data values in your game, or in a particular snippet of game code. In my specific case, all I needed to do was extract one particular bit of code (the metaphorical ‘DNA’ of my old buddy Leaf), and then augment it in such a way that it would be recognized the new Pokémon format. The jump from Generation 2 to 3 added a bunch of code bits to each Pokémon’s entry — this code would be used to calculate things such as the Physical and Special Attack and Defense splits, what the Pokémon’s nature might be, and what ability they have. This information is generated randomly using a set of in-game rules at the time that you first encounter a Pokémon, and all I had to do was duplicate this same process in PKHeX to give Leaf the new bits of data he previously didn’t have. Thankfully when Nintendo updated Pokémon Red and Blue for release on the Virtual Console, they codified the ‘proper’ way for a Gen 1 or 2 Pokémon to be ‘brought forward’ and have all that extra information determined. Using those procedures, and a little random number generation (just like the game itself would have), I was able to give Leaf his missing stats, new values for Nature and Ability, and save him in Generation 7 format.

Leaf, as he currently appears in Pokémon Bank, and based on his most recent trip, in Pokémon Scarlet and Violet.

Then, using a code injection exploit on an unsecured v9.5 Nintendo 3DS, I did a little code injection. Through a QR code exploit, Pokémon were briefly able to be ‘forced’ into Pokémon Sun and/or Moon on the 3DS prior to a security patch from Nintendo, allowing you to insert PKHeX value strings into your game. As something of a packrat, I happened to already have a Nintendo 3DS whose software version was earlier than v9.5, so injecting Leaf’s data into an actual game was easier than I thought it would have been. He was created as a QR code, scanned by my 3DS camera, and imported straight into Pokémon Moon. From Moon I was able to trade him even further forward — into Pokémon X, a 2013 release compatible with Pokémon Bank, and then from Pokémon Bank into Pokémon Home, the most up-to-date and Nintendo supported Pokémon storage system. And that’s where he lives now, on Nintendo’s servers, on my iPhone, and on my Nintendo Switch. He’s no longer Level 100 like he was back in Pokémon Blue, because that felt like depositing him at the end of a journey. So instead he’s Level 32, the level in which middle stage Ivysaur evolves into final stage Venusaur, leaving plenty of room for him to grow and level up here in the future. My life journey isn’t over, so there’s no reason why his should be either.

But while I’m human and finite, Leaf is a digital bit of code. Sentimental code, sure, but ones and zeroes, little bits and fragments on a series of hard drives. And while Ill get old and go gray and die one day (woah, that got heavy quickly), Leaf will now live forever.

Maybe one day I’ll have a child, or a grandchild, who is also interested in being friends with Nintendo’s cuddliest creations. Maybe they’ll choose to fight alongside him one day too, and if that happens... well, I think I'll be about as excited as Dallin was the day he bought me a copy of Blue in 1998.

The purists would argue that Leaf isn’t ‘legitimate’, that the process of hacking and bashing his code like a mad Dr. Frankenstein somehow makes him less valid than a random bit of code that might appear on my screen in any subsequent Pokémon game, and they’re probably right. Good points, one and all. But that random new Venusaur wasn’t my first Venusaur. This one was. Or at least, the majority of him was. In our own bodies, a large percentage of our cells die and are replaced every seven years, so over time each one of us becomes slightly less of the ‘old’ us and a little newer. Can’t we say the same thing for Leaf? Is there a difference between my cells being replaced to help me grow and age, and me giving Leaf some new data to help him do the same? I don’t know that there is. And I don’t know that I care to hear otherwise.

I’m just glad to have Leaf back with me. Hey buddy. It’s been a while.

 

 

Postscript 1


Since this post was original written in late 2015, an absolute madlad on YouTube by the name of Goppier did the impossible and constructed some physical hardware to streamline this process even further. This level of tech is beyond me, but it’s fascinating seeing him mention the process listed above before breezing right past it into ‘yeah uhh so I did something better’. If you found this article interesting at all, I’d recommend watching his video — it’s incredible stuff.

 
 
 
 

Postscript 2


Hey, uhh, now that I think about it…

tumblr_nmnmwm76Ja1scncwdo1_500.gif

Click the button above to download a copy of Leaf's data, keeping him alive forever on your hard drive too.