Unnamed Space Shooter


I’ve only been working on this for a few days now, but it’s gotten further than any other game I’ve made so-far. At the moment this game doesn’t have a name nor final art assets, but I’ll have them created soon enough.

A few of the ideas that I’m planning on implementing are:

  • Multiple patterns of movement for the aliens so that there will be some variety between the levels.
  • More upgrades such as speed, shields, lives, and of course more projectile attacks.
  • A lives, shields, score, and level counter.
  • More enemy types which will possibly require more than one hit to kill.

If you’d like to test the game you can find an up to date version here:

I’m using a self-signed certificate for the site and jar so you may get a warning about that, just ignore it.

This is not guaranteed to be bug-free but it is definitely playable and all current features work.

Notes on playing:
-Space to shoot, left and right arrow keys to move.
-If you shoot the upgrades (multicolored squares) then they’re destroyed and you lose 100 points.
-If an alien makes it to your row then the game is over and you lose.
-If you kill all aliens you advance to the next level.

Update Log:


  • The player can no longer move off-screen.
  • New sprite art!
  • Temporary sound effects.
  • Score/Level counters.
  • Slightly modified projectile upgrade durations and speeds.
  • Added a new criss-cross attack with both a normal and fast version.
  • Aliens can now attack you.
  • Added a shield and life counter for the player.
  • Alien projectiles do not affect other aliens, but they can destroy upgrades!


  • Added a new homing projectile upgrade. There is one small bug with it, but I’m working on it.
  • Slightly tweaked the duration time for the ion cannon upgrades.
  • Aliens are now animated
  • You can restart the game at the score screen.
  • There is now a weapons upgrade duration timer.
  • Upgrades of the same type now stack.
  • The weapons upgrade duration timer now uses smaller time.


  • The game now uses 1/3rd the amount of ram as it did before.
  • I’ve hopefully adjusted the SFX so that they aren’t super loud anymore.


  • Aliens now have both life and shield counters just as the player does.
  • As a test to see how I’ll create new aliens I’ve set every second alien after level 5 to take three shots to kill. Two shields and one life.
  • Shields are now visible.
  • There are now different hit sounds depending on whether shields are up or down.


  • Rewrote a few classes because they started to become a bit too confusing.
  • Added in a few more homing projectile upgrades.
  • Added in a speed upgrade.
  • Finally fixed the homing projectiles. They now work perfectly as far as my tests show.
  • Shielded aliens can start to show up at level 5 and above. The shields are randomized so even if an alien can have a shield it might no get one. The number of shield points are also randomized between 1 and 5.
  • Basic directional sound has been added. If you fire from the right side of the screen it comes from the right speaker only, same for left, and for two spots in between the two speakers.


[li]Main menu, options menu, and highscores menu added.

  • You can now turn the directional sound on or off in the options menu.
  • Highscores are now added after every game.
  • Screenshots of the game can be taken with the F12 key.
  • Replaced the upgrade timers with bar timers.


  • Fixed the broken ship upgrade timer bar.
  • Fixed a weird section of code that was bugging out how upgrades work. Upgrades should stack properly now.
  • Added a pause feature. Press ‘P’ to pause!
  • Added a new enemy. It’s shields can go up to a new high of 10!
  • Modified the code to allow shields to go above 5 strength. The new shield color for 6-10 is purple.
  • Reworked a LOT of code to allow for sprite sheets, the new shields, slightly modified enemy generation, and a few other things.


  • It’s finally time for the update that I’ve been waiting to release for quite some time now.
  • The game now supports custom movement paths for each level.
  • The default game mode for now is what I call “Insanity”. The number of entities per level increases by 50 every new level.
  • I’ll be working on a few different level-types to go with the insanity type. These will be randomly picked every time you finish a level so that the game is a new experience every time.


  • Major fix to the spawning code and a few smaller tweaks to some other parts of the code. The aliens will no longer all be spawned at once off-screen, but instead they will spawn one-by-one as they should have originally.

Why not add an addable second ai player to help you fight! that would be super cool. Your game looks like that pixar animation with the blob :smiley:

Good idea, I might just do that in a future update!

Hows about some new art?
Here’s some ideas (album contains real-size images)

Animation for going left and right is a must as well as just idle movement.

I could do the art for the whole game, if you like this :wink:

Looks good, thanks!

Some suggestions I would make are for the wings to the player sprite to take up the entire width of the sprite and have two guns mounted on the sides of the sprite along with one in the center of the top of the sprite. The alien is a little bit too small for the projectiles to hit them properly, maybe a 2-3 pixel increase in size would fix that. Other than that the sprites look good.

~New version of the game in the OP.

I will need some more real-estate. Can you make the enemies bigger? Otherwise I might need to redesign the enemies.

I can’t give them much more space than they have now just yet. When I get around to allowing the enemies to do more than move in straight lines then I will be able to have larger enemies.

BTW, you don’t need to make the collision boxes bigger, just the sprites. It would look wonky if they were square. They should be a bit rectangular, but still have the same hitbox.

Got to level 11, and 17750(?)!

Hmm… I’ll look into that a bit later then. Right now the collision boxes are being generated based on the sprite, but it wouldn’t be to difficult to change that…

What do you mean by the 17750 at level 11? Is that not an acceptable score? Is there a bug?

Just felt like sharing my high score! ;D

^.^ Grats! The current highest anyone of my friends or I have gotten to was level 15, we haven’t kept track of score though. It gets really fast after level 10 X.X

You should add semi-homing shots as a power up, that’d be cool. Basically do something like this:

for(int i = 0; i < shotList.size(); i++){
    for(int h = 0; h < enemyList.size(); h++){
        if(shotList.get(i).x < enemyList.get(h) && enemyList.get(h) - shotList.get(i).x < 50){
        }else if(shotList.get(i).x > enemyList.get(h) && shotList.get(i).x - enemyList.get(h) < 50){

or something similar to that, so that if your shots are close to an enemy they’ll lock onto it.

Interesting idea. I’ll see what I can whip up tomorrow if I get a chance.

New updates along with a new version of the game in the OP. Includes homing projectiles.

Here is a new design for the enemies. Sorry for size :(.


Requires animation, but you should be able to get it :).

Looks good and I managed to set up the entities to accept animation now. ^.^ Thanks for the sprites!

Great job! I will have the shot animations in probably tommorrow.
P.S: Thanks for the medals!

The download link doesn’t work, you have to copy and paste the link into the address bar! Just letting you know :slight_smile:

Couple of things:

  1. I suck, I didn’t get past level 0 :frowning:
  2. Your text on the “you died screen” is off centered and made me cringe a little… I just wanted to straighten it up!
  3. The sound effects are awfully loud! Even with my volume at 20%, the sounds still were a little too loud.

Good job though :slight_smile:

I’ve updated the post with the latest version of the game for tonight and the link now works.

=P That’s fine. It takes a little while to figure out and get better at. The current record is level 26.
I’m not going to argue with that at all. I’ve been busy working on a few other parts of the code and haven’t gotten back to editing that screen. It’ll be fixed soon!
I’m using TinySound for all of the SFX so maybe it works differently on your machine. There’s not too much I can do about that at the moment though, sorry. =(

I’ll be pretty busy for the next two weeks or so, but I’ll try to push out a small update here and there. Today I’ve added a few long overdue features.