For a final project in my game production class in my second year of college, I worked together with a small team of my fellow classmates for four weeks to create Kaiserwave. Kaiserwave is a turn based wave survival game based on the historical Second Battle of the Somme in World War One built using Unity 2D. The project was very ambitious considering our group's small size and our skill level at the time, but because of our collective belief in the project, we were able to create a very striking product. We only had four team members-- two designers, one artist and one producer, so for this project I assumed the role of programmer instead of focusing on design. That said, I worked quite closely with the designer and had a large creative say in how the game was designed.
Our intent for Kaiserwave was to create a war game experience that focused on blatantly portraying the horrors of war. The game is historically grounded, and centered around a historical narrative. we wanted to tell the story of the sheer human horror and atrocity that went into this battle through our gameplay. In the game, you play as a lieutenant in charge of a crew of German artillery gunners over the span of several days of conflict during the second battle of the somme. The game is played with a console controller, with the player rotating the sticks to change each of their four guns' angle and range. Once the player has aimed all of the guns to their satisfaction, they press the A button, and the opposing british forces charge your position. Each enemy soldier runs a different specific distance, and the player must observe where they'll be and lead their target. The player's guns do not have reticles, and are instead aimed using a gauge whose tick marks correspond to lines drawn on the game screen. This creates tension as the player attempts to eyeball and judge the range their guns are going to fire, just like artillery crews at the time period did when the enemy got that close. if too many enemies reach the bottom of the screen, the player loses, but if enough waves are survived, the player advances to the next level.
A very important element of Kaiserwave's design, which I had a hand in create was the narrative integration. Pictured above is the opening menu for the game, which is stylized to look like a range table book used by actual artillery crews of the time to properly set the range on their weapons. the marching orders on the right serve as instructions to the game while the letter to the left serves to introduce the narrative, and the player's character. The letter is interactive, and features voice acting by one of the other group members, to add a human touch. the letter is written in german, but a button can be pressed that translates it to english, allowing it to be authentic while still readable to an American audience. We chose to make the player character german, and fight on the german side to drive home the theme of the game. The germans are typically seen as the aggressors and 'bad guys' in World War One, with games about the time frequently being told from the perspective of the Americans or British, and we wanted to deliberately go against that to highlight that at the bottom line, World War One was a horrible, wasteful loss of life. We wanted to go against the design trends of typical war game action which rewards the player for killing and minimizes consequences. We on the design team made the choice not to give the player positive feedback on kills, portraying it instead as something the player needed to do to survive. The death screams of the enemy soldiers are real and visceral-- we recorded them ourselves. Additionally, corpses don't despawn during the level, rapidly piling up, providing a permanent reminder to the player of the consequences of every shell they fire. We wanted to evoke a feeling of numb horror every time they pressed the "fire" button, horror in the knowledge that they have two choices: die, or slaughter their fellow man.
While I was very much involved with the design aspects of Kaiserwave's production, My primary role on the team was that of sole programmer. This project provided a lot of technical challenge for me, and presented me with a great deal of opportunities to improve my C# scripting skills as well as learn the programmer role on a development team. creating the control mechanisms for the artillery pieces was particularly challenging, as they were intended to be controlled by rotating the stick around and around to mimic the motion of a crank. I had to get an in depth knowledge of the way Unity handles axis inputs in order to find a way to use the X and Y axis data of the controller joysticks to properly read the rotation input. The end result of the control mechanic was quite successful, evoking the motion we wanted while still being aimable. My skills at Unity C# scripting effectively doubled over the course of this project.