Game Development Reference
In-Depth Information
Programming Memories
We began our journey with the reflections of the game's artist on designing the Zool character.
So it is only right that we finish with the reflections of George Allan, the programmer of the
original Amiga version of the game. These days, George has his own indie game-development
company called Pi Eye Games, and even does his own graphics!
The best thing about working on Zool was the small team size. It was just Ade as the
artist and me as the programmer, with Tony Dawson coming in to design the maps later
on. We didn't know what a design document was, so most of the game's features came
from playing (erm, I mean researching) 16-bit console games. Most of the baddy types
were influenced by Mario, and the obsession with speed, naturally came from playing
Sonic (a parallel which the marketing department had fun with when the game was
released). The slopes and climbing actually came from the Strider arcade game, which I
once completed on a single credit!
You can take things like scrolling for granted in Game Maker, but a lot of my
programming effort went into achieving smooth scrolling in Zool. I'd come up with a
nice scrolling routine for Switchblade II (the previous game I worked on), which was a
blend of co-processor trickery, some nice hardware scrolling registers and on the fly map
decompression. That game was quite slow paced however, so I wrote a demo with a
block zooming around a map and within a week or two, that block had become the
Ninja alien from Ade's imagination.
To keep the game's speed up at 50 frames per second on the Amiga, Zool had to be
made up of three separate sprites. This is because hardware sprites could only be 16
pixels wide, but were much faster because they were handled by the graphics hardware.
This means Zool could be updated every frame along with the scrolling routine. The rest
of the level was updated every second frame as it needed to be drawn into a buffer and
then swapped onto the screen display (double buffering).
All this use of hardware sprites meant that there weren't many left for anything else.
The overlaid score panel had to be created using just two hardware sprites and
multiplexing them horizontally across the screen. Multiplexing is a technique where you
move a sprite during the update of the screen so that it appears in two positions at once!
Unfortunately this led to a timing issue on the final day which made the whole screen
occasionally jump 16 pixels to the right. It was fixed the day after the initial release,
which was a shame as the game had been held back a couple of months waiting for the
summer, and a mountain of lolly pops!
Looking back, I think small teams of dedicated people will always come up with the
most interesting games. We developed Zool by trying stuff out and then tweaking it until
it worked, just like you have in these chapters. So read this topic, play around with Game
Maker and go create some great games!
Congratulations—100% Complete!
So that's it! You can now consider yourself a battle-hardened platform game developer, as you
have created a fully playable version of a classic nineties game. There is no doubt that it will have
presented you with some real challenges, but you've made it through and you can rightly be
proud of the result. Give your game a thorough play test to make sure everything works just as it
should, and if you find any problems, then compare your version to zool15.gmk in the
Chapter06/Games directory on the CD.
We hope that you're pleased with the result and that you have been able to get your head
around the finer technical points of the chapter. However, more than anything, we hope we have
given you the experience of creating and refining the basic game mechanics of a platform game.
We have achieved our goal of producing a fluid and empowering movement mechanic by
 
Search WWH ::




Custom Search