Chapter 23 - January 16th, 2016

Shoot to Thrill!

It's been a long time between drinks but the blog is back again!


After a long hiatus to work on several other groundbreaking CoCo3 projects with fellow CoCo legends, John Kowalski and Robert Gault, I have returned to continue my development of Popstar Pilot.



Bug fixes and more enhancements


First off the bat, I had some debugging and enhancements I wanted to implement. I didn't want to restart and progress any further until all bugs and annoyances were sorted out. I wanted a clean slate moving forward so it was on with the thick lens nerd glasses and a generous supply of aspirin!



Loader Page          Title Page


Game Screenshot          Game Screenshot


Game Screenshot          Game Screenshot

 


The screenshots above were all created from the VCC emulator (V1.42) running under Windows 8.1. I was surprised that the game worked almost flawlessly under it with only some flickering when displaying the colored Raster Effects backgrounds. It can be annoying so maybe an option to turn these off when using VCC is in order? It also is impossible to play properly with the keyboard/mouse. I guess I need a PC joystick but I normally run it on a real CoCo3 and Deluxe Joystick as it was designed for.


Here is a list of changes I did before adding anything new to the code.


1)  Modified the BASIC loader to have a clean loading progress bar.

2)  Added support for RGB and CMP color palettes with the loader prompting if it detects a NTSC CoCo.

3)  Automatic selection of the correct Timer Interrupt setting for PAL and NTSC.

4)  Add a shadow to the text in the game screens to improve visibility.

5)  Altered some of the graphic objects such as Fuel Tanks, Balloon Launchers, TNT Detonators and Warp Tunnels.

6)  Spruced up the Raster Effects background colors for the caves zone.

7)  Tidied up some of the graphic tiles used to generate the scrolling landscape.

8)  Removed some redundant code.

9)  Corrected a bug which the interrupt driven sound routine which created a faint buzzing sound when playing the game.


That was a good weeks work and it put me in a good position to move forward with the next major addition of the game.



Do you feel lucky punk?


It was time to get serious and get some gun action happening. I wanted to get my plane firing but first of all I had to get the targets finalized and the program tracking their movement across the screen. Up until now the targets were treated as another background tile. They are drawn and scrolled along with the other tiles making up the background. I had reserved the last six tiles so that the code could record their position and therefore knew where they were as the background scrolled. Below is a table with their anticipated function.


Target Objects

TNT Detonators 
These will be used to blow a hole in areas of the terrain that otherwise lead to a dead end.

Warp Tunnels
Destroying these transports your plane to another part of the terrain map.

Extra Life
Hit these to get an extra life - maximum of four.

Fuel Tank
Use to add fuel to your plane to keep it flying.

Checkpoint
Hit these to set a new start point when you collide. Saves starting over from the start.

Balloon Launcher
Cannot be destroyed. Randomly launches colored balloons.




As for firing, the bullet would travel across the screen until it hit something, then it would check a table with the target tiles position and if it finds a strike then BOOM!  Otherwise, stop the bullet and let it simply disappear and allow another bullet to be fired.


Your gun fires a bullet at about 0.5 second intervals. In single fire mode, only one active bullet is allowed at a time. In multi fire, three bullets can be launched. As each bullet completes it's cycle, another bullet can be fired. The firing routine could allow many more bullets but then that makes the game too easy and people will merely hold the fire button down to release a spray of bullets ahead of them.


I've decided to start the game in single fire mode and as you play, you will be able to collect a multi fire option (a red balloon) to take it to the triple shot fire. A collision of your plane will downgrade it back to single fire mode until you collect another multi fire option.


I wrote the firing routine three times, each time more optimized than the last until finally I had it firing as I wanted, striking targets and making lots of noise. The gunshot sounds like a real gunshot and the explosion has that satisfying KAPOW ... all without any stutter of the scrolling background.


The sound is so good that even my Commodore 64 friend thought I had installed a digital sound chip in my CoCo3.


I created some graphics to draw an explosion to go with the sound and it looks great.


Explosion Graphics



"99 red balloons"


I'm happy with the outcome of the firing and my CPU usage graph is still quite acceptable. Next up will be the balloons... the whole reason there  is POP in the game title. I have a plan for how I will be presenting and using the balloons but that is for the next chapter.



                                 

Copyright 2013 by Nickolas Marentes