By Dan Henderson
Released 02 February 2020 (AKA 02022020)
About Planet Invasion 2020
Some people will be familiar with the classic ‘Defender’ game from the 1980’s, yet weirdly, I know the game as ‘Planet Invasion’ on the ‘Dragon 32’ computer. It has become apparent that the game was either copied or bought under licence. Anyway, I always thought it would be interesting to do a Low Resolution version of the game on the Apple II. That being said, my not being able to program in anything other than BASIC would have made Planet Invasion too slow even if it was compiled.
That issue was resolved to a good extent when I started chatting to Sellam Abraham on the Apple II Facebook group recently. He expressed an interest in writing an entire Lo-Res graphics engine and art suite which could create frames and sprites that in turn could then be called from BASIC at close to Assembly Language speeds. Although Sellam struggled with my inexperience and lack of understanding of some programming concepts, having come into programming from an art / graphics background, together we managed to create some pretty cool demos over the past year. Slowly, impressed on me to contemplate compressing and speeding up the code I wrote and the results have been astounding.
GR Editor Tool
While his GR Editor isn’t finished yet, as you can see from the screenshots of Planet Invasion, it really is an easy program to use. With GR Editor, you can literally grab sprites from any frame to use in your game or demo and put them on the screen with colour masks if needed, which when coupled with the ability to scroll between two frames horizontally or vertically. This methodology is what lead to the game ‘Planet Invasion’ coming to light.
You are the fighter pilot, try to shoot the enemy UFO as many times as you can before he shoots you and avoid running out of fuel by shooting the fuel rocket which appears intermittently. You have in your arsenal 5 smart bombs which should be used sparingly but effectively wipe out everything on the screen at that time. Your high score is saved in a text file so just see how long you can last and try to beat your high score next time!
Controls for Planet Invasion are initially set by the program, however, if you do not like the defaults ones, you can change the controls simply by pressing the K key at the main screen. The initial controls are shown in the graphic below:
Once you have the key controls you like, save the setup. The game will then return you to the main screen.
Planet Invasion is a single-level endless-scrolling game and as such there are a few items of note that one must be aware of when playing the game‘Planet
While the fuel may seem endless in short games where the user dies in short order, the fact is it isn’t. The fuel rocket is what replenishes the users fuel supply. In order to achieve this, the fuel rocket must simply be shot when it appears on the display.
I wrote the game in BASIC which I refined into subroutines as much as possible and with Sellam’s help, the game was quite fast for BASIC anyway but then compiled it with TASC. I always write programs on a real Apple II but this one is unusual as I upgraded from a IIe to a IIgs mid-game so once I compiled it, it ended up too fast on the IIgs in native mode plus with use of text page 2 there was a lot of turning on Alternate display mode near the end.
In short, the game is very playable but in itself, is probably unremarkable, yet what is going on underneath with Sellam’s code is truly unique. Just for finishing touches he has added some cool music and sound effects to the game.
About the files on the disk
If you exit from the game, you will find yourself at the Applesoft prompt. A catalog of the files on the disk show the following:
As a bonus, I have left the entire basic program for Planet Invasion on the disk together with Sellam’s Spritedraw and GR00T programs which are loaded at the start. You will also see that there are a host of files including those related to the compilation of the original game.
I haven’t yet written a multi-level game because my thoughts are that nowadays, people just want something to play in their coffee break or in a spare half hour. However, a game level system could be added to the game if one were to plan out each level and put them into the system.
One other item I have thought about is the actual game control. As with all my keyboard games you can change the keys to whatever you like as discussed previously. I am however, toying with the idea of writing a joystick version should I get enough time and request for said option.
You can download the game for free from the Apple II Software Enthusiasts group on Facebook at: