Document campaign choice rescue
This commit is contained in:
16
docs/UX.md
16
docs/UX.md
@@ -9,6 +9,7 @@ This document is the Godot implementation blueprint for the player-facing fronte
|
||||
- Keep menu flow short: splash, main menu, mode selection, level, outcome, next action.
|
||||
- Treat campaign as a linear chain of handcrafted levels with names and short flavor text.
|
||||
- Let players retry a lost level from its starting state and advance from a won level to the next campaign level.
|
||||
- Keep one-action setups in guided tutorial content; campaign levels should present at least two plausible lengthy interventions with different pulse outcomes.
|
||||
|
||||
## Scene Flow
|
||||
|
||||
@@ -166,7 +167,7 @@ Primary controls:
|
||||
- visible hazards, sprinkler water, and wet-electricity risk with safe/caution/critical bands
|
||||
- forecast warnings
|
||||
- `ActionBar`
|
||||
- contextual action buttons: move, interact, activate sprinkler valve, repair, remedy, heat shield, activate reactor
|
||||
- contextual action buttons: move, interact, toggle isolation valve, activate sprinkler valve, repair, remedy, heat shield, activate reactor
|
||||
- disabled buttons must show why the action is unavailable
|
||||
- `InventoryPanel`
|
||||
- fuel neutralizer count
|
||||
@@ -178,16 +179,18 @@ Behavior:
|
||||
|
||||
- Selection and inspection are quick actions and must not trigger a pulse.
|
||||
- Movement is a quick action and must update robot position without triggering a pulse.
|
||||
- Interact, sprinkler valve activation, repair, remedy, and heat shield are environment-changing actions and must trigger one animated pulse when accepted.
|
||||
- Interact, isolation valve toggles, sprinkler valve activation, repair, remedy, and heat shield are environment-changing actions and must trigger one animated pulse when accepted.
|
||||
- Activate reactor must be visually prominent when ready and should resolve immediately without requiring a wait or extra pulse.
|
||||
- Invalid actions should produce a short refusal message and not mutate level state.
|
||||
- When the level state becomes `Lost`, show `LoseOverlay`.
|
||||
- When the level state becomes `Won`, show `WinOverlay`.
|
||||
- When the reactor is ready, make `Activate Reactor` visually prominent but keep other valid actions available.
|
||||
- Before committing a lengthy action, the selected action state should expose the forecasted pulse consequence in plain terms such as isolated leak, restored pressure, downstream starvation, hazard growth, or reactor ready.
|
||||
|
||||
Pulse playback behavior:
|
||||
|
||||
- During a pulse, animate the configured steps as one short cascade of hazard motion, leak growth, quenching, evaporation, ignition, electrical conduction, and readiness updates.
|
||||
- Isolation valve toggles must visibly mark the affected underground branch, show stopped or restored pressure flow, and warn when downstream consumers or reactor feed will starve.
|
||||
- Sprinkler valve activation must visibly release blue sprinkler water at authored outlet cells and show the affected coolant service area losing pressure.
|
||||
- Evaporation must be communicated through shrinking wet overlays and stronger steam/cooling feedback on hot cells.
|
||||
- Wet cells that can spread electricity must use a distinct warning treatment so the player can distinguish helpful suppression water from dangerous electrified water.
|
||||
@@ -305,15 +308,16 @@ Controls:
|
||||
|
||||
Behavior:
|
||||
|
||||
- Keep tutorial text focused on action economy, pulses, sprinkler suppression, evaporation, wet-electricity hazards, forecasts, remedies, and reactor activation.
|
||||
- Keep tutorial text focused on action economy, pulses, isolation valves, sprinkler suppression, evaporation, wet-electricity hazards, forecasts, remedies, and reactor activation.
|
||||
- Tutorial level can reuse `LevelScreen` with a tutorial mode flag and guided prompts.
|
||||
- A tutorial level may demonstrate a single safe lengthy action. The first campaign level should not be a single-action demonstration; it should ask the player to choose between service restoration, isolation, repair, or activation timing.
|
||||
|
||||
## Reusable Controls
|
||||
|
||||
- `PrimaryButton`: consistent command button style and focus behavior.
|
||||
- `StateBadge`: color-coded label for `Stable`, `Caution`, `Critical`, `Ready`, `Lost`, and `Won`.
|
||||
- `LevelHeader`: level metadata, global state, and campaign progress.
|
||||
- `CellInspector`: selected cell details, visible hazards, sprinkler water, wet-electricity risk, prop state, underground details when available.
|
||||
- `CellInspector`: selected cell details, visible hazards, sprinkler water, wet-electricity risk, prop state, isolation valve branch impact, underground details when available.
|
||||
- `ForecastList`: ordered warnings from soonest to latest pulse.
|
||||
- `InventoryStrip`: remedy and heat shield counts.
|
||||
- `OutcomeOverlay`: shared base layout for win and loss overlays.
|
||||
@@ -339,6 +343,7 @@ Keep repeated controls as separate scenes so the level screen, tutorial, and ove
|
||||
- coolant/sprinkler water: blue
|
||||
- electricity: yellow
|
||||
- heat: orange or white-hot accent
|
||||
- isolated branch: muted carrier color with a broken-flow or valve marker
|
||||
- wet-electricity risk: yellow over blue or a distinct charged-water pattern
|
||||
- safe: neutral or green
|
||||
- caution: amber
|
||||
@@ -356,6 +361,7 @@ Keep repeated controls as separate scenes so the level screen, tutorial, and ove
|
||||
- Final campaign win reaches `GameWonScreen`.
|
||||
- Full failure endpoint reaches `GameOverScreen`.
|
||||
- The level screen distinguishes quick actions from lengthy actions.
|
||||
- The level screen makes sprinkler valve outlets, evaporation, and wet-electricity risk readable before and after a pulse.
|
||||
- The level screen previews selected lengthy-action pulse consequences before commitment.
|
||||
- The level screen makes isolation valve branch effects, sprinkler valve outlets, evaporation, and wet-electricity risk readable before and after a pulse.
|
||||
- Forecasts, inventory, selected cell inspection, and global level state have dedicated UI space.
|
||||
- Documentation stays aligned with `docs/design.md` when simulation rules change.
|
||||
|
||||
Reference in New Issue
Block a user