Add the screen/copy/button inventory and canonical terminology, standardize inspection/wand admit-refuse hints, name the review action Return to menu, and move radio action/hold/status labels into the string table. Headless 250/250, Python 97/97, docs check OK.
3.1 KiB
3.1 KiB
UI copy and button inventory
Status: audit in progress for the 0.9.2 UI polish patch.
Screen inventory
| Screen / panel | Owner | Primary actions | Notes |
|---|---|---|---|
| Start / venue menu | start_menu.gd |
Continue shift, choose venue, Help, Settings, Quit | Campaign status and free-play venues share this screen. |
| Tutorial card | tutorial_overlay.gd |
F1 skip | Non-blocking; no mouse capture. |
| HUD | hud.gd |
Observe, target, inspect, wheel, radio, flashlight, body camera, door, pause | No interactive controls; must stay mouse-transparent. |
| Action wheel | action_radial.gd |
Choose de-escalation/access/radio action | Confirm with Space/click; cancel with Esc/RMB. |
| Access inspection | hud.gd |
A = admit, D = refuse | Real access evidence cards. |
| Wand screening | hud.gd |
A = admit, D = refuse | Shows alert and carried items. |
| Radio / emergency | radio_panel.gd |
Send request / hold Send emergency, Cancel | Normal click vs emergency hold. |
| Pause | pause_overlay.gd |
Resume, restart, Settings, quit to menu | Esc resumes. |
| Settings | settings_panel.gd |
Apply, Cancel, Replay tutorial, Reset campaign, rebind controls | Destructive reset asks for confirmation. |
| Help | help_overlay.gd |
Filter controls, Close | Policy card and current bindings. |
| Shift review | shift_review.gd |
Continue campaign, timeline, return to menu, quit | Campaign next step is shown here. |
| Timeline | event_timeline.gd |
Previous, Next, Close | Review evidence stepper. |
Canonical terms
- Admit / refuse — access decisions. Do not alternate with “allow / deny” or “grant / reject” in player-facing controls.
- Warning — Level 2.
- Blocking — Level 3 positioning; do not call it “force”.
- Assistance — Level 4 radio call; emergency is Level 5.
- Body camera — always two words.
- Shift review — the end-of-shift screen; “review” alone is acceptable in prose.
- Continue campaign — advance to the next venue.
- Return to menu — leave the review to the venue menu (it does not start a new shift by itself).
- Send request — non-emergency assistance; Send emergency — emergency call.
Button/label issues found
- HUD inspection and wand used “allow/deny” versus “admit/refuse”; both now use A = admit · D = refuse entry.
- Shift review’s old “Run another shift” actually returned to the menu; renamed Return to menu.
- Radio emergency action used all-caps while assistance used sentence case; both are now sentence case, with the warning in the panel title/hold hint.
- Normal radio send was previously wired only to the emergency hold handlers; fixed in 0.8.1 and covered by
test_radio_panel.gd.
Remaining audit work
- Inventory hardcoded player-facing strings screen by screen and move them to
content/strings.en.json. - Verify focus/hover/pressed/disabled states with keyboard, gamepad and mouse.
- Test long strings and 1.75x HUD font scale.
- Capture every dialog/button state and run
screen_designs.py compareplus the pinned judge.