The Game Boy of Isaac - Team Kirby Devlog

We are "Team Kirby" from Telecom Paris, and for our end-of-year project, we set out to write a game, inspired by The Binding of Isaac, for the original Game Boy.

View on GitHub
23 June 2020

PAF Day 3: The Inception of the Murderous Pineapple

by yberreby

Today, our team decided to go rock climbing with Team Rocket build on yesterday’s creative momentum. Our efforts were focused on tooling, character / weapon design, and maps. This last point is mostly the result of @ChatPion and @RoussyE’s efforts, and will be covered in an upcoming blog post.

Tooling

When we decided to embark on this journey, our understanding was that our only options were either to code directly in GBZ80 ASM, or to use an outdated and most importantly buggy C compiler: a version of SDCC dating all the way back to 2001, bundled with the honorable but decrepit GBDK.

Under those circumstances, the obvious choice was the former. Debugging is going to be hard enough as is; we can’t afford to use an untrustworthy compiler. But as it turns out, we were mistaken about the current state of the Game Boy programming ecosystem.

We ran into a series of blog posts written by someone who clearly knew what they were doing, and which showed us the error in our ways. We discovered that SDCC’s outstanding GBZ80 bugs had long been patched, and that there existed an updated version of GDBK, gdbk-n (the link is towards the blog posts’ author’s fork of this library). Following the impulse of @Aunsiels, we also turned to the gbdev Discord server, discovered that they had a #gbdk channel (which should come in quite handy for seeking support), and from there, discovered an even better refresh of the original GBDK: gbdk-2020.

Given that switching to C as our main language would allow us to iterate more quickly on complex features without preventing us from dropping back to ASM for hot zones (or for the sake of entertainment :)), we decided to move forward with that decision; the aforementioned tutorial will serve as a starting point. We’ll adapt it to use gbdk-2020, and build upon it.

Character design

@Ametheek started working on a very, very important part of our game: the sprites, and more specifically the design of the main character.

Here at Team Kirby, we believe in a “Kill Them with Kindness” approach to life, so we wanted an endearing main character.

For its design, we eventually landed on incredibly cute pineapple. I mean, look at it walk! Isn’t it adorable?

As everyone knows, there is no such thing as a cute pineapple without psychopathic tendencies and an unquenchable thirst for blood, so we decided to equip the MC with what is to become its most iconic weapon, a chainsaw. We call the chainsaw Kindness.

Here is a very preliminary version of it in action:

This chainsaw will be a major gameplay component, so we’re going to spend time fine-tuning it. We’ll elaborate on how it works and why it’s going to be awesome in an upcoming post.

tags: tooling - graphics - gameplay