This game was created by 11 students, 2 level designers, 4 programmers and 5 artists. It is a 2D game but all assets are rendered in 3D from Maya. We built the game from the ground up and worked with an agile SCRUM-based development framework. The game was made in 4 weeks during an eight week period.
I tried a new approach on paper planning this project. Inspired by the artists concept thumbnails I painted black and white miniature top downs on the pixel grid in Photoshop. I made numerous of these top downs. When I had a good amount I went over them and scratched the ones with silhouettes that I didn’t find interesting enough. Then I converted the black and white maps into color coded top downs, replacing the white blockers with props, water and blocked areas. I also added goal positions and good spots for enemies to spawn. After asking my level design partner for feedback I chose four of the small maps and made full-scale top downs on them. Finally I took the top downs into the editor and built up a playable map that was iterated upon and improved until release.
When creating units we wanted to avoid the classic and convenient rock-paper-scissors model. We wanted enemies to have a large impact on the pacing and maneuvering on the level and not forcing the player to move units solely to counter the enemy’s type. We decided to have two types, melee and ranged, and to let the units differ in range, damage and movement. After this was done, we got some simple stats in place and then created the player units.
We wanted to communicate clearly what kind of units the player had at her disposal. We decided to go with a Heavy – Medium – Light character setup. Instead of just letting the units differ in terms of movement, health and range we also added different weapon patterns. The heavy unit had a shotgun that created a T-shaped on-hit area effect. The light unit damaged several tiles in a line with her sniper rifle. One of the medium units did more damage and the other one fired two shots per action. This turned out to encourage the player to move units to better positions rather than just fire until the enemies stopped coming.
Simple stats were applied to the player units and then I began number crunching. I wanted to have the math ready when we got the unit stats features in the game. I applied the numbers unto several scenarios and tweaked accordingly, for example how long a player unit of a certain level would hold out against an enemy swarm, how many enemies two player units could take out in three turns and so on. This proved to be a good investment as no units later needed any bigger overhaul in their stats, only minor tweaks.
The programmers implemented a scriptable AI so I could adjust different enemies behaviours and priority. The script was XML-based which was rather inconvinient because XML does not natively support if-statements. In the end the AI turned out fine and diverse because of this and I gained more understanding of AI priorities and how to manipulate it.