Fall 2025 · Video Game Minor

Black Friday Stage 5

You're a store employee at AEKI on Black Friday. Find the hidden keys, dodge the customers, and escape the building before the timer runs out. Built over a semester with a four-person team.

UnityC#Tilemap Design2D StealthTeam Project
00 · What I Built

Movement and the world it moves through

My job on the team was two things: player movement and every tilemap in the game.

The movement system handles 4-directional input with last-key-wins priority — press right while holding up and you instantly change direction. Rigidbody2D physics, directional sprite switching, a lives system with damage flash and invincibility frames. Simple to describe, surprisingly fiddly to get feeling right.

For the levels, I took a large tilemap asset pack and hand-built both maps from scratch — placing every wall, floor, and path. Another teammate created the initial level layout with no art, just grayscale blocks. I turned that into a space that felt like somewhere you'd actually sneak through.

Week 2
↑ From programmer art to finished tilemap
01 · The Game

Sneak, collect, escape

The full game is a 2D top-down stealth-collectathon with a premise we loved: you work at AEKI, it's Black Friday, and you want to go home. The enemies aren't monsters. They're customers who need your assistance, sweeping the floor with rotating vision cones.Get spotted and you're back on the clock. Collect the six hidden keys and reach the exit before a 5-minute timer runs out.

Level 1 needs 2 keys. Level 2needs 4 — and the keys spawn at randomized positions every run, so you can't memorize a route.

The team built three randomized power-ups — Speed (1.7x movement), Invisibility (enemies ignore you), and Extra Life — plus a full tutorial level and a narrative intro with YarnSpinner dialogue. Four people, one semester, one game.

Customer patrol — avoid the vision cone
↑ Stealth gameplay — time your movement between sweeps
02 · The Team Setup

Four people, one Unity repo, no merge hell

Unity scene files are YAML that basically can't be merged, so a four-person team editing one scene is a recipe for lost work. We structured the repo around that problem instead of fighting it: every developer got their own scene(there's literally a JamesScene.unity in the repo, next to Grace's, Josh's, and Orel's), and everything shared lived as prefabs, which merge cleanly because each one is its own file.

Tying it together is a GameStateManager singleton that drives the whole game through one state machine: Tutorial → Playing → Victory / GameOver. It survives scene loads, owns the UI panels, and locks player movement outside the Playing state. Every system in the game checks in with it, so four people's work snapped together instead of colliding.

03 · Play It

Try it yourself

The full game runs in your browser. Dodge the customers, collect all the keys, and make it to the exit before the clock hits zero.

WASD to move · Collect all keys · Reach the exit before time runs out · No generative AI was used to make this game
Play on itch.io →
Gallery
Level 1 Tilemap
Gameplay
Team Working
Final Build
View on GitHub →
← Back to projects