The idea
Most horror games rely on jump scares in abandoned castles or zombie wastelands. We wanted dread in a familiar setting: working alone late at night under flickering corporate fluorescent lights, hearing footsteps outside your cubicle.
We chose a retro PSX aesthetic with low-poly models, vertex jitter, and affine texture warping. It gives the office an unsettling, grainy look while keeping asset weights light enough to stream over web connections.
What we built
A complete corporate floor divided into four alphanumeric zones (A1 to D4). The player must navigate narrow cubicle aisles, slip through interconnecting utility vents, and hide inside office lockers to evade the masked intruder.
Instead of an on-screen HUD, we built a diegetic smartphone interface. Holding Tab brings up text messages from “Nasir” that advance the story. Raising the phone sheds light on clues, but the screen glow cuts movement speed and alerts anyone nearby.
The hard part
Running 3D real-time lighting, post-processing shaders, and pathfinding smoothly in a browser WebGL canvas without frame stutter. We dialed in a 720p internal render resolution and decoupled texture loads so the game streams instantly.
Building the stalker AI took the most iteration. The intruder switches between navmesh patrol waypoints and an acoustic listener. Sprinting or letting your phone vibrate emits noise events that draw him straight to your location, while crouching muffles all sound.
Result
A tense first-person 3D horror experience running right in the browser at 60 FPS. With our shared engine architecture, returning players load just 7.6 MB of game data with zero installations.
