7.1 KiB
P9.2R Gameful Opening Implementation Plan
Status:
ACTIVEActive step:P9.2R-STEP-5 OWNER_REVIEWBaseline:840b111d55980f7178d12f871b6290f10b060e70Goal:docs/goals/PHASE9_2R_GAMEFUL_OPENING_GOAL.mdContract:docs/runtime/PHASE9_2R_GAMEFUL_OPENING_CONTRACT.mdLedger:docs/reviews/PHASE9_GODOT_VERTICAL_SLICE_LEDGER.md
Player-Visible Stopping Point
P9.2R ends when Title through first-battle departure reads as one continuous Guild Yard action rather than an app wizard, while every accepted gameplay rule and later battle remains unchanged.
Ordered Steps
| Step | Status | Player outcome | Verification | Commit boundary |
|---|---|---|---|---|
| P9.2R-STEP-0 Contract | COMPLETE |
The rejected boundary, dynamic slice and frozen rules are explicit. | Goal/contract/plan/checkpoint links; one representative screen and action chain. | Planning commit. |
| P9.2R-STEP-1 Yard entry | COMPLETE |
Enter Game opens a living Guild Yard with visible commission, threat, four Recruits and one obvious action instead of a menu/briefing card flow. | Marker ABG_P9_2R_GAMEFUL_YARD_ENTRY_OK; front-door/touch, six-pair, 180-path and P9.2 focused regressions; two normal 844x390 frames; strict diagnostics zero. |
Product source 3b3f459; evidence in STEP_1_EVIDENCE.md. |
| P9.2R-STEP-2 Embodied selection | COMPLETE |
Tapping actors rallies/removes them in the world; two choices form the automatic line without card pages. | Marker ABG_P9_2R_GAMEFUL_RECRUIT_RALLY_OK; six pairs/two click orders; parsed touch; four normal states; strict diagnostics zero. |
Product source 88d4e63; evidence in STEP_2_EVIDENCE.md. |
| P9.2R-STEP-3 Departure | COMPLETE |
The ordered line visibly departs through the breach and reaches the preserved battle exactly once. | Marker ABG_P9_2R_GAMEFUL_DEPARTURE_OK; 7-touch recording marker; three normal frames; 18.5-second 844x390 recording; strict diagnostics zero. |
Product source c89721d; evidence in STEP_3_EVIDENCE.md. |
| P9.2R-STEP-4 Integrated H5 | COMPLETE |
Owner can play the repaired opening remotely. | Clean source-bound Web export; Gallery item KITQfwLYLK6R; byte-identical HTML/JS/PCK/WASM; remote Title/Yard/mission/zero/one-selection path; browser diagnostics zero. |
Delivery in H5_DELIVERY.md; closure pushed. |
| P9.2R-STEP-5 Owner review | IN_PROGRESS |
Owner decides whether the opening now feels like a game. | Uncoached Owner observation. | Accept or redesign terminal. |
Step 1 Contract
Owned files:
runtime/compat/p9_0_root_facade.gd
runtime/tests/p9_2r/gameful_yard_entry_test.gd
docs/runtime/p9_2r/IMPLEMENTATION_PLAN.md
docs/runtime/p9_2r/STEP_1_EVIDENCE.md
CURRENT_CHECKPOINT.md
docs/reviews/PHASE9_GODOT_VERTICAL_SLICE_LEDGER.md
Step 1 may change only Main Menu and first-commission presentation plus the transition between them. It must keep page/state IDs and existing callbacks so accepted navigation, settings, Home and Restart behavior remain compatible.
Acceptance:
- Enter Game reaches a full-bleed Guild Yard, not a full-height menu panel.
- The commission and breach threat are readable in under two short lines.
- All four existing Recruits are visible in-world before selection.
- One primary
Assemble Companyaction enters the accepted Recruit-selection state; information and settings are compact secondary controls. - At 844x390 the world/actors occupy at least 70% of the screen and no repeated candidate card exists.
- zh_CN/en, 130%, 1280x720 and 390x844 remain in bounds.
Frozen
P9.2 battle, all values and rules, P9.1 session flow after departure, new media, audio generation, persistence, casualty, content, packaging and release.
Step 2 Contract
Owned files:
runtime/compat/p9_0_root_facade.gd
runtime/tests/p9_2r/gameful_recruit_rally_test.gd
docs/runtime/p9_2r/IMPLEMENTATION_PLAN.md
docs/runtime/p9_2r/STEP_2_EVIDENCE.md
CURRENT_CHECKPOINT.md
docs/reviews/PHASE9_GODOT_VERTICAL_SLICE_LEDGER.md
Player outcome: the player chooses people by touching the people in the Yard. The chosen actor changes position and gains a selected sigil; two choices show the system's lead/support order in the same world. The player can remove one, replace one, review the resulting line and proceed without seeing a Recruit card grid or formation cards.
Acceptance:
- Four actor-sized touch targets expose the same four existing Recruits.
- Zero, one and two selections are visually distinct through position, sigil, outline and text; color is not the only signal.
- A third Recruit is visibly unavailable at capacity without mutating state.
- Tapping a selected actor removes only that actor and reopens capacity.
- All six unordered pairs and both click orders yield the same existing automatic order.
- Recruit selection and formation review contain no repeated Recruit or formation cards and remain in the same full-bleed Yard.
- Parsed ScreenTouch, zh_CN/en 130%, reduced motion and 844x390 bounds pass.
Step 3 Contract
Owned files:
runtime/compat/p9_0_root_facade.gd
runtime/tests/p9_2r/gameful_departure_transition_test.gd
docs/runtime/p9_2r/IMPLEMENTATION_PLAN.md
docs/runtime/p9_2r/STEP_3_EVIDENCE.md
CURRENT_CHECKPOINT.md
docs/reviews/PHASE9_GODOT_VERTICAL_SLICE_LEDGER.md
Player outcome: pressing the one departure action commits the existing line once, shows both selected actors advancing from the Yard toward the bell gate, then reveals the preserved first battle. No second confirmation page appears.
Acceptance:
- The formation transaction commits exactly once and duplicate input is inert.
- A normal-motion transition shows both ordered actors advancing toward the visible threat for 420-600 ms while the battle clock remains zero.
- Reduced motion resolves through a short final-position transition without changing the committed formation or battle state.
- The first battle appears after the transition with the same selected IDs, HP, phase, values and event rules.
- Home/Restart cleanup cannot leave a pending departure transition.
- Parsed ScreenTouch, three representative normal frames and one 15-30 second Title-to-battle recording pass strict diagnostics.
Step 4 Contract
Owned files:
docs/runtime/p9_2r/IMPLEMENTATION_PLAN.md
docs/runtime/p9_2r/H5_DELIVERY.md
CURRENT_CHECKPOINT.md
docs/reviews/PHASE9_GODOT_VERTICAL_SLICE_LEDGER.md
Player outcome: the Owner can open one new stable Gallery item on a landscape mobile browser, reset by refreshing, and play the repaired Title-to-battle opening without local tooling.
Acceptance:
- Export is generated from exact clean/upstream source
c89721dand contains the embedded Chinese font and only runtime-required content. - The deployed Gallery payload is byte-identical to the local export and uses one stable signed link.
- Remote health, MIME and content-length checks pass; a normal browser reaches the real Chinese Title without console warning/error.
- A short remote path reaches the Yard and preserves readable Chinese, actor targets and the current primary action.
- Delivery records source, payload hashes, Gallery item, reset behavior and open human/device/release gates; no package, signing or release work occurs.