HeavenFall: Broken Balance
Roles + Responsibilities
Role:
-
Programmer
-
Level Designer
​
Responsibilities:
-
Design and implement core game mechanics that are meaningful and enjoyable.
-
Design and create the entire level layout of the game
- Set dressing the entire game environment.
- Create the opening and ending cinematic that establish tone of the game while introduce story background
- Implement a fully functional checkpoint
​
High Concept
HeavenFall: Broken Balance is a third-person adventure puzzle game with no combat, focused on stealth and environmental interaction. Players must rely on observation, timing, and the intelligent use of the Sky Lantern, a sacred tool that allows them to manipulate the environment to avoid danger and progress.
Background + Project Goal
This game is a solo fantasy level design project I developed during my time as a student at Vancouver Film School. The project focuses on translating core level design principles into a fully functional gameplay experience built in Unreal Engine.
Able to grab while pushing and pulling within a distance is the key mechanic in this game, allowing players to manipulate certain environmental objects to solve the puzzle and advance.
​
This system is implemented in two parts: the player blueprint and the grabbable object blueprint. The player uses a Line Trace Node to detect the targeted object when the grab input is triggered and stores it as the current target. If the object implements the BPI_Grabbable interface, it is then pulled toward the line trace endpoint using Physics Linear Velocity Node.
Check Point System
For the checkpoint system, I cached the checkpoint index into the Game Instance class when the checkpoint is triggered.
On game start, I used the Game Mode class to load all the persistent levels and sub-levels based on the current checkpoint.


Load Sub Levels
Set Check Point
Pattern Match
In order to advance, players need to put the block into matching slots. However, the rotation of the block is random when being placed, so I implemented an automatic alignment system using Timeline nodes and Lerp to smoothly move and rotate each block into the correct position..

Puzzle Block Reset
To prevent puzzle blocks from falling off the map and blocking player progression, I implemented a reset system that returns the block to its initial position when this occurs.​
I made a transform array that caches the block position, and when it goes outside of the trigger box, begin reset procedure.

Sequencer
I created two cinematic sequences for Broken Balance: an opening and an ending. Using Unreal Sequencer, I controlled camera movement, character animation, visual effects, and material parameters to achieve the desired cinematic presentation.
