New Game Onboarding Checklist

Copy this checklist into your game’s documentation space to track onboarding progress. Ensure that the paths match the Template Structure Contract.

Phase 1: Planning (Status: PLANNED)

  • Rename the Genius documentation pack templates (remove .template).
  • Fill out the Fun Stack (docs/fun-stack.md) with the core loop and mechanics.
  • Initialize the Perspectives tracker (docs/perspectives.md).
  • Document your planned op_codes and RPCs in a schema file.

Phase 2: Scaffolding (Status: IMPLEMENTED)

  • Create funday-plugin.json and insert the genius metadata block mapping to your docs.
  • Set up client/src/state/game-mode.svelte.ts.
  • Implement the unifiedGameState derived properties.
  • Scaffold the Go Nakama Match handler and the required genie_* RPCs.
  • Initialize FundayBridge in the client.

Phase 3: Verification (Status: VERIFIED)

  • Disconnect network: Play a full Solo Practice match via the bot fallback.
  • Connect network: Play a full Multiplayer match.
  • Fire genie_ingest_state against the running Nakama server and ensure it returns scrubbed match data.
  • Run the platform’s scripts/validate-game-manifest.mjs against your plugin manifest.

Phase 4: Polish (Status: TESTED)

  • Review the “Juice” and Onboarding sections of your Fun Stack.
  • Execute an initial Deep Roast audit and log it in docs/audits/.
  • Ensure all Perspective lenses (Accessibility, UX) have been implemented.
  • Sync all Quartz documentation comments and ensure no broken links.

Phase 5: Launch Prep (Status: LAUNCH_READY)

  • Perform a full UI walkthrough using the final theme configuration.
  • Complete the final QA sign-off.
  • Merge changes into the main branch.

Process Guidelines

  1. Honest Tracking: Do not check a box if the task is only partially complete. If you are waiting on a dependency, leave it unchecked and add a note.
  2. Agent Collaboration: If you are using a Genie or AI agent to assist, point the agent directly at this file so it knows what phase the project is in.
  3. Iterative Verification: Verification (Phase 3) is not a one-and-done step. Any major architectural changes should trigger a re-verification of the core features.

Common Anti-Patterns

  • Skipping Phase 1: Diving straight into code without writing the Fun Stack. Why it fails: You lose the “Juice” and core mechanics alignment, resulting in a bland or disjointed experience.
  • Blind Checkboxing: Checking off “Validate Solo Practice mode” just because the menu button exists, without actually playing a full match.
  • Ignoring Audits: Storing the Deep Roast audit but never acting on the findings before declaring TESTED.

Appendix: Status Enums

The onboarding checklist heavily utilizes status enums to signal the state of the project to automated parsing tools and Genies.

  • PLANNED: The theoretical foundation is being laid out. No functional code is expected.
  • IMPLEMENTED: Code has been written and basic pathways are functional, but edge cases and platform requirements (e.g. offline fallback) might be untested.
  • VERIFIED: The implementation correctly integrates with the platform boundaries (Nakama, Bridge, Offline Fallback).
  • TESTED: The game meets UX, accessibility, and fun criteria. It has survived audits.
  • LAUNCH_READY: The game is fully polished, themed, and signed off for production deployment.

Tooling & Verification Scripts

Use the following tools to assist in verification throughout the phases:

  • npm run e2e: Executes visual regression tests.
  • node scripts/validate-game-manifest.mjs: Ensures your funday-plugin.json is perfectly formed.
  • curl: Use curl to manually test your genie_ingest_state and ensure it behaves as expected.

Do not consider a phase complete if the relevant automated tooling fails.

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