Go to file
jing 036748543b Brief: Social & the Reset Ritual (avatars, emotes, blow-the-fuse)
- Avatar customization: hue/headgear/face enums, Menu AVATAR tab with 2D
  preview, live sync via extended hi + new avatar message (no moderation
  surface - palettes only, no free-form content).
- Emotes on Z X C V: wave, beat-synced head-nod, point, rate-limited
  airhorn with positional synth + confetti.
- Reset ritual: after a win the glass fuse becomes hold-breakable (5s,
  warned); server-authoritative reset with 10-min cooldown - music
  power-downs, lights die, workshop resets to wires-off, block edits
  survive, quest replayable. Needs Quest.reset() + 'quest:reset' bus event.
- Tab-hold player list.
Protocol validation/rate-limit requirements spelled out for ship-check.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 23:04:46 +10:00
.claude Headshell Workshop + Glow-Up phase: assembly minigame, art pass, review fixes 2026-07-14 21:32:07 +10:00
deploy Deploy: record the real partly.party procedure (shipped 2026-07-13) 2026-07-13 23:30:54 +10:00
docs Brief: Social & the Reset Ritual (avatars, emotes, blow-the-fuse) 2026-07-16 23:04:46 +10:00
server Headshell Workshop + Glow-Up phase: assembly minigame, art pass, review fixes 2026-07-14 21:32:07 +10:00
src Glow-up review fix: concentric groove caps on record tiers 2026-07-16 22:48:32 +10:00
.gitignore Multiplayer: shared-booth relay + client sync + avatars 2026-07-13 23:06:49 +10:00
demo-audio.html TURNCRAFT: contracts, docs, and all five lane deliverables (pre-integration) 2026-07-13 20:50:56 +10:00
demo-engine.html TURNCRAFT: contracts, docs, and all five lane deliverables (pre-integration) 2026-07-13 20:50:56 +10:00
demo-machines.html TURNCRAFT: contracts, docs, and all five lane deliverables (pre-integration) 2026-07-13 20:50:56 +10:00
demo-player.html TURNCRAFT: contracts, docs, and all five lane deliverables (pre-integration) 2026-07-13 20:50:56 +10:00
demo-worldgen.html TURNCRAFT: contracts, docs, and all five lane deliverables (pre-integration) 2026-07-13 20:50:56 +10:00
index.html TURNCRAFT: contracts, docs, and all five lane deliverables (pre-integration) 2026-07-13 20:50:56 +10:00
package-lock.json TURNCRAFT: contracts, docs, and all five lane deliverables (pre-integration) 2026-07-13 20:50:56 +10:00
package.json TURNCRAFT: contracts, docs, and all five lane deliverables (pre-integration) 2026-07-13 20:50:56 +10:00
README.md TURNCRAFT: contracts, docs, and all five lane deliverables (pre-integration) 2026-07-13 20:50:56 +10:00
tsconfig.json Multiplayer: shared-booth relay + client sync + avatars 2026-07-13 23:06:49 +10:00

TURNCRAFT

Honey I Shrunk the DJ. A Minecraft-style voxel game where the entire world is a vinyl DJ booth — two Technics-style 1200s, a 4-channel mixer, cable canyons, a patch-bay dungeon, and circuit-board caves — and you're 7 mm tall, riding the records.

Building it with parallel agent lanes

Five independent lanes, disjoint file ownership, shared contracts already written in src/core/ (read-only for all lanes).

lane brief delivers
A docs/briefs/LANE_A_ENGINE.md voxel storage, greedy mesher, procedural texture atlas, renderer
B docs/briefs/LANE_B_PLAYER.md FPS controller, voxel collision, ride-the-record platform physics
C docs/briefs/LANE_C_WORLDGEN.md the whole booth, built parametrically in voxels
D docs/briefs/LANE_D_MACHINES.md spinning platters, tonearm, faders, break/place, the quest
E docs/briefs/LANE_E_AUDIO_FX.md synthesized house groove in stems, beat-reactive lights, HUD

Launch prompt for each lane (separate session/agent each, all five at once):

Read docs/CONTRACTS.md, docs/DESIGN.md, and docs/briefs/LANE_X_….md, then implement the lane exactly as briefed. Work only inside your owned paths. Verify with your demo page and the acceptance checklist, write your HANDOFF.md, and ensure npm run typecheck passes.

Recommended: git init first and give each lane its own branch or worktree; ownership is disjoint so merges are trivial.

Run

npm i
npm run dev        # game shell at /, lane demos at /demo-<lane>.html
npm run build      # static bundle