top of page

Project Escape (2023)

About the Project

Introduction

The objective of this project was to create a first-person shooter action-adventure experience in a whitebox stage. The project's primary focus was to showcase my design workflow, thought process, level design skills, and problem-solving abilities when encountering challenges.

Project Details

  • Developed under 4 weeks (4h per day)

  • Engine: Unreal Engine 5

  • Level Design

  • Game Design

  • Visual Scripting (All scripting was done by me)

  • Whitebox

  • Epic Marketplace Assets used

    • Blocking Starter Pack

Gameplay Video with Design Commentary

Refresh the page if the video does not load.
Or enter this adress: https://www.youtube.com/watch?v=6G_YaTP0aHo

Gameplay Video without Commentary

Refresh the page if the video does not load.
Or enter this adress: https://www.youtube.com/watch?v=wzzpyi0u9nk

Writing the Level Design Document

Writing a LDD and the reason behind why I write one

As with any new project, I started my process by writing a Level Design document. I think it is crucial to articulate the goals, establish the worldbuilding elements, define the game mechanics, outline the gameplay beats, and structure the level sequence in the early stages of development. By using this approach allows for a comprehensive understanding of the vision for the level before committing to building it.
 

In my LDD, I also included two additional sections to document my ideas and questions that arose during the project's development.

In the "Ideas" section, I documented potential exciting gameplay beats and mechanics that could be incorporated into the project.

In the "Questions" section, I aimed to address any issues that emerged during development and brainstorm possible solutions.

GOALS - What I'm trying to do and why

  • Make a First Person Shooter level in UE5

  • Make something that shows my textbook Level Design skills

  • Show things like 3D layout design, gameplay ideas and implementation, light scripting, light narrative and puzzles etc.

  • The level must be playable and is atleast in a whitebox stage

  • Kind of short level, like 3 to 5 minutes​

THEME: Escape the Raiders​

WORLDBUILDING - What kind of world the level plays out in

  • The world has a post-apocalyptic vibe.

  • Individuals are left to fend for themselves in this harsh environment.

  • Raiders are widespread and frequently engage in heinous acts.

  • The player is a member of a gated community of survivors.

    • The player, along with a few companions, is out on a mission to gather supplies for the community.

    • They are suddenly ambushed by a group of raiders and taken captive.

    • The player regains consciousness in a locked room, separated from their companions.

GAME MECHANICS - What I plan to scipt and get to play around with

  • AI raiders (my own scripted AI)

  • AI survivors (rescue, fights alongside the player)

  • Pistol (for the player to pickup and use)

  • Pickup objects and move them around (simple movement on the axis, maybe implement rotate functionallity for easy use)

  • Open and locked doors (both player and AI should be able to move through doors)

  • "Keys" for locked doors (could be anything visually but it's primary function is to serve as a key)

  • Explosive Barrels (things that go boom are fun)

  • Escape vehicle​

    • Train?

GAMEPLAY BEATS - What the player experiences in the level

  • Puzzles involving movable objects

  • "Sneakiness" mechanics when nearby raiders are present (since full-fledged stealth may be too complex)

  • The player acquires a pistol to fight the raiders

  • Have a big fight outside when the player is trying to escape the building

  • A race against time to catch the train

SEQUENCE PROCESS - Initial Plan -> Iterations -> Final Version

The power of a Level Sequence!

From past projects and experiences, I've learned that simply blocking out a level without writing a level sequence can create a disconnect from the intended vision. Documenting the player's experience and envisioning the level flow provides a clearer understanding of the level's look and feel. Mapping the player's journey, encounter locations, and gameplay beats ensures alignment with the intended vision and maintains a cohesive experience.

Designing a level on paper offers the advantage of rapid iterations and problem-solving. With the ability to sketch out different layouts, experiment with variations, and make quick adjustments, I can efficiently address any emerging issues and refine the level design. This iterative process helps to identify potential pacing problems, ensure a logical progression of challenges, and maintain a sense of engagement for the player.

Breaking down beats and designing on paper results in a more coherent and immersive player experience. Visualizing level flow, addressing issues early on, and maintaining a structured development process ensure alignment with the initial vision and deliver an engaging gameplay experience.

This is the power of writing Level Sequences!

Blockout Process

Building the Level

Level Overview

In this level the player is taken captive and must escape by solving puzzles, utilizing movable objects, engaging in shootouts with enemies, and ultimately saving their ally.

 

During the level design process, I conducted several playtests with other classmates to ensure that the level's design effectively conveyed the intended experience to the player. Based on player feedback, I made several iterations to certain areas of the level due to design miscommunication or player confusion. Ultimately, these iterations resulted in a well-designed and enjoyable level that met my goals for the project.

Compound Overview

In this section of the level, the player breaks free from captivity, arms themselves, engages in an intense shootout with enemies, and escapes through locked compound gates to progress further into the level.

 

I spent a significant amount of time iterating on the design of the compound's different areas, particularly the outdoor combat arena in order to improve overall player experience. I'll cover some of the specific design techniques I used in the following section.

Train Station Overview

In this section of the level, the player encounters another puzzle to get through a locked door, followed by a fight on the train platform or on top of the train itself depending on what path they chose. The level ends with the player boarding the train.

I particularly enjoyed designing the area where the player must figure out how to get past the locked gate. One of the challenges I faced during the design process was how I would guide the player into experiencing everything like I envisioned.

Design Techniques

Establishing Shot

​These are some of the important design techniques that I used to guide the player:
 

  • Setting up goals
    I established long-term, mid-term, and short-term goals for the player in the form of: reach the train, escape the compound and find a way out of the locked room. This helped to give the player a sense of purpose and direction, and made it clear what they needed to do next.
     

  • Foreshadowing
    I used foreshadowing to hint future events and obstacles, which created anticipation and intrigue for the player. Some examples are the train arriving at the station, the bridge as a focal point and the combat arena with all the enemies.
     

  • Call to Action
    When seeing their ally being taken away by enemies the player feels the urge to help them.
     

  • Focal Points
    I used movement of the train and the escort to guide the player's attention towards the important elements of the scene, while minimizing distractions from other unimportant details.
     

  • Landmark
    The bridge serves as a recognizable landmark, aiding the player in building a mental map and navigating the space.
     

  • Framing
    The side scene is viewed through a window, directing the player's attention towards the compound and train station ahead.
     

  • Layers
    Multiple building layers add depth to the scene and make it more visually appealing.

Showing the problem before the solution

By adding a fence as leading lines, the player's attention is directed towards the door and also forces them to first discover that the door is locked. Later, upon investigating, they see a cable connected to the fence that leads them to one of the neighboring buildings where they will find the solution to the problem.

Bait & Switch

After the intense combat encounter, the player is likely to be low on health and resources. To draw their attention towards the next objective, I strategically placed health and ammunition pickups near a side scene showing the player's ally boarding the train. This serves as a reminder to the player of their objective to rescue their ally. In a full game experience, I would make this side scene more visually striking to ensure the player does not miss it. As the player turns around, they are faced with a locked door, prompting them to figure out how to proceed.

Breadcrumbs

I strategically placed contrasting books on the floor to guide the player towards their goal. The books acted as breadcrumbs leading the player to the large hole in the middle of the room where the guard slept, and where the player’s gun was located. By further following the trail of books, the player could discover another way to get to their equipment without solving the puzzle on how to get to the other side of the large hole.

Discoverability

Players can discover alternative paths by exploring the game's surroundings and they can either reward the player with valuable loot or provide them with a new perspective on the upcoming area. This adds depth and immersion to the game, overall increases player engagement and agency.

Visual Scripting

Grab, move & rotate objects

For the starting area when the player was stuck in the starting room, I wanted the player to get used to the games "object moving mechanic".

Basically how the script works is that I cast a line trace from the camera and if I hit something I tell the PhysicsHandle to grab that component and set a bool that I'm grabbing a object.
Every tick I check if the player is grabbing something and if they are, I update the "SetTargetLocation" for the PhysicsHandle component.

I also added the functionality to rotate the object so players could easier place object like they wanted.

PRESS [Fullscreen] to view the whole script.
HOLD [Right Mouse Button] to navigate around.

PRESS [Fullscreen] to view the whole script.
HOLD [Right Mouse Button] to navigate around.

Cover System for AI

I wanted the AI to try and run for cover the moment they entered combat. So I quickly scripted a custom event that was triggered when the AI was alerted by the player.

The script checks if there are any "bp_cover_loccations" (it's just a world reference so I could place these "cover locations" wherever I wanted). And then tells the AI to walk to that location or if it's occupied find another cover_location and walk there.

AI Enemy Logic

All of the logic for the enemy I scriped. Used PawnSensing for sight and AIPerception for hearing. AI can be set to guarding or patrolling and when their health is fully depleted they can spawn "reinforcements" that can be set by adding bp_spawners to the spawn trigger array.

There is a lot of code here so I could describe how everything works forever so please take a look at the scripts yourself :D.

PRESS [Fullscreen] to view the whole script.
HOLD [Right Mouse Button] to navigate around.

PRESS [Fullscreen] to view the whole script.
HOLD [Right Mouse Button] to navigate around.

Double Door Logic

Of course you need a door the player can open in the game! Also made it possible for AI to open doors by having the open/close door functionality separate with a custom event that can be called.

Also added that the door might be locked or the player need a "item" (like a key or keycard) to open the door.

Paint over’s

Hammering out uncertain areas

Paintover Bridge

Initially, I had planned for a bait and switch scenario in the bridge section, where the player would see loot on a box, and upon turning around, they would come across a locked door that they would need to get past. To solve this, the player would then need to explore the area and find a couple of movable boxes they could use to get over the fence.

I increased the height of the bridge fence and added a broken section that allowed the player to take a new path. This improved the chances of the player realizing they could jump the fence to proceed, enhancing player agency and affordance.

Paintover combat Arena

After conducting playtests and ensuring that the combat distances and scale of the combat arena were satisfactory. I refined the arena and planned for the enemies to start with their backs to the player, giving the player the choice of when and from where to initiate combat, thereby enhancing player agency.

This design approach provides players with options to choose from and adapt their playstyle according to their preferences. They can decide to engage in a more static, ranged combat approach or opt for a more dynamic, close combat approach. Moreover, this also adds replayability to the game, as players can experiment with different approaches and strategies in subsequent playthroughs

Paintover Control room

Initially, the player discovers and follows a cable into the building, opening the outside door the player would see two enemies running for cover inside a room as they heard the commotion outside. By showing the enemies before the engagement allows the player to plan their actions and avoid being caught off guard in a monster closet scenario.

By adding a window to the control room, the player can see the blocked door separating the rooms. After disabling the locking mechanism, the player can remove the plank blocking the door and backtrack through a different path.

These implementations improves player awareness and choice by showing enemies before engagement and providing a different path to backtrack through.

Reflections

This project has been a whirlwind of excitement and learning experiences that have flown by in what feels like the blink of an eye. I am thrilled to say that I was able to achieve most of my set goals for the project, which has left me feeling extremely satisfied with my efforts. Despite this, I do wish I had been able to implement a light narrative into the level to enhance the onboarding experience and elevate the overall atmosphere.

I would have liked to spend more time refining the combat arenas, particularly the outside area and train platform. With more iteration, I could have made them more engaging and fitting for the overall experience, bringing the level to new heights.

In conclusion, I am proud to present this portfolio as a reflection of my skills and experiences as a level designer. However, I am always eager to continue growing and developing in this field, so I welcome any feedback or opportunities for growth.

 

Thank you for reviewing my work. Please feel free to browse my other pieces, and if you would like to get in touch, you can find my contact information on the "Contact" page.

bottom of page