Trailer by Viktor Kamburov
My Role(s) // Systems & Tech Design Genre // First-Person Survival Horror Engine // Unreal Engine 4 Platform // PC (Itch.io) Team Size // ~ 12 Duration on Project // 8 Weeks Awards & Accolades // IGAD Awards 2021
|
OverviewJoining this project during pre-production, my core focus was creating systems and tools to improve content development pipelines across the project. During my 8 weeks, I made the following key contributions:
Vertical Divider
|
Interaction System
Since the intent was to make an immersive horror game, level designers were spending a substantial amount of time scripting small interactions inside the bunker. This was also causing conflicts as the methods for interaction weren't consistent across the game.
To resolve that, I:
|
Interactables Hierarchy - Object Types
|
Interactables Pipeline Document - Example from section on Doors
|
For instance, doors were a big time sink, as the hub and spoke level design structure required them to be in a variety of states for progression gating. We also needed visually distinct door actors in different sections of the bunker.
Allowing level designers to set up door types from hatches to vault gates by adjusting a few parameters sped up the level design process substantially. Doors could further be altered per instance in the level, either made to be blocked, broken or malfunctioning. Other shared interactable functionality helped establish varied progression blocks for the game through keys and switches. |
A wide range of interactables were blueprinted to cover all the ingredients level designers needed to get the bunker sections fully playable. Detailed pipeline documents were provided to explain what was possible with the actors made and to guide others in the team on how to create new ones.
Scripted Events
Oftentimes, interactions needed to take place in specific sequences or as a result of something else happening in the game. Scripting these events to create moments of horror or a series of actions for a puzzle was taking up a substantial amount of time. These scripted scenarios also needed to take place during gameplay, only rarely requiring the system to take player agency away.
Scripted Events - Target Focus with Customizable Dynamic Camera
|
To make the process more efficient, I began looking into what was usually required from these events. After finding some commonalities, I created tools to simplify the following:
|
The tools were set up by expanding on the interactables functionality and creating a custom event trigger actor:
- The new triggers could be executed by other interactables and actors in the game world, as well as through bindings and overlaps.
- A level designer only had to tweak parameters and check booleans when placing a trigger into the level to create a scripted event.
- Designed with scalability in mind, I made sure it was easy to expand on its functionality and support new event types or behaviours that might get requested as the project would move on towards full production.
Scripted Event - Opening the Vault Door
|
Vault Door Scripted Event - Switch Settings
|
Vault Door Scripted Event - Event Settings
|
The vault door example demonstrates how the interaction system could be used together with events to conditionally trigger a short sequence, by only adjusting a few exposed variables for those actors. Additionally, the tools also helped greatly in iterating and refining these events, as it only required tweaking a variable's value right in the viewport while editing the level.
Wall Hugger - Grabcam - Animation by Viktor Kamburov
|
Main Enemy - Deathcam - Animation by Viktor Kamburov
|
The tools were also used in part for enemy attacks and interaction animations. I worked together with our animators to incorporate the camera behaviours made for the event system and repurposed them to help with automating the camera motion during these sequences. This included player deaths, enemy interruptions and other interactions that the player could have with the environment. This made it similarly easier for them to tweak the camera in their animations until they were satisfied with the results.