A non linear level made in Unreal Engine 4 and inspired by Prey from Arkane studios



Take the role of a mechanic, who is tasked to repair damages after an accident took place. The objectives assigned to the player can be solved in any order and some in more ways than one.


  • Design objectives with multiple soulutions

  • Learn more about how to guide the player in an open space with emphasis on exploration. 

  • Create a space with a believable layout.


  • 7 weeks half time (4h/day)

  • First person perspective 

  • Visual scripting

  • Made in Unreal Engine 4 

  • Used asset pack Blocking Starter Pack by Xavier Loux

  • Some assets made in Maya



The main area
The main area

press to zoom
Fuel chamber
Fuel chamber

press to zoom
Changing room
Changing room

press to zoom
The main area
The main area

press to zoom

Planning and Pre-production

As the project started I made decisions on the gameplay features I wanted to script and made estimations about how much time it would take. I then made the player objectives into flowcharts to keep track over the ones that overlapped. These were very helpful during the scripting of the systems.




Early paper design


I had created a functioning replica of Prey’s gloo cannon as well as a climbing system in a previous project, but they needed some serious refactorization.

Gloo cannon first iteration

Gloo cannon second iteration

I began with the gloo cannon getting the feel of it as close to the original as possible. The climbing system received some changes, most notably that the player can jump off a platform and the system will automatically detect a ledge if the player holds down the spacebar. I made a test level where I let other designers test out the climbing system and gloo gun together, taking all the feedback I could get and tweaked it until I found it adequate.

Climbing system demonstration

How the flames get affected by valves and gloo clustes

Interaction system demonstration

Kinesis device demonstration

The interaction system uses a line trace to check if the actor that the player is looking at is of a certain type,  determined by the actors tag or implemented interface. This then sets an enum that determines what kind of action the player can make.

From blockout to whitebox

As I started blocking out the level my first focus was getting the dimensions of the space right, starting with the main area and working my way out. 


Entrance progress


Circulation control progress


Main area progress


Main area progress

The main area got the most attention in the early stages. I wanted it to stand out and be instantly recognizable to the player, with the large tank in the center intended as a landmark for the area. The remaining areas also got their defining features and I color coded them as well as using signs outside their entries. Once all areas where blocked I started to incorporate the maintenance shafts for the hidden and alternative paths, connecting the sections.

Then I added in the gameplay related actors and scripts where placement was key in order to introduce the player to the mechanics.

Introducing the player to the fuseboxes


Finding the hammer


Hints for the gloo cannons functions


Introducing the fireleaks

Multiple solutions

One of the goals with the level was multiple solutions to any given objective. This was in hindsight to ambitious for the scope, but to some of the objectives this does apply. 

Enter circulation control:

By using the keycard found in the fuel chamber

By using the gloo cannon to enter via maintenance shaft

Putting out fireleaks:

By using the gloo cannon

By using the kinesis device and valve


The reception it got from playtesters was mixed to say the least and the testers could be divided into two groups.

  • The first group felt overwhelmed as soon as they entered the level as well as a lack of direction resulting in choice paralysis.

  • The second group approached the level differently. They investigated everything and solved the objectives without any problems and in different ways. They found it to be intricate and liked the feeling of conquering the main section as they unlocked all the doors.

Even though the results were divided the feedback I received was very valuable and the changes made the experience better.

The explosion event

There is however one event that I could not communicate to the player - the explosion event. If the player opens the door to the fuel chamber before completing objective one and three an explosion occurs that instantly kills the player and resets the level.


Warning signs were added in the fuel chamber and by the door, where the button is, but they were completely ignored. I also added a two step verification where the player had to perform two interactions with the button. The interaction text changes from “E to override door (DANGER)” to “Are you sure?”. This was also ignored. If I’d had more time I would have tried adding an announcer voice that warned the player of explosive gas or added a text in the HUD “Explosive gas detected”.

Closing thoughts & possible improvements

Working on this project has been very rewarding but also very challenging. One of the goals with the level was multiple solutions to any given objective. This was in hindsight too ambitious for the scope, but fun to work towards. However, If I had a couple of more weeks to work I would:

  • Re-design some of the objectives and the layout to incorporate the climbing capability of the gloo cannon more as well as the kinesis module. I think they are underutilized in the current version.

  • Add sound to give the player more feedback.

  • Experiment with fall damage. The current iteration has none and the penalty for falling down is to climb back up. By adding fall damage there would be a risk to climb in high places making it in turn more rewarding once the player succeeds.

The event that only one playtester noticed. I belive audio cues would catch the players attention, solving this issue.

Full playthrough

This is one way to complete the level