Standalone Shell Flow And UI Lifecycle
The standalone shell owns the runtime flow around title, login, realm selection, character selection, loading, gameplay, pause, death, logout, reconnect, and recovery. It is a reducer-driven runtime surface, not just an editor preview.
Purpose
Use this page when adding a standalone screen, wiring an authored UI slot to a runtime action, or debugging focus, logout, reconnect, or zone-transfer recovery.
Flow States
Standalone screens should be state-scoped. Entering a screen creates the UI roots and controllers needed for that state; leaving it cleans them up. Avoid keeping hidden screen roots alive unless they are explicitly part of the state machine.
Settings Precedence
Standalone reads exported settings, user preferences, command-line inputs, and runtime service state. Precedence should be stable so packaged builds do not behave differently from local playtest without an obvious reason.
Shell Intent And Reducer Plan
UI events should become shell intents. The reducer decides state transitions, network actions, loading behavior, and cleanup. Screen widgets should not call deep runtime systems directly.
Authored Slot Mapping
Authored UI slots map to actions, text, and dynamic roles through slot manifests. If a button does nothing, inspect slot id, role mapping, shell intent conversion, and current flow state.
Connection Recovery
Connection lost, logout, death, and zone transfer should move through explicit recovery states. The shell should preserve enough context to show progress or recovery options without leaving gameplay UI attached to a dead session.