KJ: Unchained

KJ's Great Escape

"Get me out and get your share!"

Our take on a classic prison-break game started with a broader concept: how would it feel to survey a prison on the scale of a toybox? Originally, the intention was for the player to serve as a guard in the prison, frantically blocking exits and redirecting guards. However, once we flipped the script, we found players enjoyed helping the prisoners escape more. Similarly, this let us flesh out the character of the prisoner, and his relationship with the player (and other prison guards). The game then became about stealth and timing, with the player serving as the "main in the chair" for KJ's escape.

The security system to the prison is presented to the player as a cylinder around them, with doors, alarms, and bridge cranks. Whenever KJ has an opening, he'll run through it (and potentially directly into a guard, if the player isn't careful!). The guards will pursue KJ, and break down doors to get to him. The player has to be quick and tactical to get KJ from his cell to the prison exit.

Early on, it became apparent iteration and playtesting would be essential to creating a great level. Due to the time constraints, we knew we wanted only one level for the player to navigate, with each gameplay element being introduced gradually as the player traverses.

Initial design of the first part of the level

Tool for adjusting walls and floor.

As a result, we knew we needed to create a flexible system for rapidly changing the level design. I developed a spline-based level editor, which allowed walls of the prison to be defined. An inner and outer spline wall control the shape of the prison, with a floor automatically generated between them. The player can then define holes in the floor for water, where bridges can be placed to cross them. This automatically updates the navmesh KJ and the guards use as changes are made. We could then iterate the level in minutes, and given a larger scope, could potentially edit levels from within the headset. This helped us reach an ideal difficulty balance (where players would die 1-2 times, and learn from each death).

The Secret Sauce

In the final iteration of the game, the alarms recieved a redesign to help confused players understand where the alarms would lead guards. A checkpoint system was added to help player accessibility. One more major change was introduced.

Near the end of the level, there is a simple bridge crank puzzle that takes most players at least one try to solve. During this time, the nearby guard is attempting to smash the door between KJ and the bridge, while the player frantically searches for a solution. If the player died at the very climax, it would be a frustrating experience. To prevent this, we made the last door have infinite HP, until the exact moment the player solves the puzzle, at which point it can only take 1 more hit. The result? Right as the player finishes lowering the bridge, the guard smashes through the door, chasing KJ to no avail. This kept stakes high, without risk of frustrating the player.

This project was created with Unity using the Oculus-Unity Integration Plugin, targeting the Meta Quest 2.
I handled gameplay programming, AI, environment art, level design and internal tool development.
Production, audio, music, and level design was handled by Sy Suo.
Additional programming and level design was done by Chao-Yang Tseng .
2D illustrations and character animation by Laura Yang.
Character design, look dev, and environment art by Liyi Tang .