Hi! My name is Kurt and I want to learn how to make games. Being a java programmer by day, I want to learn how to write games from scratch. So far it has proven to be quite a challenge, totally different from the stuff I write at work. So far I have only managed to make a pong clone that I would call a success. I believe the game challenges will give me an idea of what to make, a deadline to keep my focussed and quite the list of technical stuff to figure out. For now my weapon of choice will be libgdx. The source code will come on github.
The poll already got me excited about making a side scrolling arcade shooter. But then came the challenge of non traditional weapons! After a bit of thinking I came up with the idea of shooting "love", represented by a a heart. In the first level you will fight "sadness", and the enemies will shoot tear drops at you. For the second level I was thinking you will face "anger". But I still have to figure out the weapon of those enemies. Ah, no worries, love conquers all, right? The player will have to advance pas a few waves of enemies and conquer a boss at the end.
I'm first focussing on the technical challenges, as this is the area I'm most eager to learn. The first challenge that I tackeled was fixing my timestep. Something that was already on my todo list, and I think it will help me achieve the fixed enemy patterns each time you play.
Next thing that I had to figure out was the scrolling part. I'm not sure how it should be done, but here's what I came up with. I have a player that is moving from left to right, and I constantly update the camera position so the player stays in the same place on the screen. For now I have only added controls to move up and down. I will add back and forth later, but I want to keep it simple for now. Enemies currently have a predefined coordinate that places them in the "world". Since the player and camera are moving, they will eventually come into view.
To do ...
There's still much that I have to implement and/or figure out. I have tried to order them by importance. And somewhere along the way I will need to do some serious refactoring, it's all in one class for now ...
- Make enemies shoot when player comes near
- Collision detection (basicly just using the utility methods libgdx provides and then remove enemy of game over)
- Actual art instead of shape placeholders
- Scrolling background
- Add sounds
- Add main menu
- Left and right player movement
- Boss battles
- Enemy movement
- Once all the technical stuff is done I can have some fun designing levels and enemy encounters !
- Perhaps a scoring system ...
A little demo of what I have so far.
Thanks for reading!