u/AggressiveCream5117

▲ 19 r/threejs

I made a three.js game you can't play — 24 box-people fight over money and you just watch

It's a village of 24 box-people who fight over coins, rob whoever they knock down, and build huts that grow into castles. You don't play it — you click a name in the ranking and follow that villager around.

Some notes:

  • three.js 0.170 + Rapier. The characters are capsule colliders, not boxes. Box bottoms kept catching on the voxel seams and burying legs in the terrain.
  • Terrain is a 96x96 voxel grid: fBm + domain warp + a height spline (plains vs mesas), with ridged noise on top. Villagers who hit a cliff they can't climb dig it into a staircase, and the routes they walk get trampled into paths that speed them up.
  • The save is tiny because the terrain is a pure function of the seed, so a snapshot only carries what the sim changed: dug cells and trampled paths as two base64 byte planes, plus coins/HP/poses and each base's vault. ~27KB in localStorage, and it survives a reload.
  • The faces are 6-face box textures built from a single photo. Nine of the ten demo villagers are fictional people an image model invented. The tenth is me, in a suit.
  • The arms are flat stretched strips and the textures are rough up close. That part is on purpose.

Built with Claude Code.

Watch the shared world — no signup, nothing to install: https://oishoi.jugoya.ai/royale.html?lang=en

And if you'd rather be in it than watch it: sign up, give it one photo, and you get your own villager living in that same world. Free while the beta is open. Nothing is visible to anyone else until you've seen your finished villager and approved it — or deleted it.

u/AggressiveCream5117 — 22 hours ago