Select Page

Overview

About:

Raskol is the final game project I worked on at Futuregames. The game follows the story of Matvei and Oksana, two siblings resisting the communist revolution long after WW1 ended. In this alternate history, the constant conflicts would eventually split the previously great Russian Empire. Now Matvei and Oksana have to fight not only for country, but for themselves.

My contributions:

  • Project management
  • Lead design
  • Narrative design
  • Sound design/VFX
  • Scripting

Details:

  • Engine: Unity
  • Team: 3 designers and 4 artists
  • Time: 7 weeks

Project management

Product owner/project manager.

As the product owner of this project, I was responsible for communicating the team progress to potential stakeholders (in this case FG crew and the jury). I handled who should present our content, and I also led the scrum process together with the scrum master of the team. I built the product and sprint backlogs, and together we made sure the team was up to speed on what was going on in the project.

Game Design

Lead Design

Apart from being the product owner, I was also the lead designer of this team. As lead design I was primarily in charge for making final decisions on all matters of gameplay design and similar. I was also making decisions regarding what features should be in the game. Together with the lead artist I also oversaw the art direction of the game and gave my feedback on that, when needed.

With gameplay design, I was mostly interested in striking a good balance in the gameplay between the two controllable entities. Oksana is a tank commander, and Matvei is a foot soldier. They both bring valuable skills to a battlefield, but to make the experience worth it their skills have to be offset, so they both feel usable and important. While Matvei was the character being given the direct control with top-down-style controls, I never wanted players to feel like they could leave Oksana behind. The game thus provides challenges that require either character in alternation or both at once to actually be solvable.

Narrative Design

I also worked on the games narrative design, by creating the alternative history backdrop for the game, in which the Russian revolution was not quite as successful as the revolutionaries would have hoped. Instead of a quick creation of a Soviet Union, the war dragged on for almost a decade, to a point where Russia split entirely into small bickering nationstates, similar to it’s condition before the unification and later expansion of Ivan the 3rd and 4th.

The two characters, Matvei and Oksana, are siblings hailing from the Rostov region of Russia (in the south-west). Being of Cossack heritage, they have reasons mostly religious to resist the Soviet uprising, as they do not want to have their religious freedom impeded. Before the current conflict, they were fighting for the cossack Don army, which has now been reduced to a small resistance troupe. Armed with tank and rifle, they set aim to liberate the areas which most recently fell under Soviet rule.

I wanted to create a narrative that felt fantastical and in some way improbable, but still grounded in reality. The setup for the current conflicts are based on the single detail that the soviets never secured an early exit from WW1 in their fight against the Germans. Historically the soviets reluctantly ceded a lot of land to the Germans, and the game simply assumes that this reluctance held further.

Scripting

AI Scripting

As there were only 3 designers on this rather large project, I also had to make some time for helping the lead scripter implement some features. Most notably I worked on the Enemies and their “AI” behaviour, something I was solely responsible for.

To start with, I made generic scripts for spotting and detecting, which was possible to apply to all entities that needed this functionality. The scripts function by checking the angle of the players direction in comparison to the entities forward vector, and this is later compared with a set “field of view”. If the player falls inside the parameters of the field of view and the view distance, it moves forward to doing a simple raycast to see whether there is free line of sight to the player or not. If there is, the player is considered “seen”. The AI scripts use this to do their actions. Stationary enemies like the Bunker and Anti-Tank enemy simply use this to be able to establish an aim and then shoot at the player.

Dynamic enemies

The game also features more traditional enemies with AI behaviour, in this case enemy soldiers. Using a State machine, these enemies have various abilities. Most importantly, they can Attack and engage the player. This is quite simple, as they just find the closest path and try to close distance while shooting.

The AI has the ability to perform slightly more complex tasks, like patrolling set routes and also taking cover. When enemies are trying to take cover, they find potential, pre-set cover nodes within a certain distance from their position (if none are found, they revert to a fleeing state instead). If there are multiple nodes, it starts to check which one is the most suitable, based on range and visibility from the player. For a node to be valid, it needs to provide a broken sight line from the player. Usually when this is found, this is considered the top node. As soon as a node is determined, the AI agent runs to it.

There is also an alert function, based on input from the gameworld. when enemies see a player, they can alert other enemies in the vicinity. This alert has a limited range so that not all enemies in the game will be triggered at once. An alerted enemy stays alerted, and if they see the player they will simply switch to attack. This means that shooting into a group of enemies will result in all of them engaging you instead of just one.

Sound Design

Sound Design

Apart from the other things, I also acted as the game’s sound designer. All sound effects were either sourced or made by me, and they all went through processing and editing. While i.e. gun sounds are easy to find an source, I wanted to make sure they were distinct from each other so you could understand if it was a rifleman, machine gun bunker or anti-tank rifle shooting at you. Unity processing tools also helped me to achieve the proper effects on the sounds, to match the environment they played in.

Other sounds, like the tank repair and mine digging were mixed by me. My goal with these sounds was for them to be significant and give heavy feedback to the player, so that they understand that these things are happening.

Along with this, I also wrote all of the dialogue in the game, and also led the voice recording sessions with talent from Russia. I also edited and processed the resulting voice clips.

Post-mortem

With this project, I had a good chance to learn many different things. Mainly I of course got to experience what it is like to be in a leading position for a team, and all the responsibilities that come with this position. It was absolutely a challenge but one I hope to get to tackle again in the future. I also got to deepen my knowledge in scripting and AI, which I appreciated a lot. Finally, I got a good chance to consider all I learned in design as I applied it onto not only the gameplay design, but also the narrative design with the intention of creating a wholesale experience for the player.

Ultimately I had a lot of fun, and I felt like I was in my right element while working on this.