The main feature of antivania game is that the main character constantly losing his special abilities along the way. In that context a lot of people asked how levels will be built to support this system. So let’s take a look at level design of antivania.
My goal as a developer is to make sure that player will be able to complete any level and defeat any boss with any combination of special abilities.
Taking into the main feature of the game it is quite hard (if possible) to apply classic metroidvania world design with 1 huge interconnected world. I had to change the structure trying to keep enough freedom for the player.
The game world can be separated into 3 main parts:
- Introduction. This is the tutorial part of the game where character acquire all his abilities and learn how to use them.
- Exploration. This part contains main hub and 4 big areas to explore. There is the boss at the end of each area.
- Finale. In this part player meets the final boss of the game.
The first and the last segments are linear, so I won’t spent much time with it. I know exactly in which state character will be during these segment and I will adapt level design to it.
In the central segment things are getting more interesting. There starts freedom and variety that I mentioned before.
After completing tutorial part player ends up in the hub. From here player can choose where to go and which ability to sacrifice. After that player has to complete the rest of the levels with fewer abilities, which means he has to find a way to use them smarter and more efficient.
Also, these 4 areas are not connected to each other. After completing 1 area player has to return to the hub and choose the next one.
All 4 areas are equal in terms of length and difficulty. Let’s take a look at 1 area and all other will apply the same applroach.
Each are has an entry point and destination point which is boss-fight arena. Let’s imagine an abstract path between these 2 points.
We know that player might has from 1 to 4 abilities, but we don’t know what exactly abilities player has. This implies that there should be more than 1 path from start to finish.
We can easily count total 15 possible combinations of abilities.
If we would do in dumb way, that is how are structure would look like.
This is obviously waste of time and resources. More than that, it is quite hard to design 15 unique ways to complete the same level. We need to smarter about that.
Let’s look at it from the different perspective and try to connect it closely to player’s abilities.
Path for each ability
The most difficult situation for the player is when he has only 1 ability left, but still must have valid path to complete a level. There are 4 special abilities so every level must have minimum 4 different paths (each path dedicated to 1 ability).
Now player can complete our level but the level is not very interesting and lack variety.
Let’s add mini-hubs along the way where all 4 paths meet in 1 point.
These mini-hubs have some useful functions.
- these are safe-zones where player can take some rest
- here we can add important moments of the game that player shouldn’t miss regardless of current abilities set (cut scenes, story bits, important items, etc.)
- If player has more than 1 ability he can switch rails (start with spider legs, after 1st hub switch to tentacle, then to bat wings). This will add more dynamics and variety.
All 4 paths are equal in terms of length and difficulty, so let’s take a look at 1 of them. The principles that we will discuss further will be applied to the other paths.
Path for single ability
For example let’s take Bat wings path.
Let’s take closer look at 1 of the segments between 2 points. And let’s illustrate it as long S-shape path. I added difficulty axis on the side. The more path deviates from straight line between points the more difficult the path becomes.
Now let’s give player ability to skip difficult part of the level using shortcut dedicated to another ability.
In this case if player has Tentacle and Snake dash abilities that path from one point to another will be not only shorter but easier.
And I intentionally drew these shortcuts in the same S-shape…
Yes, shortcuts inside shortcuts!
We can add as many shortcuts as we want and we can inject them at any point on the level.
Now let’s simulate how the shortest and easiest path would look like depends on how many abilities player has.
Let’s remove spider legs. 3 abilities.
The path became a bit longer and a bit more difficult. Removing snake dash. Only 2 abilities left.
And after sacrificing 3rd ability we fall back to our initial path.
You can see that all options are quite different in terms of difficulty, variety and frequency of abilities usage. Also we can reuse shortcuts dedicated to other abilities after sacrificing one. ] This approach can guarantee that player can complete a levels with any combinations of abilities and also saves time and resources.
How about bosses?
Bosses will use the same approach but instead of paths they will operate attack patterns.
Each boss will have a couple generic attacks that don’t require special ability to dodge or counter attack. Apart of those each boss will have at least 1 attack that will challenge one of the character’s abilities.
At the beginning of the fight boss will analyze abilities of the character and if character is missing some abilities the boss won’t use corresponding attack against him.
With system we will have “fair” boss that will not throw unavoidable attacks. In the other hand if player come to a boss with a lot of abilities the fight will be more difficult because player has to “read” and react to more attack patterns.
That was theory part of level design. Next step is blocking of test level applying principles described here.