Vicissitude
Multi approach stealth level design
Project Details
Role: Level Designer
Game: Dying Light
Engine: Chrome Engine
Team Size: Solo Project
Description
This is a single player for Dying Light called "Vicissitude." The player plays Kyle Krane. Krane is dropped off behind enemy lines late at night on a thunderous, rainy day, deep on the edge of rocky terrain where Rai's men have taken over abandoned construction sites right off a beach. They have set up three communications towers across the area. They have been using the beach as a vital supply route to distribute weapons, ammunition, and Antizin to their gang across Haran. Jade Aldemir from The Towers has recruited you to drop you off behind enemy lines to give them a most underserving welcome to the area. You are to turn off all com towers and disrupt their supply routes.
The player is encouraged to use stealth tactics throughout the level to overcome or evade a large gang of Rai's men. This mission can potentially break the back of Rai's military structure.
The base perimeters I was given is a level that has 10-15 mins of gameplay if the player follows the critical path. I spent 198 hours over 16 weeks working on this project from conception to launch.
Level Design Goals
Stealth Opprotunites
Encourage the player to use stealth opportunities.
Stealth Abilites
Encourage the player to use stealth abilities.
Multi-Path Level
Multi-path level. (Two Entry Points Types (Doors and Ventilation Shafts) Multiple Entry Points)
Overview Map
Multi-Path Level
Main Points
Point One
Point Two
Point Three
Throughout the level, the player would see two ventilation shaft entry points in each interior space, open doors entry points, and unlocked doors on the backside of the building. These entry points encouraged the player to survey their surroundings and use their stealth tactics and stealth abilities to devise a plan on how they wanted to encounter combat scenarios or sneak past enemies undetected. I used halogen lamps for construction to direct the player's eyes to each entry point and placed decals next to the ventilation shafts. Furthermore, I placed ramps that would lead the player directly towards the ventilation shaft, so they were highly encouraged to enter the interior space from above the enemies. The different entry points allowed the player to encounter enemies or sneak past them.
Stealth Opportunities
Main Points
Point One
Point Two
Point Three
I wanted to create a level where the player was encouraged to use stealth tactics to silently kill enemies or sneak pass them on the critical path. I encouraged this type of gameplay by creating custom enemies that were more difficult if the player encountered them in combat head-on.
I created patrol paths for all enemies that protected entry points into the two interior spaces the player must traverse to complete the critical path. So, for example, if the player used the ventilation entry point to traverse over the enemies, they were given opportunities to leave the ventilation shaft early and sneak up behind enemies to kill them silently.
I planned out all combat encounters, so the player had different approaches to killing enemies by either combat or stealth. Players were given multiple options for approaching the encounter to sneak past enemies but not bypass gameplay altogether. I did this by placing enemies on the outside that protected the interior space. Once they entered the interior space through two different types (Ventilation Shafts and Doors), they still needed to get to the red staircases to reach the next floor. Once the players achieve this, I would reward them with various loot like med kits and powerful weapons. I also placed generators inside interior spaces connected to water puddles that the player could use to kill enemies without engaging them head-on. By reducing the player's ranged weapons, they were encouraged to analyze their environment to see how they could use it against the enemy.
Encourage Stealth Abilities
Main Points
Point One
Point Two
Point Three
Throughout the level, the player would get radio calls from Jade (The Quest Giver) reminding Krane of his combat training. In these radio calls, she would tell Krane to use his Silent Death Ability which allows Krane to sneak behind enemies and snap their neck for an instant kill, and the Survivor Sense Ability, which allows Krane to see enemies patrol from behind solid objects like walls, rocks, and terrain. These radio calls, which are given to the player on the first two combat encounters, would remind them of their abilities that allowed them to use stealth successfully.
I give the player an exceptionally easy enemy to kill in the first combat encounter. This enemy had no patrol path and was facing in the opposite direction. This allowed the player to execute their silent stealth ability efficiently and in their own time. Giving the player this opportunity early on encouraged them to use their stealth abilities throughout the rest of the level. In the following combat encounters, the player would encounter two enemies on a dirt road with a narrow turn to the left. Jade would encourage them to use their Survivor Sense ability, and if they used it, they would be able to see the enemies patrol from around the sharp corner to the left. This also encourages the player to use the Survivor Sense ability throughout the level. I also added rebar into the windows, which gave the player the impression that enemies were using the rebar to reinforce their building so enemies could not break or sneak inside. However, this gave the player many opportunities to see enemies inside the building patrol and the red staircase they needed to reach to complete the critical path.
Conveyance Techniques
Critical Path
POSTMORTEM
What went well?
Stealth Pivots (Improving Stealth Gameplay Incrementally)
Throughout development, I had to pivot many times to encourage the type of gameplay I wanted. Working with my stakeholder, we created a level that constantly pivoted closer to good stealth gameplay. For instance, my stakeholder suggested that I remove all ranged weapons to get the player to engage with the enemies more directly or sneak past patrolling enemies. At first, this scared me, but she encouraged me to do internal playtests independently to see what felt consistent and suitable for a stealth level. After taking her advice, the gameplay was significantly better. This pivot suggested by my stakeholder made all the difference in the world. They were simple and easy to implement. She also suggested many other things, like removing the NPC and having them call in from a radio. Working closely with my stakeholder, I saw how making small pivots can make a big difference. Going forward, I want to continue pivoting early in small ways rather than scraping the original idea of the level.
Gating and Conveyance
One of my goals for the level was to allow the player to see all three com towers at the beginning of the level. Then after jumping down into the first water pond, they were gated into an area where only one com tower was in focus. I did this by gating the enemy with big dives into water ponds. This allowed for more control of each gameplay space and consistent pacing. This method needed some help at the beginning. For instance, the elevation changes had been too dramatic, and the player had to pull their head way down to see the pond below. However, this was easy to remedy through playtesting and updating the terrain. Next time I make a level with elevation changes which is bound to happen in the industry, I can take all the knowledge I acquired from this level and quickly make a level with lots of elevation changes and landmarks that make for smother sightlines, landmarks, and signposts before production.
Scope Was Focused – Allowed for Pivots
I knew I wanted to do a level emphasizing stealth gameplay from the beginning. At the beginning of pre-production for “Vicissitude” I had all the right pieces for the level conceptually, and they were easy to implement early on. It quickly improved and became a better stealth experience since I took stakeholder feedback by choosing just one enemy type (melee enemies) and getting rid of all ranged weapons.
However, being in scope regarding gameplay space size, the number of enemies, and quest goals gave me time to focus on improving gameplay throughout production. I could address the issues my playtests, and stakeholders brought up and quickly work toward a solution. Reducing the complexity of the gameplay size during pre-production was worth it. Making the design simple does not mean I am an inadequate level designer. Quite the opposite because if you can do a lot with a little, the players will understand the gameplay faster, and leads will want to build off something I created.
What Went Wrong?
Making the AI Seem Real – Time Sinks
Working on making the AI seem intelligent was a huge time-sink. Though, in the end, it did work it took; it just took a lot of time and effort to make them seem natural and engaging. Giving them patrol paths helped the most to make them seem natural and engaging. The problem with this was that there was no documentation on effectively creating a simple patrol path. There was no YouTube video on this subject from the developer or mod community. Even the discord channel and dying light wiki moderators had no idea how to accomplish this. Eventually, we found a way to make it using the Chrome engine quest system, but it would respawn the enemy and delete the old one. Having enemies disappear and appear was not an option. I figured out with a peer how to make patrol paths without using the quest system. Having effective patrol paths made a massive improvement in the level.
After discovering how to make patrol paths, I needed to learn how the enemies would see the player and how they react in different states. There is no documentation on this at all. The moderators would be helpful and told me how they influenced enemy AI. However, most of the time, it did not work, and I would be sent through a rabbit hole of different possibilities only to end back where I started. I also found a straightforward way: to use invisible colliders (invisible walls) to prevent enemies from seeing the player. This would not work on a level with ranged weapons. For example, if the player had a ranged weapon and they wanted to use it and shoot enemies through windows, it would hit that invisible collider. Gratefully the decision was already made beforehand to remove ranged weapons, and adding a simple collider over rebared windows created a one-way window where the player could see enemies but not engage with them. Next time when working with AI I will understand the limits early on by creating action blocks. This will allow me to understand how the enemy AI behaves in specific combat scenarios early on and give me chances to pivot towards gameplay that would be desired in a stealth level.
Patrol Path Conveyance
After patrol paths were added, I did my best to tell the players where their starting and ending points were. Unfortunately, this proved difficult and would require much more playtesting to ensure that most players understood when they had their "chance" to sneak past an enemy or take them down from behind. From the beginning, I always knew I wanted to have patrol paths in my level. However, I never asked myself how I would tell the player where their patrol paths start and end. If done well, this is a big step to improve gameplay and give players options to move around in the gameplay space where they feel more informed.
I used couches and warm fires to convey to the player each patrol path's start and end points. This was added late in the level, right before the last milestone. It seems to have worked well; however, it needed way more playtesting to ensure that players knew where each enemy's patrol path started and ended and how long they would stand there. It is a great beginning; however, looking at other game examples early on, on how they conveyed patrol paths would have significantly informed my design. Going forward, I will research how to convey enemy AI behavior through conveyance in the gameplay space.
Dealing with the Terrain Height / Angles
One of my biggest problems early on was dealing with the terrain. Chrome engine has a good terrain tool. I wanted to use it for my level because I wanted to have a critical path that was more organic, like a winding road or hill. However, my elevation changes in the level stretched the texture and warped it so much that it distracted players. Replacing it with meshes worked, but it was very time-consuming, and it could easily lead to the level being soft-locked if the player were to find a hole or entryway to exit the level's gameplay space. I eventually had to use a combination of all three, the terrain to ensure the meshes were added at the right height, the meshes to cover up the terrain, and the bushes to blend and hide any holes left over from the meshes.
Going forward, when doing my aesthetics research, I can find the right type of meshes and art style early on and prevent this from happening again. Research into what kind of meshes your game has and what type of environments have already been built can save so much time later in the development process. This is the same as working with artists.
What would I learned?
Always Turn Mutli in Two
My biggest lesson was that whenever you have an element in your level where you choose to have three or more element types, make it two. For example, the multipath level has multiple paths; however, choosing just two types of entry points allowed the level to be more focused. Initially, I had the player enter the interior spaces directly through open doorways and doors, ventilation shafts, and from underneath the ground. Focusing on just ventilation shafts and doorways made the gameplay experience more polished and gave the player two options to weigh one against the other in their head. Giving them more than two ways was too overwhelming. Going forward I will look at my design concepts holistically and ask myself and my peers how I can get a similar gameplay experience with fewer elements. Leaning into fewer element types but more experimentation early will speed up getting more polished gameplay early on.
Element Type Examples
Enemies (Melee or Ranged Enemies)
Entry Points (Through Ventilation Shafts or Doorways)
Abilities to Teach (Silent Death and Survivor Sense are examples)
Gameplay (Sneak Past enemies or kill them)
Make Strike Teams with Peers
As a designer, I must see my peers as potential strike team members. For example, Balpreet (a peer) and I learned how to make patrol paths without any code in the Chrome engine. I asked for help and rubber-ducking different scenarios I have tried. We went back and forth, and then Balpreet found out how. Balpreet and I then learned more about patrol paths and updated our Slack channel quickly so our peers could use it in their levels. Going forward, I will seek out peers that are talented with code and that have similar goals in their levels so that we can work together early in the development and design process to understand the limitations of the level editor we are all using but also how we can use what we must improve gameplay.
Taking Things Away from the Player Can Improve Gameplay
I was astounded how taking things away from the player helped improve the stealth gameplay experience. The scope is essential, and I did a good job. However, I learned I must always ask myself, is this necessary? All levels do not have to have both ranged and melee enemies. The same goes for weapons. What matters is teaching the player about what they can and cannot do and then challenging them in a way that is rewarding and memorable for them.
Taking away all the ranged weapons did not reduce gameplay opportunities but increased them. When I removed the ranged weapons, I added the one-way direction windows that allowed the player to survey the interior spaces without going inside. Simple but effective, and I would have never explored this as a possibility if I had ranged weapons.