Skip to content
AJ Uppal
← Back to selected work

Personal project / Cooperative RPG

Bring Something Home.

Cooperative bullet-hell expeditions with shared combat, personal loot and persistent upgrades.

Open project Live in a browser
Trailer 0:35 Download
Music credits

The Road Home (2023) by Alexander Nakarada. CC BY 4.0. Excerpts edited and mixed for this trailer.

Screenshots

My work

Game design, the browser client, the authoritative realm server and persistence.

Working with

Three.js · TypeScript · WebSocket · SQLite

Inside the build

Shared combat and persistent progress.

Context

Dodging must feel immediate while one server decides every hit, reward and death.

How it works

The browser predicts movement and reconciles it with the realm server. Inventory and death are saved atomically, and each player receives personal loot.

In the work

Public version 1.4.1 supports cooperative expeditions. The lead image uses a fresh character; the late-game photographs use a prepared level-20 character.

Movement
The realm ticks at 20Hz. The browser replays unacknowledged input after reconciling server state; prediction grants neither damage nor loot.
Projectiles
Fixed-velocity spawn and removal deltas travel between full baselines. The browser renders their paths in 3D.
Persistence
Atomic profile and death writes keep inventory outcomes consistent. Gear swaps validate ownership, distance and capacity.
Expeditions
Expeditions award personal loot. Carried gold, banked gold and permanent shards are tracked separately.

Keep exploring.

The whole collection →
A sailboat beneath a rising sun, with a warm path of light across the ocean in Saltline. saltline Simulation / multiplayer Ember Wilds in Fallowmere at dusk: a level-30 character in a voxel landscape. Ember Wilds Voxel MMORPG murmuration in ribbon style: a dense violet and white form of drawn-out particle streaks against black, filling most of the frame. murmuration Audio / WebGPU