Thanks for sharing and detailed production breakdown
i thought there wouldnt be anything better than akeytsu for creating easy animations. im happy if i am proven wrong.
Keith, I just wanted to stop by and say: Thank you.
Whale Rock Games is a small indie company (15 people) from Ukraine. They have been hard at work on a new ambitious title called We are the Dwarves (WATD) – a brave mix of Commandos and The Lost Vikings. It’s the first project they’ve worked on as a whole, but not as individuals. Members of the team participated in the development of massive games such as Metro: Last Light, Dragon Age: Inquisition, Elder Scrolls Online, CrimeCraft, Warface, Skyforge, S.T.A.L.K.E.R. and even EverQuest II! In this exclusive interview the team talked about WATD after quite a long period of silence. We had a discussion about the creation of levels, figuring out AI, and using Unity.
Sources of Inspiration
The Lost Vikings is an outstanding game and despite the fact that our project belongs to a different genre, it definitely influenced the conception of the game. Three characters, each having their own unique role in the squad, must work as a team to succeed – that was just what we needed to begin with!
While pondering about level design, we recollected Commandos. It’s a great game and most of us spent many hours playing it. You have a huge map and a task, that is hard to complete headlong. You must explore the location to get clues on how to deal with the task. Of course, WATD will not resemble Commandos, not even Viking Commandos. In our game, stealth is not the basic gameplay as it is in Commandos. Proper positioning is extremely important with tactics, so our characters use stealth to get the advantage over the enemies before they attack.
Finding the Right Pipeline
Our pipeline changed in the course of time. For now, we develop our features iteratively. First, we discuss the new idea in general and then designers turn it into a task. We implement it in the first approximation and try to test it and play it. If the idea proves to be good – it is finalized. During the process, ideas transform heavily and the final feature often differs a lot from the basic idea.
We try to design our levels in such a way that the player is always given a chance to explore the settings using stealth mode, thus allowing the use of tactical superiority and the environment to attack. However, if the player raised the alarm, or his plan failed – he has to be ready for the possibility of battle. If you take into account that you always have a choice – to be stealthy or to fight – it is not easy to make both sides equal and well-developed. If the player always has enough power to overcome his enemies easily, even after being discovered at the most inopportune moment – then all those ‘looking-for-a-good-position-to-attack’ and ‘advanced tactics’ stuff start seem too far-fetched.
To avoid this we decided to use Space-Suits. Our main characters are the travelers through Stone Space, so we re-designed the appearance of our characters. Now their suits are a mix of heavy armor and elements of astronaut suits. For now their suits are not just clothes, but also one of the most important vital parameters of a character. Dwarven technologies are based on researching and utilizing unusual physical and natural properties of Stars. Players will have a lot of variants to improve the Suit – filters for acid fumes, gravity stabilizers etc. The integrity of the Suit will affect not only armor quality but also functionality of many built-in systems – some of them will shut down if the Suit is heavily damaged.
If the player ignores the damages of the Suit then it will be harder and harder to go further. By these means, the game will stimulate player not to try to ‘kill’em all’ with bruteforce, but try to find alternative ways to defeat the enemies.
I almost forgot to mention that we’re using Unity. This is a good choice for small teams like ours.
Tools of Development
We don’t use standard Unity terrain to produce levels. Simple heightmaps are not enough for us. You just can’t create rocks hanging on gigantic roots with that instrument. We use 3D sculpting for designing levels. After assembling box level primitives we can make a high poly mesh of the level in just several hours. Of course, it will be kind of a sketch, but it still allows you to see the outline of the future level and give more precise feedbacks for its final modeling. Such a pipeline saves us time, so you don’t need to draw 2D concepts and if the result is ok it’s possible to start doing the retopology at once.
We wanted to make AI-agents that could act quite independently. Crowds of zombies that just rush toward the Dwarves is a bad variant for a tactically-based game.
At first, we involved AI that was oriented around a so-called needs-based AI. Mobs had a set of tactics and moves (patrol, explore suspicious zone, melee attack, range attack, retreat from superior enemy forces, etc). These tactics had changeable priority levels that depended on circumstances and the mob’s state. The tactics with the highest priority level were involved. A game-designer is able to tune the multipliers of priority levels, so he can create brave agents who fight till the end, or cautious fighters that prefer to retreat once the enemy possesses the slightest superiority.
Later we wanted to have more precise control to manage transitions between tactics depending on the situation changes. When you have dozens of tactics with constantly changing priority levels, it is hard to predict which one will take place in a certain moment of time.
The current AI was hurriedly decoded to a classic state-machine, with strictly coded conditions of transitions between tactics.
AI was accreted with tactics for a long time until it got completely unsupported.
After that the day of the big refactoring came. All that pile of code was rewritten modularly, in the hierarchical state-machine style.
Now game-designers can build the behaviors of AI, that contain tactics and conditions of transitions between tactics.
These elements are maximally abstracted from specific mobs, this factor gives great possibilities for experiments with new combinations of tactics.
We tried to give our mobs ‘honest’ perceptions, so players could realize when and why he was noticed by enemies. Agents have a limited field of view, which is cut off by walls, plants, etc. Vision can be perceived other agents directly or the traces they left. Mob also have all-around Hearing, but taking into account the fact that sounds get weaker going through walls. To give the mobs even more advantages against hard-bitten dwarves, we also gave them the Touch: special circular sensor of a small radius that works even in thickets of plants or in full darkness when Vision is useless. Something interesting to note is that sounds do not give all the information about the source, they give only the overall impression of possible threat: someone’s footsteps, sounds of fighting, crying, some organic noise that is not necessary to react to. Loud sounds can conceal more quiet ones, thus giving us many variants for tactical planning.
Communication between agents is based on the above system of hearing and sounds. For example, a scout’s command ‘To arms!’ will not be heard by his allies if the scout is at the Zone of Silence, or too far from his squad, or if he is near some source of loud noise (a waterfall for example). However, some mobs-insects are able to intercommunicate telepathically, so players should take it into consideration while planning the battle.
Distribution and Marketing
For now we plan to use Steam to distribute our product. We will possibly take into consideration other ways of distribution in the future. We published the first chapter of our developing diary, where you can read about the process of animating creatures that inhabit our in-game Universe. In the near future we plan to publish more chapters and give more details about the process of developing the project We Are The Dwarves! The game is going to release in November 2015.