Jet Pac – Graphics

The Original Sprites

The initial idea was to make remakes of the original games. The first prototype for the Jet Pac remake running on Windows Phone 7 is shown below. To speed up things, the graphics were ripped from the original game, this allowed development to continue whilst the graphics were redrawn.

JetPac original screen

The below screenshots show the start of moving away from the original graphics, e.g. the parallax scrolling of the clouds and their associated shadows… before the project was abandoned for the game harness.

JetPac graphics remake

For the Windows Phone 7 game, rather than recreate all the original graphics, a Spectrum emulator called ZXSpin was used. It had a superb feature that enabled the memory to be graphically displayed.

Below is Jet Pac in all his glory.

JetPac graphics memory using ZXSpin

The graphics in Jet Pac, with the exception of one, were all sequentially laid out in memory right at the very end of the code. Each graphic conveniently had a header which contained height and width values.

JetPac graphic values

With this in mind, it was trivial to write a few lines of C# to programmatically rip all of the graphics out of the game and then flip, invert and save them as PNGs.

The final sprite sheet looked like this:

JetPac - Final sprite sheet

Clues in the Code…

It’s noticeable that the developers had animation for the first three aliens only. The code was certainly built for all eight aliens to have two frames but it appears there was not enough RAM to hold the required additional sprites.

Given that the Jet Pac left and right sprites are just a mirror of each other, it seems a waste of RAM for them to be duplicated like this. I suspect this was done as the Spectrum perhaps didn’t have the horsepower to flip sprites quickly enough during gameplay.

All the graphics in the code are neatly laid out in order so it’s fairly obvious that there were some late tweaks to the order of graphics appearing on different levels. Each rocket has a consecutive number: U1-4. The original order of rockets would appear to have been U3, U1, U2, U4. This order actually makes sense, as if you look carefully, the rockets illustrated would have become more modern with each rocket change.

Also the bouncing balls on level 3 were originally probably intended to belong to level 5.

With these two changes, it is clear the Stampers were pushing the better graphics to the beginning of the game to make sure that we, the gameplayers, and the reviewers saw them early on!