Zach Christensen
projects
December 2025school

REFLECTION

A first-person horror puzzle game where a quantum reactor failure has torn one facility into two overlapping realities, and the only way forward is to keep crossing between them. Built in Unity by five people in six weeks. I led the team and wrote the story.

Three minutes of the finished build, with Elena's dialogue running over the top.

1 / 19

REFLECTION is a first-person horror puzzle game set in a 1960s Cold War research facility. A quantum reactor failure has torn the place into two overlapping realities, and you play Alex, a researcher trying to reach his wife Elena three levels below. You cross between the two worlds through Reflections: portal puddles that move you between realities without moving you an inch.

The whole game hangs on one rule. The Normal World is safe and has no power. The Inverted World has power and wants to kill you. Every circuit, keypad and powered door can only be worked from the dangerous side, and a meter drains the entire time you are over there. So you are never choosing between a safe route and a fast one. You are choosing how long you can afford to stay in the room where the puzzle is.

Over there you are not alone. The scientists caught in the blast are still moving, and stabilizing one drops a quantum core, which is the currency the whole game runs on: collect enough and you can push power back into the safe world to open the elevator, the blast door, and eventually the reactor itself.

Elena guides you by radio the whole way down, which is the setup for the ending: she died in the disaster, the reactor absorbed her, and the voice has been reaching you through the one system in the facility that still has power.

The concept and the story are mine. I brought the premise, the two-world rule, and the ending to the team, and it grew from there with their additions along the way.

What we built

Five of us made it over six weeks for CSCI 4168 at Dalhousie, in three two-week sprints. Three levels, a boss fight, and a lot of custom systems built on top of a horror FPS asset kit that gave us the inventory and the puzzle hardware.

The hard part was holding two realities at once and making the crossing feel instant. Both worlds sit in the same space, and crossing swaps them underneath the player. It was not the most elegant option on the table, but it was the one we could actually watch happen while we worked. On a six-week project with five people in the same files, being able to see the bug beat being clever.

The rest was the usual education. Version control fought us on every merge, one effect got rebuilt with a simpler tool after the fancy one refused to behave, and we lost a while to an editor crash that turned out to be caused by looking at the health bar from the wrong angle.

What I did

I was the architect on the team, and I touched close to all of it. The only two areas I did not are the Blender modelling and the sound design, and that second one comes with an asterisk: the script and every one of Elena's voice lines were mine, so what I handed off was the mixing rather than the writing or the performances.

The story and the script. The idea came out of my head, and I wrote it: the premise, the two-world rule, the twist, and fourteen pages of scene-by-scene dialogue. I wrote the triggers into the script as I went, so the story and the objectives were designed as one thing rather than dialogue being draped over finished levels.

The voice work. Elena is an AI-generated voice I directed and tuned line by line: a written character brief, stability settings low enough to get real emotional range, inline delivery tags through the whole script, and a lot of regenerating lines that came out wrong. A five-person student team with six weeks does not have a voice actor. It turns out directing a generated performance is its own skill, and getting a line to break in the right place took about as many goes as it would have taken with someone in a booth.

Running the project. Sprint planning, task breakdown, scheduled merge points, and the calls about what we were cutting. A five-person team on one Unity project is mostly a coordination problem wearing a technical costume.

Systems. Enemy AI, the UI, the traversal systems behind the crossing, and the Resonator's tool physics.

What I took from it

What it left me with: Unity, C# gameplay programming, game and level design, narrative design and scriptwriting, AI voice generation and direction, enemy AI, UI work, and leading a team under a real deadline.

Built with Austin Whiffen, Hyojune Kim, Dino Nozicka, and Zaki Bin Sajan.