Let’s Talk Game Boy: Homebrew and modding

A few days ago, I did something that I hadn’t done in a number of years: I had a look at my “Memories and screenshots” folder, tucked away in a corner of a hard drive, and looked for gamedev screenshots.

I seem to have misplaced or deleted most of my earliest gamedev projects; however, in 2012, for some reason (?), I compiled screenshots of my previous games to post then on my (now defunct) DeviantArt account. Thanks to this, I’ve been able to, at the very least, remember what these projects were and when I made them, and save the screenshots as a memento (and for a bit of a laugh, I won’t lie).

It has also convinced me that this new entry of “Let’s Talk Game Boy” should be about homebrew and modding, since why not? Making Game Boy games today is more relevant than ever, and I like how my earliest experiences in games can be tied to the present in such a delightful way. We’ll talk a bit about Pokémon romhacking and modding, about current solutions, GB Studio and repro carts, and the Game Boy as an old-new kind of virtual console.

Are you interested? Read on, then!

Pokémon romhacking and modding

A few days ago, I posted a picture on Twitter of my “earliest” gamedev project, a Pokémon Ruby mod (we call them “romhacks”, but in most cases they’re actually just mods, particularly back in the day) titled Pokémon Diver Legends. I made it in 2005 and, like most of my game projects, never actually got around to finishing it, but I remember having a lot of fun and a few headaches playing around with maps and tilemap editors.

I was 12 back then and knew nothing about programming, so I had to rely on third-party programs and fumble around until I got stuff to work, which it didn’t more often than not. Weird times.

The setting of this mod was some weird parallel dimension where Hoenn was flooded with mud and red water (?), which somehow made sense to my pre-teen brain.

I say “earliest” because, in fact, this isn’t my first contact with game development. I started modding games much earlier, around 2002. I was 9 and I had just gotten my hands on a couple of very peculiar programs: they were called Pokémap and Gold Map, and were meant respectively to edit the maps of Pokémon first generation and second generation games. They were Game Boy map editors, basically.

Pokémap screenshot. Source: https://www.romhacking.net/utilities/146/
Gold Map screenshot. Source: https://www.romhacking.net/utilities/145/

My “games” back then consisted mostly of broken versions of Pokémon Red and Pokémon Gold with modified maps and absurd wild Pokémon encounters, but still, not bad for a 9 year old, back when game development tools weren’t as accessible to children as they are now (no stuff like Scratch, GDevelop or Roblox, and most people in the west had never heard of RPG Maker yet).

These programs were like a game in themselves and allowed me, from an early age, to undestand important concepts like tilemaps and tilesets, the difference between sprites and tiles, tile passability, and how you might integrate events and NPCs into a scene, for example. (I also like to say that my gamedev journey started with the Game Boy because it makes me look cool :B)

To be fair, though, I keep no screenshots and basically no memories of my earliest Game Boy and Game Boy Color attempts; most of my game modding experience, and what I really focused on for a respectable number of years, came from the Game Boy Advance platform. The flagship map editor, in that case, was AdvanceMap.

AdvanceMap in action. Source: https://www.romhacking.net/utilities/908/

Tools like AdvanceMap, Gold Map and Pokémap have been replaced nowadays with better alternatives, and in many cases are actually unnecessary. The Pokémon modding scene has changed quite a bit over the years, particularly since the original games began to be decompiled. It’s no longer needed to mess around with hex values and edit an existing ROM: you can just take the disassembled source code (available on Github), make the necessary changes and compile it yourself. That’s how amazing fangames like Pokémon Prism have come to exist. These aren’t “romhacks” or simple mods per se, but quite literaly new games made by repurposing part of the original code.

Similar things have happened with other games, like Mario games, although the Pokémon romhacking and modding scene has always been particularly active. My teenager self would be very impressed with what can be achieved today.

Pokémon Prism titlescreen

Homebrew and game development

To make Game Boy games, though, you don’t need to rely on third-party code and stand on dubious legal ground (if you’re working on a Nintendo fangame, let met tell you, from a former fangame dev to another: it’s probably not a good idea). It is now perfectly possible for anyone to create Game Boy games “from scratch”, and not only that, but publish physical editions and have them playable in original or repro hardware.

Most of that is thanks to an amazing tool (seriously, I can’t say enough good things about it) called GB Studio. It’s always been possible to make Game Boy games, of course, thanks to resources like the GameBoy Developer’s Kit (GBDK, now rebooted as GBDK-2000), but this platform didn’t become truly accessible to the general public until this all-purpose visual editor by Chris Maltby was first published back in… 2019, I think? Not that long ago, truly.

GB Studio has improved at a steady pace over the past few years and is perfectly capable of making almost all kinds of Game Boy games. It also includes its own music tracker/sequencer (you can switch between the two) based on hUGEtracker, and exported games can be played on real hardware.

Personally, I’ve only messed around with GB Studio, no serious project yet, but I definitely plan on using it for a game further down the line, once I finish a couple of projects I’m working on first. It’s a very capable tool and working with true Game Boy constraints can inspire a lot of creativity, as can be seen when browsing all the available Game Boy homebrews in the itch.io storefront. There’s also a steadily growing number of GB Studio-ready assets (graphics, as well as music and even code extensions) available for devs to use.

GB Studio game world editor. Source: https://www.gbstudio.dev/

It truly is a marvel to see so many new Game Boy cames come out now, more than 30 years after the release of the first Game Boy, and more than 20 since the Game Boy Color appeared in the market. As a Game Boy nerd, I’m delighted!

Whether made with GB Studio or by other means, plenty of lovely-looking Game Boy games have been making an appearance in the last few years, some of them even with great success in their crowdfunding campaigns. One such example, which I myself backed, is a reboot of the Game Boy Color RPG game Infinity, which is currently being worked on by Incube8 Games, and was originally cancelled back in 2002 when the Game Boy Color finished its life-cycle. It’s lovely to see that games that were before considered unpublishable have, once again, found the necessary public support and funding to be able to see the light.

Infinity screenshots. Source: Infinity’s Kickstarter page

All in all, I have a feeling that the Game Boy (other platforms too, like the NES, but perhaps the Game Boy more so) is becoming something that goes way beyond its original scope and time: it’s recycling itself as a new-old platform, kind of a virtual console of sorts (like the Pico-8) where people can work with very specific hardware limitations, playable basically on any device thanks to emulation, but with the benefit of also having preexisting physical hardware to run the games on.

And I’m not only talking about the original, aging, Game Boy consoles and cartridges, but the constant replicas and improved versions that have kept steadily coming out over the years, designed and manufactured not by Nintendo, but by other independent creators: things like Game Boy flashcarts, for example, that let you transfer games to a cartridge and play them in original hardware (the most popular in this case would be the Everdrive carts); or stuff like the Epilogue GB Operator, that lets you play your cartridges on a PC or a Steam Deck, as well as transfer your saves and even overwrite cartridges, if they’re rewritable (tip: most modern Chinese repro Game Boy cartridges can be overwritten!).

My own GB Operator and a bunch of rewritable repro carts.

There’s also consoles, like the luxurious Analogue Pocket, or the modest GB Boy, that let you play original cartridges in a portable format, very similar to the original Game Boy; or console mods and parts, that allow you to “refresh” the original consoles with better screens, buttons, audio or what-have-you, basically turning them into different machines altogether.

I’m happy because I feel we’ve reached a point where, even when the original consoles and cartridges all die out, the Game Boy as a platform will live on – thanks to emulation, renewed hardware and software and a genuine interest by a respectable number of players and devs.

There’s also another aspect of the Game Boy that I’m not covering here, and it’s its use as a music synth. Thanks to software like LittleSoundDJ, and to physical mods that enhance the Game Boy’s sound output quality, this console has become a staple of electronic music and “the” chiptune synth by default. So there’s a lot of cultural value given to the Game Boy sound as well. I’ll talk more deeply about that in another blog post, sometime in the future, since my “beginnings” in music tie back to the Game Boy as well (did I mention that I’m a Game Boy nerd yet?).

Meet my lovely, pro-sounded, backlit modded DMG Game Boy, running LSDJ. I love this thing

All in all, it seems that we’re all as equally taken by this little brick of a console as people where back when it came out, even if it’s for different reasons. I’m really looking foward to seeing what the future brings, what lovely games come out and what interesting gadgets people come up with. 💚❤️️

Thank you so much for reading! Best wishes, and until the next time,

pingudroid

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s