Developing Battle City - from beginning till now
I hate introductions, I don't know what to say about myself :/ Oh well. Name's Josip and I'm student of Faculty of Electrical Engineering and Computing in Zagreb, Croatia. I started programming in elementary school after discovering QBasic, and since I love video games I decided to become game developer. Over years I passed from QBasic, Pascal, VB.Net and C to C#, where I learn about game developing using XNA framework.
I had several "projects" (if you can call them like that), but none of them were real thing, only tests to see how can I make stuff working. After gathering enough knowledge and experience from those "projects", I set up a new goal: Clone of Battle City, a game I loved as a kid (and I'm still loving).
First, what is Battle City?
Battle City (known to many as Tank or Tank 1990) is a NES game released by Namco in 1985. The player, controlling a tank, must destroy enemy tanks in each level, which enter the playfield from the top of the screen. The enemy tanks attempt to destroy the player's base (represented on the map as a bird, eagle or Phoenix), as well as the human tank itself. A level is completed when the player destroys all 20 enemy Tanks, but the game ends if the player's base is destroyed or the player loses all available lives.
For the nostalgia value and for the sake of practice, I decided to recreate it (hence the same name... for now).
I started working on it in August this year (2012). After few days I encountered a slight bug which I couldn't fix immediately - my laziness kicked in day or two after that and I put it on hold.
On 12th of October I resumed working on it, and after few hours I located a bug and removed it. From that moment, everything just... started snowballing one thing at a time until it became what is it at the moment of writing.
Currently, it looks like this:
- 2-player support
- AI controlled opponents
- Indestructable metal walls
- Unpassable water (bullets fly over it)
- Grass conceals
- Working collision detection, hit detection and respawn
- Destructable brick walls
- Main menu
- Level system
- Ingame level editor
- LAN support
- Powerup system
- Total Graphic Overhaul (hell yeah, hardest for the end)
- Only sky is limit...
Thanks for reading!