The power of nostalgia: Creating new games for old hardware
How I learned to make a game that is compatible with my favorite portable console from the 90's.
The 2020 quarantine was a time of many changes for everyone. During those days I had my first approach to retro consoles. I worked on a project to make a retro arcade with a Raspberry Pi and an operating system called Recalbox. This would allow me to play games like the ones from my childhood.
One day, I was with a friend playing games made by indie developers on the Raspberry Pi. My friend asked me: “Is it hard to make your own game?”, and that left me thinking. Some time later, I wanted to improve my programming skills and I was looking for a technical challenge to develop my professional skills. That’s when I recalled that question and thought it would be a good challenge, so I decided to investigate further.
Fortunately, I discovered that there is a large community of developers making homebrew games for older systems like NES and Game Boy. In particular, there is a lot of documentation provided by gbdev for the development of Game Boy-compatible games. In fact, in February of this year they launched a newsletter named Game Boy development curated digest to share the latest news in the homebrew scene.
I started reading some really good articles like Making a Game Boy game in 2017: A “Sheep It Up!” Post-Mortem and DOTs for GBC talking about their experiences creating new games and I was so fascinated that I decided to give it a try and create my own puzzle game: Flooder.
If you have some programming experience, you can make your game using languages like C and assembly. However, you don’t need to know how to code to start making your own game. There’s a free and open source game creator named GB Studio, that allows you to create your own title using a drag and drop tool. In this case, I decided to use C with the GBDK 2020 library for my project, as it gave me adequate flexibility without the need to dive into a low-level language like assembly to do so. You can read this guide to choose which tool suits you best.
Once you are done developing the game and have the ROM file, you can test it using an emulator, or you can put it on an SD card and use a flashcart to see how it works on real hardware. There’s also a new handheld portable game system named Analogue Pocket that you can use to try your games.
For my project, I was hoping to have a physical copy like the ones I spent hours and hours playing in my childhood; that’s when I met Niels of Ferrante Crafts. He’s a very nostalgic person (like me!) and has previous experience working with other developers to release their homebrew games. He also helped me a lot with the design of the box and manual, which really made it feel like the ones we had when we were kids. You can buy a physical copy of the game on Ferrante Crafts.
In conclusion, it was a great experience to learn about developing games taking into account the hardware restrictions of the 90’s. There was some code I had to rewrite to make the game more efficient and consume less resources. If you love video games and you’re also passionate about the consoles you grew up playing on, I would definitely recommend creating your own game.
If you are interested in starting a new project, you can also participate in a game jam. For example, there were two Game Boy competitions last year: GB Compo ’21 and GBJAM 9. That is a great opportunity to meet other community members with similar interests such as developers, musicians, pixel artists, designers and the like.