I thought it would be interesting looking back at the past 5 months of Battlemass’ development and write a little something about the development side.
The client side of Battlemass was developed with the Unity3d game engine. The server side is running on Google’s infrastructure via the Google App Engine (GAE) and written in Python. I’ve released a package on the Unity Asset Store which will show you how to communicate with a GAE based server in your own Unity3d game.
Development started near the end of June 2011 and I quickly had a PHP based server up and a lobby system ready.
Around the middle of July 2011 I started looking into cloud hosting solutions and discovered the Google App Engine. I figured that if the game does well I would not have to struggle with scaling and it would be an opportunity to create code that could be used in future project. Only problem was that I had to choose between Java, Python and Go. Since I only had a little experience with Java and nothing when it comes to Java based webapps, and because I thought it might be easier porting from PHP to Python than Java, I decided to learn Python and scrap what I had in PHP and rewrite the server for GAE.
In August 2011 I started making changes to the game’s art with the help of a talented artist, Jarred Lunt. We started with the lobby’s art and this gave me an opportunity to make sure the lobby was working properly with the new app engine based server while I was still tweaking game rules and other logic of the game on the server side. Over a period of a week the lobby and hud was changed to make use of the new art direction for the interface, with bigger buttons and font to make the interface a bit more friendly and clean.
We decided that the old terrain idea would be dropped in favour of visible tiles. The units (vehicles) always moved on a hex grid system but it was never visually represented as you can see from previous screenshots). In this new system the terrain (map) would be build from little tiles. At this point harvesters still destroyed whole areas when they harvested and the game was still making use of the test units. I always wanted to bring through the idea that you are playing a board game and this was an opportunity to really use that idea and place the map on a table.
In September 2011 the artist started giving me the new unit models which I integrated into the game with some temporary textures on them to get a feel for the scale of the units on the board (map). A lot of development and testing was still going on, on both the server and client side to fix bugs in the game mechanics.
It was also at the start of October 2011 that I decided to get rid of the harvester mechanic that destroyed whole areas in favour of giving the player control of the harvesting process by letting him choose which tile(s) should be harvested in his harvest phase. Harvested tiles would not go into a degrading state and be destroyed in a matter of two turns.
Around the middle of October 2011 the game art and mechanics was being finalised and I started adding effects, sounds, and got a musician, Jonathan Watridge , to make a few tracks for the game.
… and it where all done by November 2011.