← ClaudeAtlas

scene-flow-managerlisted

Architecture blueprint for game application flow: context state machines, boot/title/login/world/cinematic states, additive scene composition, atomic transitions, loading screens, online auth and enter-world handshakes, queues, reconnection, soft reset, async loading, lifecycle, suspend/resume, patching, FTUE, and loading UX. Use when designing boot flows, scene loading, login, transitions, onboarding, PSO warmup, or when relogin differs, traversal stutters, queues fail, or resume crashes.
Firzus/agent-skills · ★ 1 · AI & Automation · score 72
Install: claude install-skill Firzus/agent-skills
# Scene Flow Manager Build the application flow of a game: boot → title → (login) → world, and every transition between contexts — plus the loading/lifecycle tech underneath and the player-facing flow design around it. References: Genshin Impact's documented client flow (dispatch → gate → EnterScene handshake), the bootstrap + persistent managers + additive content pattern, Half-Life/ God of War (cold-open onboarding), and FFXIV (queue UX). Excluded (separate skills): in-world spatial streaming (`open-world-streaming`), the screens inside a context (`menu-ui-manager`). ## The architecture rules 1. **The flow is an explicit FSM of contexts.** Boot, Splash, Title, Login, Queue, InWorld, Cinematic, Credits... A context defines *which world is loaded* (scene set, active systems, input mode); screens are UI inside a context. Decision test: if reaching it requires scene load/unload, it's a context. The FSM lives in a root persistent owner; transitions go through one API — `RequestTransition(target, params)` — with an explicit legality table. **No `LoadScene`/`OpenLevel` anywhere else, ever.** 2. **Each context declares its scene set; the flow manager diffs.** The bootstrap pattern: Boot scene (index 0, minimal) → persistent managers scene (audio, save, input, UI root, the flow manager — never unloaded) → per-context content scenes loaded additively. Transition = diff current vs target sets: unload what's no longer needed, load what's missing, nev