The impossible heist

 
 
 
 

Heist is an split-screen co-op puzzle game where you and a friend must plan and perform a heist on a tight 180 second time loop.”

 

quick Facts

  • Development Time: 8 weeks

  • Team Size 5

  • Project Type: Student

  • Engine: Unity

  • Personal Contribution: Game Design and Code

Made together with

 
 
 

Preface

As with the nature of most student projects, 8 weeks is far from enough to do a fully complete game, however the level we did create and the design behind serve as a proof of concept, which i want to use it to create a design framework that could be used to complete a hypothetical full game.

 
 
 
 

Game Structure

In Heist two players must cooperate to complete a heist, which is achieved by completing a series of puzzles. These puzzles are structured like most Point and Click puzzle games where the logic and completion requirements are rooted in the world narrative and story as opposed to systemic interaction. So in essence they all boil down to bring “Key A” to “Door A” where the player has to realize this correlation by thinking in the worlds narrative space.

The added twist of Heist is that the entire level is set in a tight 180 seconds time-loop. This adds an extra requirement to most puzzles as they now also require the player to not only figure out which “Key” to bring to witch “Door” but also try and understand “When”.

 
 

Time loop and heist media

In Heist we really wanted to capture the feeling of surveying, planning and then executing the perfect heist where everything is timed down to the smallest detail, as often portrayed in heist media. From there the idea of placing the game in a time loop naturally facilitated a lot of these desires.

At the early stages of each level the players could spent their time loops exploring the level and discovering the various puzzle pieces and obstacles around them. The nature of the loops at this stage are quite forgiving as any fail states would simply restart the time loop.

Once the players have acquired enough information they could then form a plan and try and execute it. Here the time loop becomes a real constraint, forcing the players to try and optimize and sequence all their actions down to the smallest detail - just like the movies!

Whenever a plan was successfully performed the players would be rewarded with additional puzzle pieces, important information or beating the level all together.

 
 

the right kind of difficulty

With the game having such a large emphasis on hatching the perfect plan, we didn’t want the players to spend a significant amount of time trying to figure out what to do. As such, all of our puzzle solutions where designed to be fairly straight forward and clearly communicated to the players.

Example: “The guard blocking the way is clearly thirsty and will drink water from the wine cart once it passes by, and there are sleeping pills to be found in the toilet. “

This doesn’t mean there are no challenges in Heist, the difficulty should instead come from sequencing , timing and coordination.

  • We want players to figure out which Sequence of things they have to do.

  • We want players to think about the Timing of when different things can be done.

  • We want players to Coordinate their efforts between them.

 
 
 

Actual Objective Sequence found in the Heist level.

Complexity control and puzzle rewards

As mentioned earlier each puzzle will either result in the players receiving some Information, an Item or complete the level outright. Each of these can be used to modulate the objective flow and complexity.

Item rewards will almost always be keys needed for another puzzle in the level. Since all progress is lost on each loop reset, the players will have to find a way to obtain these rewards and use them in the same loop. This allows us to design puzzles where the time loop is very lenient at first, but as the number of steps increases, the loop will have to be optimized more and more. This creates a very natural difficulty curve for each level. It can even allow us to design macro puzzles where the players know how to get both of the items needed for a singe puzzle, but can’t figure out how to do both in the same loop.

Obviously having large nested puzzles like this can easily get out of hand and become very frustrating, luckily we can mediate this by keeping the time loop short and through the use of information rewards.

Information rewards are great because they give the player something that doesn’t reset on each time loop, knowledge. By creating puzzle gates that require player knowledge instead of an item, like a key-code to a padlock, we can create natural check points that enables the players to tackle the next puzzle without having to complete the prior ones each loop.

By using both rewards types thoughtfully we can create levels that slowly ramp in complexity until the next information checkpoint is reached. Then resetting the complexity ahead of the next ramping challenge, which hopefully result in an exciting, complex and surprisingly manageable final time loop at the end of each level.

 
 
 

Player coordination and asymmetry

In order to encourage player cooperation and coordination several of the games puzzles required both players to actively participate in order to complete. Like asking both players to obtain a french dictionary and then eaves drop each end of a french phone conversation.

We also introduced asymmetry between the players by giving each character unique abilities as opposed to the other. One player, the Charmer can move past guards without being caught while the Lock-pick can pick locks and gain access to locked away areas. This again encourage communication between the players, as one player might stumble into an obstacle only the other one could solve. It also gave us a natural way to split up the players whenever needed.

 
 
 
HeistCropped_1.png

Extrapolating forward

With the framework and design principles covered so far we are hypothetically well poised to a create a fun and cohesive full game.

We know we want to create a 2-Player Co-Op Heist game that captures the essence of heist media by setting each level in a tight time loop. In the gameplay loop the players are going to Survey, Plan and then Execute a heist like plan to progress. Each level will consist of a series of puzzles which consist of point and click narrative logic that have simple, straightforward and clearly communicated solutions. However the players must master the time loop through skillful Sequencing, Timing and Coordination. We can modulate the Intensity and Complexity of each subsequent plan through the use of Physical and Information rewards at the end of each puzzle. Leading to an naturally increasing complexity curve with well paced checkpoints. We are going to encourage interplay between the players by designing each puzzle to require both players to complete and by creating asymmetry in the character kits we can encourage player communication and collaboration.

Obviously every great game need much more than just solid design principles. You need a compelling narrative and world building, exciting art, code to run it all, play-testing, iteration galore, a buck load of polish, and a haphazard live service model with excessive FOMO including arbitrary battle-passes. Actually, maybe scratch the last part.

 

 
 

Code contributions

  • Camera and Room System

  • Puzzle Framework

  • Character Movement

  • Interactive Objects and Doors

  • Main Menu

  • Loose Condition and Time Loop