Chapter 26 - April 1st, 2016

The Final Countdown

This last few weeks have been spent doing fixes, refinements and adjustments of various gameplay elements. The game is now at the final stages of completion and I now have to define the 80+ screens of scrolling terrain.

Being the final stages of this project, I have titled this chapter... The Final Countdown and in keeping with the 80's music theme I have been using in previous instalments, I have located the following link to keep me in the right frame of mind...   CLICK ME


Below is a list of the changes and refinements I have done.


  • Adjusted the frequency and randomness of the balloon launches.
  • Added a simple graphic effect for the balloon pop. I also found that it was possible to pop two balloons in quick succession so I made the routine handle two balloon pops simultaneously to give a better effect. Thanks to Torsten Dittel for the initial feedback on this.
  • Experimented with various death routines. After several attempts, I decided that when the plane collides with anything, it will stop moving forward, wedged into the object it collided into and scroll to the left with the terrain. If a collision with a balloon or other suspended object occurs, the plane will fall from the sky till it hits the ground or lands on a grounded object. The plane will flash on/off from the moment of collision, all fuel will be depleted and the engine/propeller will shut off.

New terrain will cease to scroll in from the right and the plane will continued to scroll with the remaining terrain until everything disappears off the left edge of the screen. If another plane is available, it then will scroll back into view from the left as the terrain starts to reappear scrolling from the right edge, beginning back to the last checkpoint obtained. If no additional planes are available, the screen will switch to a GAME OVER screen and if a new session High Score has been achieved, it will also print text to inform you of this. Phew! A very busy part of the game and thanks to Curtis Boyle for feedback in this area.

  • Improved and optimised the joystick reading routine. Because the sound interrupt routine uses common I/O control lines as the joystick (both use the 6-bit DAC), there was a need to do a short interruption of the main interrupt driven sound and video raster routine so as to read the joystick. This had to be done quickly so as not to interrupt the main interrupt routine for any noticeable period while not allowing joystick data to pass through to the sound output.

The routine also had to decide if your plane was out of fuel whereby the plane propeller and engine were shut down and you lost all vertical control of the plane. The plane would glide towards the ground where it would crash to its doom. During this freefall mode, the player can still control the horizontal movement of the plane as well as the firing of the gun. This gives you one last chance to glide your plane close to a fuel object if available, shoot it during freefall which will replenish your fuel and re-start the engine, allowing you to veer back up into the sky at the last second. A tricky manoeuvrer designed for the pro players and very rewarding if one can pull it off!

  • I altered the color of the fuel bar at the top of the screen. It was red (fuel level) and yellow (empty fuel level) but I found that the yellow stood out over the red and it took a split second to interpret accurately when glanced during the heat of gameplay. The yellow has been replaced with a dark red which allows the actual fuel capacity to be highlighted and can be interpreted faster.
  • Quashed a variety of minor bugs. In particular, a slight flickering on the edge of the split screen scrolling has been reduced to almost nil. The overall screen and presentation of graphics looks smooth and clean.

I can now move into the 80+ terrain level design. This will take some time and a lot of play testing to get things right.

Future YouTube Video Preview

I have now got access to a fast Intel i7 gamers PC that can run the latest MAME and CoCo3 emulation at full speed. I have also acquired a USB joypad so that I can run the game to obtain an accurate and clean video capture. I hope to have a near-to-completion video in my next blog chapter.

MESS appears to run the game quite well. VCC unfortunately does not handle the interrupts accurately enough and causes the background raster lines effect to jitter. Hopefully the VCC engineers will fix this sometime in the future.

Till next chapter, upwards and onwards!



Copyright 2013 by Nickolas Marentes