Chapter 23 - January 16th, 2016
Shoot to Thrill!
been a long time between drinks but the blog is back again!
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
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!
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.
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.
"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