Skip to content

v0.1 RC — structured playtest script

One scripted session per device class batches EVERY owed human check from docs/RELEASE-0.1.md §3. Do it on the aligned BUILD 166 deploy (all devices on the same build — do not playtest mixed builds). Findings go on the punch list (§2/§4), not fixed mid-session. Tick items here as you go; note pass/fail + one line.

Devices: Mac (exported .app, not editor F5) → Apple TV → iPhone. Co-op section needs 2 controllers + mouse on the Mac. Optional: Remote Playtest Console live for telemetry; Debug Settings → “Dev: record replays” on a Mac dev build if you want the sessions captured as replay fixtures (next launch; off again after).

A. Start menu + navigation (all devices, ~5 min)

Section titled “A. Start menu + navigation (all devices, ~5 min)”
  • Carousel swipe/step through ALL cards (3 modes gate correctly; Ship always present; Shop/Enemies only once progressed; Remote only in dev builds).
  • Activate each action card: Ship, Shop, Enemies open and RETURN correctly (menu still alive behind them, no input leak underneath).
  • Survival card starts a run; menu hides; no stray “READY” text lingering.
  • Apple TV: Siri Remote still fully ignored (can’t move ship, can’t trigger cards).
  • Touch (iPhone/iPad): carousel drag pages; tap confirms; tapping BACK does NOT accidentally confirm the centered card.

B. Ship Tilt A/B decision (Mac first, then Apple TV, ~10 min) — DECISION REQUIRED

Section titled “B. Ship Tilt A/B decision (Mac first, then Apple TV, ~10 min) — DECISION REQUIRED”

Debug Settings → “Ship Tilt” row. Fly figure-eights + hard direction reversals with each:

  • Off (baseline feel)
  • Shader Warp (any hull)
  • Baked Flipbook (cobalt hull ONLY — confirm it silently no-ops on other hulls, no glitch)
  • DECIDE: winner = Off / Shader Warp / Flipbook → record on punch list; loser code gets removed post-0.1. Watch for: stale-looking tilt after rapid mode switching (known dev-only glitch — confirm it can’t occur without the debug row).

C. Shop / meta (any device with progress, ~10 min)

Section titled “C. Shop / meta (any device with progress, ~10 min)”
  • RESET SHOP tile → confirm dialog legible at TV distance; CANCEL leaves everything intact.
  • Confirm reset: ALL spent gold refunded (stats + unlocks), levels cleared, ship/decoy/drone loadout back to starter; seen_enemies/tutorial UNtouched; game restarts cleanly after.
  • Obsidian cruiser tile: sprite (real one once landed — currently Aurum placeholder), price, and 5-weapon/2-drone slots on purchase.
  • Buy something normally afterwards — save persists across app restart.

D. Manual aim weapon (Mac + one controller device, ~10 min) — TUNE INPUT REQUIRED

Section titled “D. Manual aim weapon (Mac + one controller device, ~10 min) — TUNE INPUT REQUIRED”
  • Right-stick aim fires it; releasing stick stops it (no fire-forever).
  • Mouse aim (Mac): fires ONLY while actually moving/aiming the cursor — a resting cursor must NOT hold fire (regression check on f8e2c5e).
  • Soak data says constant aim = 60% of all damage. Play 2 runs: one using aim heavily, one ignoring it. Does aim-heavy feel dominant? Is the threshold ladder (crystal grants) noticeable? → verdict + suggested WeaponThresholds.TABLE["aim"] direction on the punch list.

E. Co-op — 2 controllers + mouse, Mac or TV (~15 min)

Section titled “E. Co-op — 2 controllers + mouse, Mac or TV (~15 min)”
  • P2 joins via explicit A-press on controller 2; P2 mirrors P1’s hull.
  • BOTH pilots take boss/hazard damage (P2 no longer invulnerable to Eye beam / Graviton blobs / Warden).
  • Level-up: panels CHAIN P1→P2 on simultaneous level-up; each panel labels its pilot; sim stays paused throughout.
  • Hijack check: while P2’s panel is up, P1 mashes buttons AND clicks mouse — P2’s pick must not be stealable (mouse click on P2’s cards must be inert).
  • P2’s decoy button deploys P2’s OWN drone; both pilots’ drones recharge independently; P2 drone carries P2’s blade element colour.
  • Kill-XP: both pilots level from shared kills; P2 progression persists through the run.
  • One pilot dies → other continues; both die → game over.

F. Content feel pass (any device, ~20 min, can split with Toby)

Section titled “F. Content feel pass (any device, ~20 min, can split with Toby)”

New weapons — acquire each at least once (invuln dev command ok): Momentum Core, Chronowell, Scar Tissue, Railgun, Wildfire, Thunder Wake.

  • Each visibly DOES something and reads on screen; note any that feel inert/undertuned. New enemies: Beacon, Glass Wisp, Halo Chain, Leech, Coil, Fleet Kite.
  • Each behaviour reads; Halo Chain’s buff now affects ranged minions (fixed 5ca07d4); Disruptor slow visibly slows dashers (fixed 760b72d).
  • Centurion on TV: rosette legible at swarm scale; correct per-dimension colour.
  • Crit (“Focus” upgrade): pick it twice; crits visible? 2.0× feel right?

G. Dimensions + run arc (one full run, ~15 min)

Section titled “G. Dimensions + run arc (one full run, ~15 min)”
  • Kill a boss → dimension-choice popup (3 options) reads well on TV; picking works with stick + touch + mouse.
  • Fire/Void/Light each entered at least once across runs; enemy roster + palette obviously change; Home/Warden works.
  • Full-run arc sanity: fresh-save survival window (~1–3 min per soak data) — does dying that fast feel acceptable for a brand-new player, or does the early curve need one notch of mercy? (EVE-style meta-progression is the philosophy — this is about the FIRST-session hook only.)

H. Performance + polish eyes-open (all devices, passive)

Section titled “H. Performance + polish eyes-open (all devices, passive)”
  • Apple TV: sustained swarm + boss + dimension FX — note any obvious slowdown spots (the adaptive ladder is still OFF until Phase 4; raw cost matters).
  • HP bar flash-in on damage; low-HP border glow; pause screen shows build number; no debug chrome anywhere.
  • Audio: new-weapon sounds present (SOUND_MAP gaps are known/deferred); nothing obviously silent that used to be audible.
  • Mac done (date, by) · - [ ] Apple TV done · - [ ] iPhone done
  • All findings transferred to docs/RELEASE-0.1.md