Docs: record the three feedback rounds, decisions, and verification gotchas
PLAN.md: two-stage aiming, runner-glass, fps-60, and no-engine decisions added to the don't-re-litigate list; PWA/App Store noted as a next-arc candidate. HANDOFF.md: status covers the post-plan rounds; gotchas gain the synthetic-touch, 1/60-stepping, port-hold, and zombies[]-mutation lessons. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
2e5af224b8
commit
5d815a4fc8
2 files changed
+49
-14
No files matched your search
@@ -1,8 +1,10 @@
|
||||
# PLAN — all phases shipped (v2 complete, 2026-07-12)
|
||||
# PLAN — all phases shipped (v2 complete + three feedback rounds, 2026-07-12)
|
||||
|
||||
Phases 1–13 are implemented, verified, and deployed. See git log for the per-phase
|
||||
record and HANDOFF.md for the current system map. This file now only records what
|
||||
was DECIDED, so nobody re-litigates it.
|
||||
Phases 1–13 are implemented, verified, and deployed, plus three post-plan feedback
|
||||
rounds from Oliver's phone playtests (aiming rework, freeze fix + presentation,
|
||||
aesthetics/stadium, runner + battery). See git log for the per-round record and
|
||||
HANDOFF.md for the current system map. This file now only records what was DECIDED,
|
||||
so nobody re-litigates it.
|
||||
|
||||
## The shape of the game (as shipped)
|
||||
- **The scoreboard is the progression.** Waves = games (spawn director scales with
|
||||
@@ -23,11 +25,22 @@ was DECIDED, so nobody re-litigates it.
|
||||
eatenR 0.9 sprite-overlap = eaten.
|
||||
|
||||
## Feedback-round decisions (Oliver, 2026-07-12)
|
||||
- Zombies pass-through: resolved as (a) — touch HURTS (radius honest), not avoidance.
|
||||
- Zombies pass-through: resolved as (a) — touch HURTS (eatenR honest), not avoidance.
|
||||
- Interlude frequency: currently every game won (fresh opponent each game). If it
|
||||
overstays its welcome, gate it to every 2nd opponent — one-line change in the
|
||||
trigger (gameplay.js, `dueled`).
|
||||
- Multi-ball stays "one proper serve per fan" (triple serve), never rapid-fire.
|
||||
- Serve aiming is TWO-STAGE: touch shows the reticle at once (auto-lock on the most
|
||||
advanced zombie), drag aims, release fires, drag-back cancels. A flick is just a
|
||||
fast drag now. Specials commit only on aimed serves; tap-toss keeps the stock and
|
||||
the PERFECT power ceiling. Do not regress to blind flicks.
|
||||
- Runner counter: GLASS CANNON (any ball contact kills it) + runnerVMax cap — NOT a
|
||||
dedicated weapon (you'd never hold it when the shriek comes).
|
||||
- fps default 60 — Oliver felt 30 immediately and vetoed it. The TUNE.fps knob stays
|
||||
as an opt-in battery saver. Battery wins that DID stick: cached pile canvases,
|
||||
matchMedia hoist, RAF rescheduled before update (also the freeze insurance).
|
||||
- Engine port ruled out (third failed-rewrite risk; feel is the asset). If rendering
|
||||
ever truly outgrows canvas 2D, swap ONLY render.js for a WebGL backend.
|
||||
|
||||
## Tuning surface (T panel)
|
||||
All pacing knobs are in config.js TUNE — spawn director (zSpawnEvery/Min/Step, zMax,
|
||||
@@ -36,5 +49,9 @@ zMaxCap), beats (changeoverT, gameBeatT), deliveries (ballChangeFirst/Every), ro
|
||||
|
||||
## If a next arc happens, candidates in rough order of value
|
||||
1. Balance pass from phone playtests (Oliver tunes, nothing to build).
|
||||
2. Boss variety: a second duel opponent type (sprite session first, as before).
|
||||
3. Meta between runs: unlock/records screen beyond best-run.
|
||||
2. PWA (manifest + icon + service worker, ~an afternoon) — full-screen home-screen
|
||||
app, offline, keeps the instant deploy loop. Oliver is also interested in SELLING
|
||||
it at 0.99 someday → that path is Capacitor + App Store (dev account €99/yr,
|
||||
Apple as merchant of record); informational only so far, do not build unasked.
|
||||
3. Boss variety: a second duel opponent type (sprite session first, as before).
|
||||
4. Meta between runs: unlock/records screen beyond best-run.
|
||||
Reference in new issue
Block a user