Memoirs of an Action 52 Programmer

In which I chronicle my memories of working on Action 52.
 Thumb up

Fire Breathers

Albert Hernandez
United States
flag msg tools
The show on solitaire boardgaming.
Microbadge: May the wings of the butterfly kiss the sun...Microbadge: Merry ChristmasMicrobadge: Choose Your Own Adventure (CYOA) series fanMicrobadge: Merry ChristmasMicrobadge: ...and find your shoulder to light on.
When I started this blog, my intent was to publish a post a week. I seem to be falling behind a bit as my last update was four weeks ago... whoops. Some of the delay is because I've just been much busier, especially now that we are in the fall. Some of it, though, has been because I played Fire Breathers and find the idea of writing an entire post about it kind of hard. Enough stalling... let's see what we can get out.

I played Fire Breathers solo. That's not much fun really. You fly around and shoot a stationary target over and over and continuously win. It's not much fun this way. Obviously, this game was inspired by Atari's Combat. That game came with the Atari and so a lot of folks would have had experience with it. My recollection was that this game was fun enough as a two player game but like I played the other day, my experience with this game was primarily as a solo activity. The reason for that is that this game was the first one I created so it got played a lot as the kinks got worked out.

The process for testing the game went like this... modify the code, compile it and download it into the NES emulator. I had a decently working game at one point but with just the one dragon. One time, I downloaded my latest copy of the code to the emulator and turned on the TV. There was the game with the dragon flying in place but when I tried to move it, nothing happened, it flew in place. This was really weird because I had already gotten the joystick movement working. What in the world had I done? Well, in fact, when I wasn't in the office, Mario & Javi put the game on and recorded it on a VHS tape.. they recorded the dragons just flying in place for a couple of hours or so. When they new I was getting ready to test, the turned on the VCR without me realizing so that it was play8ing when I turned the TV on.

So the way I managed to code 52 games in a year (a game a week!) was by making a single game engine and then tweaking the knobs, so to speak, for each game. Once the engine was initially created, Fire Breathers was the first game I put together into something playable. The kind of variables I'm talking about are things like.

1. Does the screen scroll or is it static?
2. Is there gravity?
3. Is there jumping?
4. How many hits can a character take.
etc., etc.

I don't remember how many of these variables existed but my idea was to code all this up front at first, then for each game, tweak the variables to get a unique game. This is why folks complain that the games all feel the same. They basically are. The engine only allowed so much tweaking. If I'd had more time to work on the engine or more time to develop each game then I could have made the games feel more unique but that never happened.

When I started making the games, I didn't have any sense of how the cartridge would store and manage 52 games. The pirate cartridge we had seen had 52 distinct games. Our assumption was that we would make 52 distinct games. So what happened then was that I spent a fair bit of time getting the first game, Fire Breathers working. Once that was done, I then copied the code to a new folder on my PC and added the art files and sound files for the next game, tweaked all the variables and tested it to make sure the parts had been put together. I would then copy that again and repeat for the next game and then the next and then the next until all 52 were done.

Well, that was the plan but it didn't entirely work out that way. What I found as time progressed is that I would need to modify the code. In some cases it would have been new features. In other cases, it may have been bug fixes. Honestly, I don't recall exactly why, but I do recall that I had to make changes to the code as time progressed, but as time passed, the master engine did change and evolve. I think that means later versions of the engine would be more refined, for what that's worth. However, there were other changes I needed to make. Not all games fit into the two banks we had allocated for each game. In that case, I sometimes found I needed to maybe remove some of the art or even chunks of code that may not get used just to save space. I can't give any specific examples, because I don't remember but the sort of things I mean is that I would have taken out the code for scrolling if a game didn't needed. It wouldn't be a ton of code but every byte would help.

We didn't know it at the time, but we could have easily fit all the graphics without having to tweak and change the engine itself for each game. For a long time, we had no idea how the pirated cartridge worked and how it fit all those games on the cartridge. It used bank switching, which maybe I should talk about in more detail the next time I make a post. That bank switching would have allowed us to fit more data on the cartridge or even more games.

So anyway, yeah Fire Breathers. Playing it, I have fond memories of that game, probably because I spent so much time with it, but I see all sorts of changes I would love to make to it.
Twitter Facebook
Subscribe sub options Sun Nov 28, 2021 10:51 pm
Post Rolls
  • [+] Dice rolls
Loading... | Locked Hide Show Unlock Lock Comment     View Previous {{limitCount(numprevitems_calculated,commentParams.showcount)}} 1 « Pg. {{commentParams.pageid}} » {{data.config.endpage}}
    View More Comments {{limitCount(numnextitems_calculated,commentParams.showcount)}} / {{numnextitems_calculated}} 1 « Pg. {{commentParams.pageid}} » {{data.config.endpage}}