You are out in space, flying in your beautiful, handcrafted spaceship but there are adversarial ships coming at you! Shoot them for points or avoid them while they fly away. Your bullets are limited and you have less lives than a cat!
The source can be found on Github. You need to have a systemwide installation of the Arduboy library in order to compile this. See this page for instructions.
If you are looking for a good example to start developing your own game, it might be better to look elsewhere for now.
Get the code by entering: git clone https://github.com/PolygonAndPixel/SpaceFighter
This game has not been tested with the developer kit. A lot of memory is used.
In order to upload a new sketch, press the left button and the up button while
switching the arduboy on or else the upload will most likely fail.
This game is still in development and there are a lot of bugs and missing features
(see below). I am going to tackle the bugs first if feasible and then add features.
Explosions might occur when starting a new game
Collisions are calculated very poorly
Ships only have limited movements
Only one kind of bullet is available
There are no upgrades for the ship
There are no levels or at least alternations of enemies. They just spawn randomly
There are no boss battles
There are no different backgrounds
There is no sound (but there actually is no sound in space. I suppose it still counts as a missing feature)
The pace of the game needs calibration
After a while you can spam bullets at your enemies if you survive long enough
The player has no feedback when he is invincible (you just don’t know, you can’t be hit)
The player could need lifepoints, so he/she doesn’t loose all the upgrades after one hit
Increased the player’s speed.
Added movements to the enemies.
Altered the shooting mechanics for the player.
Changed compatibility to Arduboy 1.1
Changed compatibility to Arduboy2 (v4.0.2)
Enemies now have lifepoints
Changed speed of player’s bullets
Some bugs with explosions should not occur anymore
Fixed a bug with falsely drawn explosions
Fixed a bug where bullets disappear
Fixed a bug where the player couldn’t shoot anymore after a while
Added supplies that are dropped by ships (look out for little crosses)
increase the score
increase your speed
increase the speed of your bullets
change the way you fire (double bullets, diagonal, etc. 5 different ways to shoot now)
give you an extra life
make you invincible for a short time
decrease the cooldown for firing
increase the maximum amount of bullets you can have at once
Added two more enemies
Enemies now can shoot two bullets in diagonal
Calibrated the pace of the game a bit
Calibrated enemies (speed, lifepoints, number of bullets)
Player now has lifepoints and can survive several hits depending on the enemy
Added a boss battle every time the player gains 100 points
The enemies’ lifepoints scale with the player’s score
The player can shoot slightly faster from the beginning
Saved some memory by removing certain variables
Added a lifebar for the player since he/she now can get hit multiple times (depending on the enemy)
Hey there! Thanks for referencing my game, made me feel super fuzzy inside.
You’ve got a really cool base game here, but it needs a lot of polish. Controls currently feel a bit slow and sticky, and I’m not sure if it’s intentional but the player ship, on my device, can only have two bullets on screen at a time. With them firing so close together, that makes it really difficult to hit a lot of stuff.
I like your art a lot - much better than my horrible blobs.
I think your EEPROM addresses are impeaching on something that already exists, too, possibly that 3-in-1 puzzle pack? I already have scores listed and a couple of them are displaying real weird. It’s a pain but try and pick somewhere arbitrary - the location I picked for stellar impact is a good 30 bytes away from any other game I’ve seen.
Overall though, this is really cool. Feel free to check out Stellar Impact’s code/hit me up if you need help implementing anything in particular: it’s not particularly clean code but it should be readable enough.
Thanks for your interest! I did not have too much time to code but I believe I can work a little bit every two days or so. After implementing most of the game (e.g. different behavior for each enemy, bigger enemies etc.), I am going to polish a lot.
The highscore code is quite old code I once used for my developer kit. I just need to update it but the highscore has a low priority at the moment.
Shooting just two bullets at a time is intentional. I’d like to implement upgrades for shooting faster and more bullets. I also put more space between two bullets. After cleaning my code a bit, I am going to update my repository.
Don’t worry. I will use the released library and update my code accordingly after work today.
I updated the code. It works now with Arduboy 1.1 but everything is more slowly than before. Did the clock speed change?
A new version of the library (E.g. V1.1.1) probably should have been released as soon as the frame rate fix was applied.
I suspect many other games will experience similar timing problems, but since they will have been developed with the bug in effect, they will have to be slowed down, which is likely easier than having to speed them up.