๐Ÿš€ Cozy Parrot Runbook

Idiot-proof local run + playtest. Always cd games/cozy-parrot first.

See also: Index ยท Architecture ยท Opcodes

โœ… Prerequisites

  • Docker installed and running
  • pnpm โ‰ฅ 9 (Node โ‰ฅ 20)
  • Free ports 17350 (API), 17351 (console), 18080 (Cockroach UI)

Nakama default 7350 often collides with kubectl โ€” this stack uses 17350.

๐Ÿ› ๏ธ Run steps

  • Install โ†’ pnpm install
  • nakama:build โ†’ pnpm nakama:build
  • Copy build/index.js โ†’ nakama/data/modules/build
    mkdir -p nakama/data/modules/build && cp nakama/runtime/build/index.js nakama/data/modules/build/index.js
  • Docker โ†’ docker compose -f nakama/docker-compose.yml up -d
  • Frontend .env โ†’ PUBLIC_NAKAMA_PORT=17350 (from .env.example if needed)
  • Dev โ†’ pnpm --filter frontend dev โ†’ open the printed URL

๐ŸŽฎ Playtest checklist

  • Two tabs: Host Match (A) โ†’ paste Match ID โ†’ Join (B)
  • WASD moves both parrots
  • Space grabs the token for the correct blank in the prompt
  • Throw into the golden hopper (Context Window)
  • HUD: prompt blanks, timer, live scores
  • result phase shows ranking after play (~60s)

๐Ÿ”ฌ Verify commands

CheckCommand / expectation
Frontend checkpnpm --filter frontend check โ†’ clean
nakama:buildpnpm nakama:build โ†’ nakama/runtime/build/index.js
docker ps healthydocker compose -f nakama/docker-compose.yml ps / docker ps โ†’ nakama + cockroachdb healthy
E2E_OKHeadless two-player host/join/grab/throw vs API :17350 prints E2E_OK

๐Ÿฉน Troubleshooting

SymptomFix
Port conflict with kubectl / 7350Use 17350; set PUBLIC_NAKAMA_PORT=17350
Goja __assign / object spreadRemove spreads in runtime JS; rebuild + copy module
Inline RPC failUse a named function, then register that name
Module not loading / stale logicRebuild + cp into nakama/data/modules/build + restart Nakama

Ask Docs

AI assistant to help answer questions about the documentation. Answers are read-only and cite docs/source.

Hi! How can I help you with the documentation today? Answers are read-only and cite docs/source.

Ctrl+Enter to send