
Earth 2015 is a 2D side scrolling shooter, created in Java. I first started working on Earth 2015 as a project in my 2nd year at university for the Mobile and Web Games Development module. But although by the end of the project my work was sufficient enough for me to achieve a B1 grade, it was far from being a complete game. It was more of a small demo, all you could do was move around and shoot the one and only enemy in the level. The user controls and the menu system were fully implemented, but gameplay elements were badly needed. So after my 4 years at university, when I was looking to improve my portfolio, I began working on evolving Earth 2015 into a complete game. There is now a complete level to play through, with increasingly numerous enemies to overcome, culminating in an end-of-level boss battle. A scoring system has also been implemented.
It could still be improved upon with more levels and a high score table, but the potential is there to see and it is now far more playable than it was originally. Unfortunately I have not yet been able to get the game to work online, despite spending many days fruitlessly attempting to do so. Frustratingly, the game plays fine in a web browser offline, but despite uploading all the necessary files to my web server, all that happens when you try to run it online is: A) you get a blank screen or the Java loading icon is all that gets shown; or B) it crashes your web browser. So I'm afraid your stuck with these screenshots and a couple of animated GIFs of in game enemies.
If anyone out there reading this is a Java expert and has any ideas on how I can get my game working online, please email me with your suggestions. They will be gratefully received!
To improve the gameplay, the first priority was to give the player a wave of enemies to contend with. As the player goes through the level, enemies will appear who fire at you. As you progress further through the level you pass invisible 'checkpoints'. After each one the enemies become more frequent and they fire bullets at the player more rapidly. Therefore gameplay gets increasingly tougher as you get closer to the end of the level, but you are rewarded for this with more points for killing the harder enemies. The player, as well as being able to fire back at the enemies, can dodge the oncoming bullets and (if you are good enough!) even the enemies themselves, by running faster and jumping.
Once you reach the end of the level, the climax is an epic boss battle! There is motivation to get to this point as quickly as you can because, as you can see in the screenshot above, you are rewarded with a time bonus which varies depending on just how fast you are in getting to the level's end. The highest time bonus you can get multiplies your score by 6 - you have to have quick reflexes to achieve this!
The fight with the boss demonstrates a bit more AI in the game than the basic enemies showed. When the player reaches the end of the level it triggers the boss to fly into view and slowly descend to ground level. After this the boss stomps back and forth across the screen, jumping into the air every so often. To stay alive you must time your runs so that you can dodge under the boss when he is in the air. But as you deplete the boss' health, which is displayed onscreen, he will become more angry, running much faster and jumping more frantically.
If you manage to stay alive and defeat the boss, he will be destroyed with a neat explosion (which has to be my favourite animation in my whole game), accompanied by a satisfyingly loud BOOM!!!

The explosion fanfare is followed by this acknowledgement that you've completed the level unscathed, albeit only just when you look at the player health bar in this example!