Files
aetherbound-guild/docs/runtime/PHASE9_2R_GAMEFUL_OPENING_CONTRACT.md
T

92 lines
4.1 KiB
Markdown

# P9.2R Gameful Opening Contract
> Revision: `p9.2r-contract-r1`
> Baseline: `840b111d55980f7178d12f871b6290f10b060e70`
## Earliest Failed Boundary
The Title has a full-screen fantasy scene, but entering the game replaces that
world with a stacked menu, a two-panel briefing, four narrow Recruit cards and
a three-panel formation confirmation. The player performs an app-style wizard
while characters and environment remain passive.
P9.2R repairs world continuity and embodied choice. It does not redesign
mechanics or add content.
## Representative Dynamic Slice
Representative screen: `Guild Yard Recruit Rally`, reference viewport
`844x390`.
Focal order:
1. Four Recruit silhouettes standing inside the Guild Yard.
2. The selected rally line and breach threat/gate.
3. A compact contextual action strip with one current instruction.
Canonical actor: `Hearthguard`, using the existing accepted actor and animation
resources without regeneration.
Bounded action chain:
```text
tap Hearthguard
-> Hearthguard moves from candidate line to rally mark and gains selected sigil
-> tap Farstring
-> Farstring rallies and the system visibly orders Hearthguard then Farstring
-> tap Depart
-> both actors move toward the gate and the preserved first battle starts
```
Choice/failure/recovery:
- Any two of four remain legal and produce a different profession combination.
- A third unselected Recruit is visibly unavailable while capacity is full.
- Tapping a selected Recruit removes that person and reopens capacity.
- Depart is unavailable before two choices and commits exactly once afterward.
## Composition And Layers
- Background: existing Windglass Guild Yard scene, full bleed.
- Midground: breach path and rally marks, code-rendered and editable.
- Foreground: four existing Recruit actors at stable baselines.
- Actor state: candidate, focused, selected/rallying, ordered, departing.
- UI: compact HUD, one commission ribbon, one contextual action strip.
- VFX: selected sigil, short rally trail and departure cue bound to accepted
state changes; no decorative reward implication.
No full-height panel, repeated card grid, paragraph block or card-inside-card is
allowed on the representative screen.
## Motion-State Table
| State/event | Anticipation | Impact | Recovery/final | Timing | Reduced motion |
|---|---|---|---|---|---|
| Candidate idle | existing idle frame cycle | none | remains at candidate mark | 2-6 fps loop | first frame |
| Recruit selected | 80 ms highlight | actor shifts to rally mark; sigil and select cue | selected stance | 220 ms | immediate final position |
| Recruit removed | selected sigil dims | actor returns to candidate mark | candidate stance | 180 ms | immediate final position |
| Two selected | second select resolves | both actors slide into automatic field order | ordered line with role captions | 300 ms | immediate ordered line |
| Capacity failure | unavailable actor compresses 2 px | no state mutation; reason appears | stable full line | 160 ms | text/shape only |
| Depart committed | gate pulses and line leans forward | actors move toward breach; depart cue | preserved battle state | 420 ms then transition | short fade then battle |
## Presentation Rules
- World and actors occupy at least 70% of the reference screen area.
- Explanatory copy is at most two short lines in the active context strip.
- Only one primary gold action is visible at a time.
- Settings and game information use familiar icon actions in the HUD and never
compete with Recruit choice.
- Every actor target is at least 48 px and exposes name, profession and one
plain-language behavior without a card wall.
- Selection uses position, sigil, outline and text, not color alone.
- English, Simplified Chinese and 130% text must preserve actor visibility and
action reachability.
## Evidence Boundary
The candidate requires one 15-30 second normal-render recording showing Title,
Guild Yard entry, first selection, second selection, automatic order, revision,
reselection, departure and first-battle arrival. Static frames cover zero, one
and two selections, capacity, automatic order, English 130%, portrait fallback
and reduced motion. Human game-feel acceptance remains Owner-only.