Game Jam Postmortem: The Next Adventure Game Jam

As The Next Adventure Game Jam has wrapped up, I thought I would write a bit about my experience in the jam, the development process, and my game, Last Night in the Office, which you can find here.

The Next Adventure Jam utilized the adventuron.io game engine, designed to create classic text adventures. Built in the style of the adventure games of the Commodore 64 and the ZX Spectrum, it allows for the player to move from scene to scene, interact with the scene with a text parser, and display a graphic for each scene. The goal of the Next Adventure Jam was to create an adventure with bright, vivid graphics and the option of targeting your adventure for the ZX Spectrum Next or the ZX Spectrum +3.

Having never participated in a Game Jam before and being quite rusty in my programming skills, this was the perfect jam to jump in to. I have always had a love for adventure games, as one of my earliest memories of playing any video game or using any computer was playing Space Quest 3 on my dad’s Packard Bell 386 SX.

A screenshot of Space Quest 3

While the adventures of Space Quest’s generations are a little more advanced than those that Adventuron produces, my earliest video game obsessions were getting my hands on any adventure game that I could.

With the help of two very well written, step-by-step tutorials, jumping into making a full adventure game was very easy. You can quickly define rooms and their connections, creating a world to maneuver through in minutes. While not a requirement for the jam, I thought it would be fun to specifically target my game for the ZX Next +3, which restricts the kind of inputs allowed as well as the graphics.

Part 1: Plot and Design

I have been getting into a lot of cyberpunk themed media lately, so I was initially drawn to the idea of using computers within the game. I thought that would be a perfect feature of a text based game, to have to log onto a computer to complete some of the puzzles. It would have the added bonus of having plenty of screens that I didn’t have to draw graphics for. That idea quickly morphed into the player using computers within an office building, which then quickly morphed into the player being an computer person trying to break into secret parts of the building. In the end, the actually logging on and using the computers did not feature as prominently as I originally intended it to, though the player does get several hints if they do log on to the accessible computers.

I did not have too many free hours during the weeks to devote to the project, so I limited the number of puzzles within the game. From those who have played the game, they have reported that they were able to get through the game fairly quickly, several of the puzzles do require some out-of-the-box thinking, which I think is a hallmark of the genre. In some ways, I think the restriction to the ZX Next+3 made both playing the game and designing the puzzles a little easier, since all actions were of the VERB NOUN type. When you only have two words to work with, it really focuses your options.

The built in parser for Adventuron works wonderfully, and there is very little setup you need to do to get it working. Programming commands is as simple as “: match ‘examine book’ {}” which then triggers code when the player types those words in, or any of the synonyms that you define. It handles all adjectives and pluralization for you as well. Crafting match statements takes a long time though, because you having a well described world and accounting for most of what your players will type in largely decides whether you game comes across polished or not. While I think I did a decent job in that regard, after looking at the other jammers entries, I certainly could have used more descriptions of the various objects and scenes in my game.

Part 2 – Graphics

Not having much practice in creating graphics and the choice to target the ZX Next +3 both helped and hindered by creation of the graphics. On one hand, the target resolution I chose was very small, 128 x 40, meaning my pixel graphics would quickly fill up the screen. On the other, it is very difficult to get any detail in that resolution. Additionally, the target color scheme only allowed 16 colors, so I didn’t have a whole lot to choose from, but that kind of restrictions usually helps my creativity.

The 16 colors allowed by the ZX Next+3

The most challenging aspect of the graphics programming was the other restrictions of the Spectrum. While 16 colors were allowed in each graphic, the graphics were segmented into 8×8 pixel blocks, and each block could only have two colors in it. This requires some very creative placement of the elements of the picture so your color changes are not jarring. For the most part, I stuck to a majority two color picture for most rooms, though there were a few, like the IT office below, that I was able to get a good amount of variation in.

The starting room of the game

Part 3 – Programming

I did not run into too many problems with the technical side of the programming. There is so much power hidden behind the scenes with the Adventuron engine, you can really focus on the big picture. The bulk of the game came down to programming a lot of if-then statements. One challenging aspect is getting used to a very different programming flow and setup than most traditional programming languages. Once the project gets a couple rooms and the number of things the player can interact with grows, proper formatting and segmenting your input options becomes very important. I added a hint system very hastily and somewhat poorly at the end of the project, which could have been implemented much better had I started with the idea to include it. In the places I did get stuck, the documentation and tutorials were excellent resources to solve any of my problems.

Part 4 – Overall

Overall, I’m pretty proud of the little game I created here. Its been many years since I programmed a video game, and this jam was just the thing I needed to spark that fire again. The community during the jam was excellent as well, and everyone should go check out all of the amazing games that were made during it. While I am proud of what I created, I was absolutely blown away by what everyone else made and am definitely going to step up my game for the next Adventuron Jam.

%d bloggers like this: