Reaver’s Rest Design Document
Page 12: Game State & Menu State Management
Overall Approach
The client uses a simple, lightweight state machine to manage transitions between menus, the hub, dungeons, and loading screens. All important game logic (combat, loot, economy) remains server-authoritative. The client focuses on smooth rendering, input handling, and displaying server-synced state.
Major Game States
Splash / Boot Screen Displays logo and loads core assets. Transitions automatically to Main Menu.
Main Menu Login / account creation, character select/create (initially simple username/password). Options: Play, Settings, Quit.
Hub (Blackthorn Hollow) Safe town state. Player can move freely, interact with NPCs/buildings, trade, check stash, use Aether Forge, view Bounty Board, and queue at the Dungeon Portal.
Loading / Dungeon Entry Triggered when queuing. Shows progress bar while receiving map data and baking static background. Includes flavor text.
Dungeon (Active Run) Real-time gameplay inside a procedurally generated dungeon. Combat, movement, looting, and extraction are active.
Respawn (Reaver’s Rest Back Room) Temporary state after death. Player appears in the back room of Reaver’s Rest with no equipped gear. Transitions back to Hub state.
Extraction Success Brief victory screen showing extracted items before returning to Hub.
System / Pause Menu Accessible via Start button in most states. Includes settings, logout, and quit options.
Button Mapping Across States
In Dungeon (Combat):
- A (tap) — Basic attack
- A (double-tap) — Charged / heavy attack
- B (hold) — Sprint
- B (double-tap) — Class special movement ability
- X — Equipped Ability Tome
- Y — Class starter ability (permanent)
- R1 (hold) — Raise physical shield / shield walk
- R2 (hold) — Open quick-use menu (potions, food, consumables)
- L1 — Cycle targets
- L2 — Open radial communication wheel
- Select — Open inventory / gear screen
- Start — System menu
In Hub (Blackthorn Hollow):
- A — Interact / talk to NPC or use object
- B — Sprint (limited or disabled in tight areas)
- X / Y — Context-sensitive (e.g., quick stash access or confirm actions)
- R2 — Quick-use consumables (if any)
- L1 / L2 — Not used or repurposed for radial / secondary actions
- Select — Open full inventory / stash / gear management
- Start — System menu
In Menus (Inventory, Stash, Aether Forge, Bounty Board, etc.):
- D-pad — Navigate options
- A — Confirm / select
- B — Back / cancel
- Select / Start — Close menu or switch tabs where appropriate
- Other buttons generally disabled or mapped to quick actions
Radial Communication (anywhere):
- L2 — Open radial wheel
- L1 / R1 — Cycle wheels
- D-pad — Select option
- A — Send
- B — Cancel
Menu Hierarchy & Flow
- Deep menus avoided — most actions are context-sensitive or proximity-based.
- Inventory / Gear Screen (Select in Hub): Tabbed view for stash, equipped gear, augments.
- Dungeon Queue Menu — Opens only when standing at the Dungeon Portal. Shows mode selection and group status.
- Quick-Use Menu (R2 in dungeon) — Simple list or wheel for potions and food items.
- System Menu (Start) — Always available; includes settings, logout, and quit.
Persistence & State Transitions
- Hub state is the “home” state — most persistence (stash, friends, unlocked augments) is saved here.
- Dungeon state is temporary — death or extraction returns the player to Hub.
- Loading state handles map baking and entity spawning.
- Respawn state is brief and transitions automatically back to Hub after a short delay or player input.
Design Guardrails
- Keep state transitions fast and obvious.
- Avoid nested or complex menus — prioritize context-sensitive actions.
- Button meanings must feel consistent and intuitive across states.
- All critical actions (especially combat) must remain responsive on the Miyoo.
- Menu states should never interrupt gameplay flow for more than a moment.
Version 0.4 • April 2026 Previous: Page 11 – Technical Implementation & Client Optimization Next: Page 13 – Save System & Persistence