Files

59 KiB

Aetherbound Guild: Screen And State Map

Authority: complete player-facing landscape navigation, page purposes, interaction states, onboarding, return paths, and endgame presentation.

Product source: .agent-taskgraph/spec.md revision design-spec-r3.

Stage: design-only. This document specifies intended presentation; it does not claim implemented behavior, device validation, or human comprehension.

1. Experience Contract

Aetherbound Guild is operated through a repeatable decision path:

review pressure -> inspect offers -> recruit or dismiss when eligible -> equip -> reorder the party line -> choose risk -> observe automatic battle -> diagnose -> resolve losses and rewards -> adapt

Every player-facing screen answers six questions in its first viewport:

  1. Where am I in the run?
  2. What changed since I arrived?
  3. What decision is available now?
  4. What does that decision cost or expose?
  5. Can it be reversed?
  6. Where will Back return me?

The interface presents one primary action per decision region. Inspection is always reversible. Purchases, dismissal, risk commitment, retreat, reward selection, recovery expenditure, and destructive data actions show a review before they change authoritative state.

2. Integration Bindings

Presentation uses named bindings for values and rules owned by the product or content workstreams. A binding is displayed only after its source resolves; the UI must not substitute a guessed number, price, formula, or probability.

Binding Presentation use Owning authority Unresolved design state
BIND:RUN_PHASE current loop step and legal destinations core systems named phase plus Rules pending integration in design fixtures
BIND:DIFFICULTY_RULES run setup options, consequences, and postgame compatibility difficulty/core systems Begin remains disabled until resolved
BIND:PROVISIONAL_RECRUIT_OFFERS one stable four-offer set, generated Recruit fields, selected stable IDs, and run-creation receipt recruitment/save SYS-005 cannot create a run until exactly four unique complete offers resolve
BIND:RUN_RESOURCES balances, deltas, affordability economy label and non-numeric placeholder
BIND:SHOP_OFFERS available recruit and item offers shop/content structurally complete sample rows with no authoritative values
BIND:SHOP_REFRESH refresh cost, limit, result policy economy/shop disabled action with binding name
BIND:RECRUIT_TRANSACTION price, capacity effect, receipt recruitment/economy review skeleton with no commit
BIND:DISMISSAL_ELIGIBILITY total live Recruits across deployed and reserve, operation restrictions, and disabled reason recruitment/core systems dismissal remains disabled until eligibility is verified
BIND:DISMISSAL_OUTCOME retained, returned, or lost value recruitment/economy consequence field marked unresolved
BIND:RECRUIT_SCHEMA name, profession, trait, attributes, one equipped item or null, individual level/XP, history content/core systems field labels remain; missing fields show Pending
BIND:EQUIPMENT_RULES one universal slot, forms, eligibility, conflicts, replacement result equipment/content incompatible reason requires source data
BIND:ARTIFACT_RULES active shared modifiers, acquisition, conflicts, and lifecycle artifacts/core systems ledger remains read-only until resolved
BIND:PARTY_CAPACITY current simultaneous deployment and growth progression/simulation count area displays binding, never a guessed cap
BIND:PARTY_ORDER_EFFECTS exposure, reach, protection, movement, replacement battle/core systems preview lists only sourced effects
BIND:RISK_OPTIONS risk choices, entry costs, known outcomes run/economy choice remains unavailable until resolved
BIND:BATTLE_SNAPSHOT actors, time, events, health, status, targets deterministic battle battle mock state is labeled non-authoritative
BIND:BATTLE_SPEEDS available playback speeds and restrictions battle/accessibility control renders from supplied options
BIND:RETREAT_OUTCOME timing, losses, retained state failure/economy review cannot commit while unresolved
BIND:CASUALTY_OUTCOME death, survival, replacement, inventory handling failure/recruitment consequence list waits for receipt
BIND:RESULT_CAUSALITY first collapse and downstream effects battle validator Cause unavailable is an error, not an empty success
BIND:REWARD_OPTIONS choices, eligibility, claim receipt reward/content no generic fallback reward
BIND:RECOVERY_OPTIONS legal recovery paths, costs, consequences recovery/economy disabled path explains missing rule source
BIND:RUN_FAILURE run-ending condition and retained progression failure/save summary waits for authoritative transaction
BIND:RUN_ABANDONMENT explicit voluntary run-close consequence, receipt, and destination failure/save destructive action remains disabled until resolved
BIND:PROGRESSION unlocks, prerequisites, receipts progression/content unknown future nodes stay undisclosed
BIND:POSTGAME postgame rules, eligibility, modifiers difficulty/postgame entry remains locked with sourced requirement
BIND:SAVE_STATE slot health, resume point, migration, conflict save safe recovery path only

Binding failure is a presentation error with a safe exit. It never silently turns into zero cost, no consequence, a default target, or a successful claim.

3. Navigation And Shells

3.1 Global Navigation

Boot
|- First-launch setup
`- Title
   |- Continue -> Resume review -> last safe state
   |- Run ledger -> New run / Open run / Save recovery
   |- Records
   |- Postgame (when eligible)
   `- Settings / Credits / Licenses

Guild desk
|- Forecast
|- Shop -> Offer detail -> Recruit review / Item review
|- Roster -> Recruit detail -> Dismissal review
|- Equipment -> Item comparison
|- Party line -> Readiness review
|- Active artifacts / Progression / Records
|- Run abandonment review
`- Risk board -> Risk review -> Battle opening

Battle
|- Live automatic battle -> Inspect
|- Pause and speed -> Settings / Retreat review
|- Background or suspend -> Resume review
`- Result diagnosis
   |- Casualty resolution (when required)
   |- Reward choice (when earned)
   |- Recovery (when required)
   |- Run abandonment review (explicit player choice)
   |- Run end summary (when ended)
   `- Guild desk / next risk choice

Postgame
|- Final boss settlement -> First Chronicle decision
|- Oath Season rules review -> New generated run
|- Challenges and records
`- Oath Season result -> Oath Season hub / Final Ledger / ordinary New Run

3.2 Shell Responsibilities

Shell Persistent information Primary surface Persistent exits
Title active language, accessibility shortcut, save health illustrated guild threshold and current run summary Settings, run ledger, credits
Guild run phase, sourced resources, save state current preparation decision Shop, roster, equipment, party line, risk board
Battle objective, playback state, greatest current danger actors and event projections Inspect, pause; retreat only through review
Result outcome, earliest causal event, unresolved transactions causal timeline and affected recruits next required resolution only
Records filter, discovery state, selected entry readable catalog or history previous safe screen
Settings changed values and current category live preview or setting rows Apply/Discard and exact caller

Back closes only the top overlay. From a base screen it returns to the named parent in the inventory below. Back never commits, claims, purchases, equips, reorders, dismisses, retreats, or starts a battle.

3.3 Overlay Order

Only the top layer owns input:

base screen -> inspect drawer -> selection surface -> transaction review -> confirmation

A confirmation may not open another confirmation. A system interruption closes no layer until the operation result is known. When focus returns, it returns to the invoking control or the nearest still-valid sibling.

4. Input Profiles

Each inventory row names one profile. Mouse and keyboard use the controller focus order plus pointer shortcuts; no workflow depends on hover.

Profile Touch Controller Focus and cancel rule
NAV tap destination; horizontal swipe is optional directional focus; shoulder buttons change top-level destination focus enters heading then primary content; Cancel returns to parent
LIST tap row; drag scroll; long press opens the same inspect action vertical focus; left/right changes defined filter or comparison target virtualization preserves logical focus by stable item ID
SELECT tap option then explicit action focus option, South selects, South on primary commits review selection is not commitment; Cancel clears selection first
ORDER tap Recruit then destination; drag is optional; left moves toward protected rear and right toward exposed front select Recruit, move focus left/rear or right/front, confirm destination; bumpers shift one logical position undo is available until readiness commitment; position 0 remains the rightmost exposed front
BATTLE tap actor/event to inspect; dedicated pause and speed controls bumpers cycle actors/events; face buttons open inspect and pause focus never enters moving world elements; closing inspect resumes prior playback state
MODAL tap explicit action; destructive hold duration is setting-aware focus starts on Cancel; destructive action requires second explicit input or hold Cancel spends nothing and returns focus to invoker
SETTINGS native toggle, segmented control, slider, menu, remap row predictable row navigation; left/right adjusts; South activates uncommitted changes prompt Apply/Discard on exit

Input-device change during selection, ordering, remapping, or confirmation freezes the transaction and shows the equivalent controls for the new device. No resource is spent and no selection is lost.

5. Complete Screen Inventory

The tables are normative. Empty / loading, Error / confirmation, and Interruption / return are required for every listed screen, including pages that are not expected to be empty during ordinary play.

5.1 Boot, Title, And Runs

ID / screen / input Purpose Primary action and consequence Empty / loading Error / confirmation Interruption / return
SYS-001 Boot and verification / NAV Verify rules, content, settings, and BIND:SAVE_STATE before exposing a run. None; proceed only after all required sources are valid. Empty install shows required local content status. Loading names the current verification step and progress. Recoverable source failure offers Retry; unsafe mismatch offers diagnostics and Exit. No confirmation. Suspend resumes verification from a safe checkpoint. Return exits to platform only before Title is legal.
SYS-002 First-launch setup / SETTINGS Establish language, safe area, 100/115/130% text, contrast, reduced motion/flashes, captions, and input prompts. Apply settings; writes preferences only. Missing locale falls back to sourced English text and names the missing pack. Loading renders the preview inline with text status. Invalid safe area or unavailable output is explained. Apply review lists changed accessibility settings. Device change refreshes prompts without reset. No Back until one usable preset has been applied; later visits return to caller.
SYS-003 Title / NAV Identify the game, current safe resume state, save health, and legal entry paths. Continue; opens SYS-006 and does not immediately advance simulation. No run promotes New Run. Loading affects only the run summary and keeps Settings usable. Save warning links to SYS-007; offline optional service warning does not block local play. No confirmation. Suspend returns to the same selection. Back invokes platform exit review; child pages return here.
SYS-004 Run ledger / LIST Inspect run slots, last safe state, play time, difficulty, and health. Open selected run; opens resume or recovery review. No runs explains New Run. Loading uses per-slot skeletons with slot names retained. Corrupt, incompatible, conflict, and migration states name their safe next action. Delete and overwrite require SYS-005 or SET-009 review. Refresh or cloud interruption keeps the last verified local list. Back returns to Title.
SYS-005 New run setup / SELECT Review Contract/difficulty, then inspect and compare four stable provisional generated Recruit offers and choose exactly two at no Coin cost before run creation. With exactly two selected, Review Company opens the creation review; Create Run commits those two stable Recruit IDs, leaves the other two unretained, creates the run, and opens the first Market. Empty or non-four offer output is invalid, not a legal empty choice. Loading shows four fixed positions, the named operation, and no selectable identity until its stable ID and required fields resolve. Duplicate IDs, missing Profession/Trait cost, stale offer-set revision, slot collision, unsupported ruleset, or creation failure blocks commit with retained safe setup. Review names both selected Recruits, the two unchosen offers, no-Coin cost, slot, difficulty, and Revise Recruits; zero, one, three, or four selected cannot open review. Touch and controller can inspect, compare, toggle, revise, cancel, and create without drag. Suspend preserves the verified offer-set ID and selected stable IDs without creating a run; resume revalidates the same set. Back before commit returns to Run Ledger; interruption after receipt resumes at the first Market.
SYS-006 Resume review / SELECT Explain current phase, last committed transaction, unresolved consequence, and resume destination. Resume; enters the exact safe state from BIND:SAVE_STATE. No active run offers Run Ledger. Loading shows the saved destination name. Invalid snapshot routes to Save Recovery. Resuming battle requires explicit review of playback state. Suspend changes nothing. Back returns to Title or Run Ledger, whichever invoked it.
SYS-007 Save recovery / SELECT Compare valid save lineage, migration, conflict, and known lost interval. Load selected valid state; changes active lineage and records a receipt. No valid recovery offers diagnostics and safe deletion path. Loading validates and names each candidate. Failed recovery cannot overwrite the last valid source. Selection review lists timestamp, ruleset, lost interval, and reversibility. Suspend retains candidates but makes no choice. Back returns to Run Ledger.
SYS-008 Credits, licenses, and data notice / LIST Present authorship, licenses, privacy, local/offline behavior, and external-link policy. Open section; no run consequence. No search result offers Clear Search. Loading long text retains the current local section. Missing license is a blocking production defect with diagnostics. External links require destination confirmation. Suspend preserves scroll position. Back returns to the invoking Title or Settings screen.

5.1.1 SYS-005 Staged-State Contract

SYS-005 is one player-facing page with staged states. Stage changes preserve the page ID, safe-area layout, offer-set ID, selected stable IDs, and focus history; they do not create hidden pages or increment the 50-page inventory.

Stage First-viewport surface Primary action Required boundary and return
A Contract setup selected Contract, enemy families, boss rule, reward breadth, difficulty consequence, target slot Load Provisional Offers no Recruit is selected or generated by a tutorial recommendation; Back returns to Run Ledger
B Four-offer choice four equally weighted stable offer markers; generated name, base Profession job, Trait benefit/cost, rolled read, default equipment read, No Coin cost; selected count 0/2..2/2 Review Company, enabled only at 2/2 Inspect changes no selection; Compare accepts any two offer IDs; selecting a third is rejected until one current selection is cleared
C Creation review the two selected Recruits together, two explicitly unchosen offer IDs, Contract/difficulty/slot, no-Coin transaction, first-Market handoff Create Run Revise Recruits returns to stage B with the same four offers and two selections; Cancel changes nothing
D Pending creation stable two-Recruit summary, named creation operation, progress and Cancel only when save authority permits none while pending duplicate Create input is ignored; failure returns to stage C with no run and no changed offer set
E Receipt and handoff created run receipt, selected two as living Company, opening Line capacity, first-Market objective Open First Market the two unchosen offers are not retained; first Market must expose two affordable base-Profession hire opportunities without auto-selecting either

Every offer exposes BIND:RECRUIT_SCHEMA through one common comparison order: generated name, base Profession job and target/reach responsibility, Trait benefit, Trait cost, rolled attribute distribution, default Profession equipment, and stable offer ID. Rarity, portrait prominence, offer position, animation, or a tutorial highlight cannot imply a recommended opening pair.

Required invalid and interruption states:

  • zero, one, two, three, or more than four returned offer rows are an invalid source result; the page shows expected 4, received count, Retry Same Set, and Return to Run Ledger, with Create Run unavailable;
  • duplicate stable IDs, unresolved Profession, unresolved Trait benefit/cost, or incompatible content revision marks the affected offer and blocks all selection commitment;
  • before any stable IDs resolve, loading reserves four positions but exposes no generated identity; after an ID resolves, sort/filter/animation cannot move it to another position;
  • suspending stages B or C stores no run creation receipt. Resume restores the same verified offer-set ID, selections, comparison pair, and focus. If that set cannot be verified, a recoverable error replaces the choice; the UI never silently rolls four new offers; and
  • LOC:PROVISIONAL_SELECTED_COUNT, LOC:PROVISIONAL_NO_COIN_COST, LOC:PROVISIONAL_UNCHOSEN_NOT_RETAINED, LOC:REVISE_PROVISIONAL_RECRUITS, and every Profession/Trait comparison require English (en) and Simplified Chinese (zh_CN) fixtures at 100/115/130% without obscuring selection, Inspect, Compare, Back, or Create Run.

5.2 Guild, Shop, And Recruits

ID / screen / input Purpose Primary action and consequence Empty / loading Error / confirmation Interruption / return
HUB-001 Guild desk / NAV Show current pressure, preparation readiness, latest outcome, resources, and all preparation destinations. Open Risk Board when ready; navigation itself changes nothing. First run uses a compact opening decision prompt. Loading each status region leaves destinations usable. Missing mandatory binding blocks only its dependent destination and names the owner. No confirmation. Suspend records no new transaction. Child pages return here with the changed field highlighted.
HUB-002 Forecast / LIST Explain upcoming known threats, opportunities, deadline, and information confidence. Track pressure; changes the Guild desk summary only. No optional forecast still shows the mandatory next pressure. Loading preserves last verified forecast with timestamp. Stale or incomplete forecast labels uncertainty instead of inventing certainty. Tracking needs no confirmation. Suspend preserves filters. Back returns to Guild desk.
SHP-001 Shop / LIST Compare BIND:SHOP_OFFERS, affordability, roster/equipment fit, and refresh consequence. Inspect offer; purchase is never performed from the list row. Sold out explains next sourced restock. No matching filter offers Clear Filters. Loading keeps balances visible and rows inert. Stale, duplicate, or unavailable offers refresh before review. Refresh and any paid action require exact cost confirmation. Suspend cancels no verified purchase and polls receipts on resume. Back returns to Guild desk.
SHP-002 Recruit review / SELECT Evaluate generated name, profession, trait benefit/cost, rolled attributes, one starting item, individual level/XP, survival history, price, and party impact. Recruit; commits BIND:RECRUIT_TRANSACTION after review. Missing roster comparison states which binding is pending. Loading shows stable recruit identity, never a substitute recruit. Offer expired, insufficient value, invalid capacity, or duplicate receipt keeps the prior state. Confirmation states exact Recruit, level, starting item, cost, capacity effect, and undo policy. Suspend after commit checks receipt before retry. Cancel returns to Shop on the same stable offer ID.
SHP-003 Item offer review / SELECT Explain item behavior, eligible recruits, owned conflicts, price, and likely party effect. Buy; adds the item according to sourced inventory rules. No eligible recruit is informative, not an error. Loading retains item identity and offer price timestamp. Expired, unaffordable, full-policy, or duplicate claim states preserve balance. Confirmation lists cost, destination, and conflict. Suspend reconciles the transaction receipt. Cancel returns to Shop on the offer.
REC-001 Roster / LIST Scan all cumulative Recruits, deployed status, profession, trait, readiness, equipment issue, and survival history. Inspect Recruit; changes nothing. Zero live Recruits is shown only while resolving casualty recovery or Company collapse; it routes to the sourced recovery/closure state, never an ordinary Shop. No filter match offers Clear Filters. Loading uses stable roster order. Binding failure preserves last verified summary and blocks dependent edits. No confirmation. Suspend preserves selection and filters. Back returns to Guild desk or the required recovery/closure screen.
REC-002 Recruit detail / NAV Read one Recruit's sourced identity, mechanical history, current role, equipment, position, and legal actions. Open Equip or Party Line; navigation changes nothing. Dismiss is a separate destructive action. Missing optional history states No recorded battles. Loading keeps name, stable ID, and the last verified BIND:DISMISSAL_ELIGIBILITY. Deleted/stale Recruit returns to Roster with explanation. When total live Recruits across deployed and reserve equals one, Dismiss remains visible but disabled with One member must remain; its explanation directs the player to the separate Run Abandonment Review. Suspend preserves the selected tab. Back returns to Roster and its prior scroll position.
REC-003 Dismissal review / MODAL State exactly what leaves the run, what is retained, affected party/equipment references, verified eligibility, and BIND:DISMISSAL_OUTCOME. Dismiss Recruit; permanently applies the sourced transaction only after eligibility is revalidated. If dismissal is already illegal, the review does not open; Recruit Detail shows the disabled reason and abandonment route. Loading must verify current total live Recruits before the destructive action enables. Confirmation uses generated name, stable ID, outcome, and an explicit destructive gesture. If a stale confirmation is submitted after the total live count falls to one, reject and close the review with no Recruit mutation and no rebate; Recruit Detail shows One member must remain and the separate abandonment action. Suspend before commit cancels nothing; after commit verifies receipt. Cancel returns to Recruit Detail.

5.3 Equipment And Party Preparation

ID / screen / input Purpose Primary action and consequence Empty / loading Error / confirmation Interruption / return
EQP-001 Equipment workbench / LIST Equip a selected Recruit while showing individual level/XP, its one universal slot, eligible inventory and sourced behavior changes. Equip selected item; atomically returns the prior item or null and changes the one slot only after comparison review. No owned items points to Shop. No eligible item explains Profession/form requirements. Loading retains the current slot. Incompatible, already used, stale inventory, or ruleset error blocks commit with reason. Confirmation states the returned prior item, one-slot result, conflicts, and before/after behavior. Suspend before receipt keeps the old item; resume reconciles receipt. Back returns to Recruit Detail or Party Line caller.
EQP-002 Item comparison / SELECT Compare the one current item and candidate in the vocabulary used by party preview, battle, and results. Apply candidate; returns to workbench with changed effects and returned prior item highlighted. Empty candidate keeps current item and offers Choose Item. Empty current slot is explicit. Loading never clears current values. Unknown derived effect is labeled unresolved and blocks Apply when consequence-critical. Confirmation lists the exact old/new item IDs and affected saved plan references. Suspend keeps comparison but performs no equip. Back returns to Equipment with selection intact.
ART-001 Active artifact ledger / LIST Inspect run-wide artifact rules, acquisition source, interactions, conflicts, and lifecycle without treating them as recruit equipment. Inspect artifact; changes nothing unless BIND:ARTIFACT_RULES supplies a separate legal action. No active artifacts explains their sourced acquisition route. Loading retains verified active rules. Missing or conflicting artifact references identify stable IDs and block dependent commitment. Any lifecycle-changing action requires a separate sourced confirmation. Suspend preserves selection. Back returns to Guild desk or the Reward caller.
PTY-001 Party line / ORDER Select simultaneous Recruits on one visual line from protected rear at left to exposed front at right, with position 0 at the front and larger numbers extending leftward; preview sourced targeting, protection, reach, healing, movement, and replacement changes. Save order; changes the prepared party snapshot but does not start battle. Zero live Recruits is a casualty/Company-collapse settlement state and routes to sourced recovery or run close; ordinary dismissal never creates it. No eligible deployable Recruit explains the recovery or roster reason. Loading preserves last committed order and rear-left/front-right endpoints. Invalid count, duplicate Recruit, incompatible state, or stale capacity identifies the exact numbered position. Confirmation is required only when removing a currently prepared Recruit has a sourced consequence. Suspend stores only the last committed order; uncommitted moves are offered to Restore or Discard. Back returns to Guild desk.
PTY-002 Readiness review / SELECT Summarize the frozen rear-left/front-right order, position numbers, protection contributors toward the right/front, equipment issues, known pressure coverage, Reserve state, and BIND:PARTY_CAPACITY. Accept preparation; records a reviewable battle-plan snapshot. Empty party blocks acceptance and points to Add Recruits. Loading verifies all stable IDs without reversing visual order. Invalid or outdated effect opens the owning edit screen. Confirmation states warnings that are allowed but does not overstate outcome prediction. Suspend preserves the last accepted snapshot. Back returns to Party Line.
RSK-001 Risk board / SELECT Compare sourced risk options by known pressure, uncertainty, entry cost, reward class, recovery exposure, and current party coverage. Review selected risk; selection alone changes nothing. No legal option explains whether preparation, progression, or recovery is required. Loading retains accepted party summary. Unresolved or stale option cannot be committed. No confirmation until RSK-002. Suspend preserves selection only locally. Back returns to Guild desk.
RSK-002 Risk commitment / MODAL Present the chosen option, known threats, uncertainty, cost, reward class, retreat implication, and frozen party snapshot. Begin battle; commits the sourced risk transaction and opens Battle Opening. Missing party snapshot or option returns to the owning screen. Loading verifies all dependencies. Stale resources, changed recruit state, or invalid rule reopens the changed source. Confirmation is the page's purpose and names irreversible effects. Suspend before receipt changes nothing; after receipt resumes at Battle Opening. Cancel returns to Risk Board.

5.4 Automatic Battle

ID / screen / input Purpose Primary action and consequence Empty / loading Error / confirmation Interruption / return
BAT-001 Battle opening / BATTLE Establish objective, the visible No combat respawn / no Reserve auto-entry rule, player order from protected rear at left to position 0 exposed front at right, enemy-facing direction, first known threat, playback speed, and inspection affordance. Start observation; releases the deterministic timeline. Missing actor data blocks start and names the binding. Loading shows verified actor silhouettes, position markers, and progress. Snapshot mismatch returns safely to Risk Commitment or Resume Review. Start needs explicit input only on first onboarding or resumed state. Suspend preserves an unopened snapshot. Back is disabled after risk commitment; Pause offers legal exits.
BAT-002 Live battle / BATTLE Make automatic resolution readable: current objective, permanent encounter casualty rule, urgent cause, actor state, target relation, event sequence, pause, speed, inspect, and retreat access. Inspect the highlighted cause; battle decisions are diagnostic controls only. No current event shows Waiting for next event, not a blank field. Loading occurs only during safe resume and the timeline does not advance. Invalid event data pauses and offers Retry Snapshot or Safe Exit. Speed change needs no confirmation; retreat is separated. Backgrounding or device loss freezes according to save rules and routes to BAT-006. Closing inspect restores the prior legal playback state.
BAT-003 Actor and event inspect / BATTLE Explain selected actor, action, target, status source, order interaction, equipment contribution, and causal neighbors. Pin event or close; changes no battle result. No related event states why. Loading pauses inspect data at the selected event ID. Hidden information states the discovery rule; missing required cause pauses with diagnostics. No confirmation. Suspend routes to Resume Review with the selected event remembered. Back closes inspect to Live Battle.
BAT-004 Pause and speed / BATTLE Freeze observation where rules allow, expose playback options, settings, event log, controls, and retreat entry. Resume; restores the selected legal speed. No speed alternatives shows one sourced speed. Loading settings does not resume time. Disallowed speed explains the rule. Applying settings may require its own Apply/Discard review. App suspend remains paused. Back resumes only when the player explicitly chooses Resume; Settings returns here.
BAT-005 Retreat review / MODAL State BIND:RETREAT_OUTCOME, timing, interruption rule, affected recruits, losses, retained state, and next destination. Begin retreat; commits only after the full consequence is sourced. Unavailable retreat shows exact condition and Close. Loading keeps battle paused. Stale outcome refreshes before confirmation; duplicate input returns the original receipt. Confirmation uses explicit Begin retreat. Suspend before commit returns to Pause; after commit resumes the retreat resolution snapshot. Cancel returns to Pause.
BAT-006 Battle resume review / SELECT Explain saved time, playback state, pending events, latest committed receipt, and whether retreat resolution is active. Resume from verified snapshot; never resumes in motion without review. No resumable battle routes to the last safe Result or Guild state. Loading validates the snapshot. Invalid snapshot uses save recovery and never starts a partial simulation. Resume confirmation states current speed and pause behavior. Repeated suspend leaves the battle frozen. Back returns to Title without discarding the snapshot.

5.5 Result, Death, Reward, And Recovery

ID / screen / input Purpose Primary action and consequence Empty / loading Error / confirmation Interruption / return
OUT-001 Battle result and diagnosis / LIST Show outcome, first meaningful divergence, decisive interaction, downstream costs, survivor state, and available next resolution. Continue to the earliest unresolved consequence. No preventable cause states No actionable divergence and still shows decisive events. Loading preserves outcome receipt. Missing causal data is an explicit diagnostic error; transaction remains paused. No confirmation. Suspend preserves the result receipt and scroll position. Back does not bypass unresolved consequences.
OUT-002 Death and loss review / SELECT Name each dead recruit, stable identity, profession, trait, level, survival history, equipment disposition, party gap, and sourced replacement implication. Acknowledge resolved losses; advances to Reward, Recovery, or Run End. No deaths skips this screen. Loading renders known identities before disposition details. Incomplete casualty receipt blocks acknowledgement and offers Retry. Confirmation is acknowledgement of an already committed result, not a reversal offer. Suspend preserves unresolved acknowledgement. Back returns to Result diagnosis but cannot alter battle outcome.
OUT-003 Reward choice / SELECT Compare BIND:REWARD_OPTIONS by changed decision, eligible target, conflicts, and run impact. Claim selected reward; commits one sourced receipt. No earned reward explains the result and offers Continue. Loading preserves result context. Expired, ineligible, duplicate, or storage-policy state returns a deterministic next action. Confirmation names reward, target, conflicts, and skip outcome. Suspend checks receipt before retry. Cancel returns to Result only if reward choice is not mandatory.
OUT-004 Recovery / SELECT Compare legal recovery paths by cost, time, recruit availability, replacement opportunity, and next planning state. Commit recovery; changes the run according to BIND:RECOVERY_OPTIONS. No recovery required offers Continue. No viable path exposes the run-ending route. Loading retains casualty and resource facts. Unaffordable, stale, or illegal paths remain inspectable with reason. Confirmation lists full transaction and next destination. Suspend before receipt spends nothing; after receipt resumes at its destination. Back returns to Result or Death Review.
OUT-005 Run end summary / LIST Explain BIND:RUN_FAILURE or clear, retained progression, losses, discoveries, decisions unlocked, and exact next choices. Finish run; closes the run and applies the verified progression receipt. No progression gain is stated plainly. Loading waits for all receipts before enabling Finish. Duplicate or failed progression application preserves the run as unresolved. Finish confirmation is needed only if viewing unresolved optional pages would be lost. Suspend preserves the unresolved summary. Back remains within summary tabs; Finish returns to Title or Progression.
OUT-006 Run abandonment review / MODAL Keep explicit voluntary run closure separate from Recruit dismissal and state every consequence from BIND:RUN_ABANDONMENT. Abandon run; closes the run through one sourced receipt without selecting or dismissing a Recruit. If abandonment is not legal from the current state, show the reason and safe return. Loading verifies closure consequences before enabling the destructive action. Confirmation names the run, cleared run-only state, retained history/progression, destination, and irreversibility; default focus is Cancel. A stale or duplicate operation returns a readable rejection or original receipt without partial closure. Suspend before commit changes nothing; after commit verifies the closure receipt. Cancel returns to Guild desk or Result, whichever invoked it.

5.6 Progression, Records, And Postgame

ID / screen / input Purpose Primary action and consequence Empty / loading Error / confirmation Interruption / return
PRO-001 Run progression / LIST Show current level paths, profession changes, capacity growth, prerequisites, and decisions opened within the active run. Inspect or apply a legal sourced choice. No pending choice shows next prerequisite. Loading retains current applied state. Stale prerequisite or invalid choice refreshes before commit. Irreversible branch or reset uses explicit comparison confirmation. Suspend reconciles any receipt. Back returns to Guild desk or Result caller.
PRO-002 Guild Charter / LIST Show current Renown, eight horizontal Region seals, prerequisite tracks, breadth-only packet cards, exact costs, future-run effects, and claimed receipts without resembling a radial power tree. Tap a Region seal, Tap one eligible packet, then review and claim it; the receipt changes future-run catalog, trial, threat-information, or Oath-law breadth and never raw power. First-run state explains how Renown is earned and keeps all eight seals visible. Loading reserves stable claim IDs and disables packet selection until cost, prerequisites, and effect resolve. Unknown content stays undisclosed. Failed prerequisites and insufficient Renown preserve selection with reasons; duplicate claim returns its receipt. Confirmation shows before/after Renown, prerequisites, future-run effect, and No permanent combat power. Suspend retains selected Region, packet and scroll anchor. Back before commit spends nothing; after commit it verifies the receipt and returns to Title, Guild, or Run End caller.
PRO-003 Records and compendium / LIST Browse professions, traits, equipment, artifacts, enemies, bosses, regions, recruit histories, and battle reports without spoilers. Inspect entry; changes no run result. Category empty states discovery route when allowed. No search result offers Clear Search. Loading keeps category context. Missing referenced entry reports stable ID and diagnostics. Inspection requires no confirmation and external links do not exist here. Suspend preserves category, filter, and scroll ID. Back returns to caller.
PST-001 First Chronicle decision / SELECT After the sixteenth boss and verified settlement, compare Complete the First Chronicle with Open the Oath Season; state that both archive the surviving Company and close the run. Tap one choice, review its destination, then confirm: Chronicle shows the finite ending/Final Ledger and Title; Oath Season opens postgame rule review for a new generated run. Before final eligibility, show the exact remaining boss requirement while ordinary New Run remains visible. Loading keeps the verified final-boss receipt and disables both commits. Missing settlement, unresolved casualty/reward, or stale first-clear state blocks both choices. Confirmation repeats archived Company, closed Coin/Credit, retained Records/Renown, destination, and no playable Recruit carryover. Suspend retains the uncommitted choice and final receipt. Back stays in final result. After receipt, resume at Final Ledger/Title or Oath Season hub; never reopen the cleared run.
PST-002 Oath Season hub and run review / SELECT Compare eligible Oath laws, conflicts, known consequences, difficulty, save slot, Guild Charter breadth, and the distinction from ordinary New Run. Tap laws to assemble a compatible set, review the complete rules, then create a new generated run; no cleared Recruit is selectable. No eligible law explains its Charter requirement and still offers ordinary New Run. Loading verifies modifier, profile and slot IDs before Begin. Conflict, expired ruleset, missing eligibility, or slot collision preserves selection with reasons. Confirmation lists every active law, difficulty, generated-run promise, and irreversible setup choice. Suspend saves the uncommitted form. Cancel returns to Title/postgame hub. Interruption after receipt opens the new run's provisional Recruit offers.
PST-003 Oath Season result / LIST Explain challenge outcome, laws that mattered, Record change, earned Renown, archived generated Company, and next legal attempt. Finish result; applies verified Record/Renown receipts and returns to the Oath Season hub, Final Ledger, or ordinary New Run. No Record or Renown change is stated plainly. Loading waits for all receipts and preserves ordinary New Run access. Duplicate or invalid score is separated from local clear status. Finish confirmation appears only while a claim remains unresolved. Suspend preserves the result. Back stays within result tabs; Finish never resumes the closed Company.

5.7 Settings And Data

ID / screen / input Purpose Primary action and consequence Empty / loading Error / confirmation Interruption / return
SET-001 Settings index / SETTINGS Navigate Display/Text, Motion/Effects, Audio/Captions, Controls, Language, Gameplay Information, Save/Data, and Reset. Open category; no run consequence. No changed settings shows current preset. Loading categories does not block Back. Invalid stored setting uses documented safe default and identifies it. No confirmation. Suspend preserves selected category. Back returns to exact caller: Title, Guild, or Pause.
SET-002 Display and text / SETTINGS Set safe area, brightness, contrast, color-independent cues, and 100/115/130% UI/text with live preview. Apply display settings. Unavailable display option remains visible with reason. Preview loading shows text sample. Unsupported combination offers nearest supported result without auto-applying. Apply/Discard review appears on exit with changes. Output change freezes preview and retains values. Return to Settings index.
SET-003 Motion, flashes, and power / SETTINGS Set reduced motion, reduced flashes, shake, hit pause, particle density, and low-power behavior with a non-combat sample. Apply effects settings. Unsupported effect control explains platform behavior. Sample loading never flashes. Unsafe or unavailable combination reverts preview only. Apply/Discard on exit. Backgrounding stops sample. Return to Settings index.
SET-004 Audio and captions / SETTINGS Set master/music/ambience/SFX/voice-when-present levels, mute, dynamic range, captions, event labels, and mono-compatible cues. Apply audio settings. Missing output or absent voice category is stated. Test loading is silent with visible status. Output failure keeps captions and visual cues active. Apply/Discard is the exit confirmation. Output change pauses test and retains settings. Return to Settings index.
SET-005 Controls / SETTINGS Inspect and remap touch, keyboard/mouse, and controller actions; set hold timing and vibration. Save mapping. No controller attached still permits mapping inspection. Loading keeps safe Cancel binding. Conflict names both actions and requires resolve; essential actions cannot be left unbound. Save confirmation lists changed mappings. Device loss pauses capture and spends no input. Return to Settings index after Apply/Discard.
SET-006 Language and locale / SETTINGS Select English or Simplified Chinese and preview mechanics, dates, numbers, and wrapping. Apply language; reloads localized text without changing run state. Missing optional locale pack names the fallback. Loading uses current language until complete. Invalid string key shows stable diagnostic ID, not raw code in player copy. Apply confirmation appears when a reload is required. Suspend resumes the reload safely. Return to Settings index in the applied language.
SET-007 Gameplay information / SETTINGS Set forecast detail, tutorial reminders, battle log density, default speed, and other information assists without hiding result-changing rules. Apply information settings. Unavailable option states dependency. Preview loading uses a fixed non-authoritative sample. Disallowed combination explains the rule. Apply/Discard on exit. Suspend stops preview only. Return to Settings index.
SET-008 Save and data / SETTINGS Inspect local save health, optional synchronization, conflicts, backups, export, and diagnostics. Open selected management action; routine inspection changes nothing. Offline state keeps local status and names queued optional work. Loading shows last verified timestamp. Conflict and recovery use SYS-007; export failure retains local data. Replacing a lineage requires full comparison confirmation. Suspend pauses external work and keeps a durable receipt. Return to Settings index.
SET-009 Reset and deletion / MODAL Separate run deletion, profile reset, settings reset, and diagnostics clearing with exact scope and recovery policy. Execute reviewed destructive action. No eligible data disables the action with reason. Loading inventory must finish before review. Write failure preserves data. Confirmation names scope, stable target, retained data, recovery window, and explicit destructive gesture. Suspend before receipt cancels nothing; after receipt verifies outcome. Cancel returns to Settings index.

6. Global State Rules

6.1 Loading And Empty

  • Operations longer than 300 ms show the named operation and whether input is blocked. An apparently tappable control never sits under an unlabeled spinner.
  • Lists retain stable headers, selected IDs, and known balances while rows load.
  • Filter-empty and truly empty are distinct. Filter-empty always offers Clear Filters; truly empty explains the legal way content becomes available.
  • Unknown, undiscovered, unavailable, unaffordable, incompatible, full by a sourced rule, and completed are distinct states with distinct next actions.

6.2 Error And Receipt

  • Every commit has an operation ID and resolves to one receipt. Retry never duplicates purchase, recruit, dismissal, equip, reward, progression, recovery, retreat, or run completion.
  • A stale review refreshes all changed values and requires a new explicit confirmation. It never commits the old preview.
  • A binding error states the affected feature and safe next action. Raw stack traces, credentials, paths, and internal tokens are excluded from player copy.
  • Offline optional services cannot block local run play.

6.3 Interruption And Save

  • Backgrounding during battle produces or verifies a deterministic snapshot and returns through BAT-006; time never advances behind an obscured app.
  • Backgrounding during any transaction returns through receipt reconciliation.
  • A low-memory restart returns to Title with the exact resumable state named.
  • Clock rollback, cloud divergence, migration, corruption, duplicate claims, rollback, and bounded offline behavior are presented through SYS-007 or SET-008 using sourced save rules.

6.4 Final-Survivor Dismissal And Abandonment

  • Dismissal eligibility uses the authoritative total of live Recruits across deployed and reserve. It does not use only the current party-line count.
  • When that total equals one, REC-002 keeps Dismiss visible but disabled. The reason says One member must remain and exposes a separate action to open OUT-006; activating the disabled control never opens REC-003.
  • REC-003 revalidates eligibility at commit. If a once-valid review becomes stale because the total is now one, confirmation is rejected and the review closes. No Recruit is removed, no equipment ownership changes, no rebate is granted, and focus returns to the disabled Dismiss state with the reason announced.
  • OUT-006 is a run-close transaction, not a dismissal variant. It has no selected Recruit target and cannot grant a dismissal rebate.
  • A zero-live-Recruit state can result only from committed casualty/Company- collapse settlement or explicit run abandonment. Casualty settlement routes to sourced recovery or closure; abandonment routes directly to OUT-005 and never exposes an empty preparation or Shop state. Ordinary dismissal cannot produce either path.
  • LOC:DISMISS_LAST_LIVE_RECRUIT and LOC:OPEN_RUN_ABANDONMENT_REVIEW require English (en) and Simplified Chinese (zh_CN) fixtures at 100/115/130%. The first preserves one member must remain; the second preserves the distinction between leaving one Recruit and ending the entire run.

7. Onboarding Map

Onboarding uses production screens and can be replayed from Records. It teaches one decision at a time and never completes a build choice for the player.

Moment Base screen Teaching focus Completion evidence Skip/return behavior
Before 0:00 SYS-002 language, text preview, reduced motion/flashes, captions one usable preset applied cannot skip before usable settings; later returns to Title
0:00-1:00 provisional Company SYS-005 stages A-C inspect four stable offers, compare Profession jobs and Trait costs, choose exactly two, then review both together player states one Profession job and one Trait cost and reaches creation review at 2/2 skip hides teaching layers only; it never preselects, recommends, removes, or commits an offer
1:00 run creation SYS-005 stages D-E confirm selected two, unchosen-not-retained consequence, Contract/difficulty, and first-Market handoff one run-creation receipt owns exactly the selected two and opens the first Market Revise Recruits remains legal before commit; interruption resumes the same pending/receipt boundary
1:00-3:00 first Market hires SHP-001/002 inspect the protected affordable base-Profession opportunities and complete two separate hire reviews two hire receipts move opening Company from two owned Recruits to filled Line capacity four; player distinguishes Line capacity from owned Company no offer is auto-selected or labeled correct; skip removes callouts but never buys, refreshes, locks, or spends
3:00-5:00 first order PTY-001 swap protected rear-left and exposed front-right Recruits and read changed targets/protection/reach tap-select/tap-destination or controller move completed; player identifies position 0 at right/front and who protects whom drag is never required and the original order can be restored before commit
5:00-7:00 first risk RSK-001/002 known pressure, uncertainty, cost, and recovery exposure player reviews and commits a legal option no recommended option is auto-selected
7:00-9:00 first battle BAT-001/002/003 observe target choice, pause, inspect one cause player opens a causal explanation speed remains sourced; no combat action prompt
9:00-12:00 first result/adaptation OUT-001/003 and EQP-001/002 locate earliest divergence, choose reward, and compare one behavior-changing equipment/order adaptation player follows one cause chain and identifies a before/after behavior Continue remains available after review; no build change is applied without commit
12:00-16:00 first casualty OUT-002/004 distinguish committed loss, equipment return, and Credit from the next recovery decision player acknowledges receipt and inspects legal recovery training fixture grants no persistent reward or death; no loss is silently undone
16:00-20:00 independent Round production screens buy, order, commit, and diagnose without a pointer one complete independent Round one no-reward reset is available before commitment when supplied by product rules
First final-survivor dismissal attempt REC-002 explain why ordinary dismissal is disabled and where explicit run abandonment lives player dismisses the explanation or opens OUT-006 disabled action changes nothing and does not auto-open confirmation

The SYS-005 -> SHP-001 handoff preserves the two selected stable Recruit IDs, shows opening Company 2 separately from Line capacity 4, and points to the first hire decision without choosing an offer. After each authoritative hire receipt, the same status region updates Company 2 | Line capacity 4 to Company 3 | Line capacity 4, then Company 4 | Line capacity 4; the two-step progress is never faked by a tutorial-only counter or a combined purchase.

After repeated failure, Result may offer a replayable explanation or training surface only if supplied by product rules. It may identify the earliest preventable event, but it does not equip, recruit, reorder, or choose risk.

8. Landscape, Localization, And Accessibility Matrix

Every base screen and required overlay must be captured and reviewed across these axes before a gallery can claim coverage:

Axis Required design states
Landscape phone 1280x720 reference; short-height and wide-cutout fixtures; touch-safe edges
Landscape tablet 1366x1024 and 2048x1536; world expands without stretching controls
Large landscape 1920x1080 and 2560x1440; constrained HUD with lateral world reveal
Language English (en), Simplified Chinese (zh_CN), and a longest-string fixture for every action and consequence
Text/UI scale 100%, 115%, and 130%; no critical value, cost, state, or action truncated
Input touch-only and controller required; keyboard/mouse parity; visible focus at all times
Motion normal and reduced motion; no information conveyed only by travel, parallax, shake, or speed
Flashes normal and reduced flashes; event geometry and text remain sufficient
Audio normal, master mute, captions-only, output loss, and mono-compatible information cues
Power normal and low-power; same decisions, simulation state, event order, and receipts
Vision standard and high contrast; no state depends on hue, opacity, or image detail alone

At 130%, secondary explanation moves to an inspect drawer or full-screen detail. Objective, current state, cost, consequence, primary action, Back, focus, and transaction status stay in the first viewport. Battle inspection becomes a pauseable full-screen linear view when a side drawer would make actors unreadable.

SYS-005 keeps all four stable offer markers, selected count, Inspect/Compare, Back, and the disabled/enabled Review Company state visible at 130%. On a short landscape phone the four markers use a fixed 2 x 2 arrangement and selected detail replaces the secondary region; on tablet/reference they use one fixed four-offer row. Text growth never hides an offer, changes offer order, or makes Create Run appear before the review stage.

The visual Party line is not mirrored by locale: protected rear remains left, exposed front and position 0 remain right, and larger position numbers extend left in both en and zh_CN. Text labels, front/rear icons, protection connectors, and screen-reader order carry the meaning without relying on reading-direction inference.

At every text scale, the final-survivor dismissal reason and separate abandonment action remain visible without overlap. Touch can inspect the disabled reason and activate the separate abandonment action without precision gestures. Controller focus reaches the disabled Dismiss state, announces its reason, then advances to the separate action; default focus in OUT-006 is Cancel.

Simplified Chinese (zh_CN) may wrap actions to two lines. Components grow vertically within bounded layout tracks; type never shrinks to force a one-line label. Generated names support long Latin strings and multi-codepoint CJK without using name length to resize surrounding controls.

9. Endgame And Completion States

The following are separate, player-readable states:

  1. Active run with ordinary preparation available.
  2. Battle victory with unresolved casualty, reward, or recovery transaction.
  3. Battle loss with the run still viable.
  4. Retreat resolved with a changed preparation state.
  5. Run ended by sourced failure, with progression receipt pending.
  6. Run closed by explicit abandonment, with no Recruit treated as ordinarily dismissed and one closure receipt pending or applied.
  7. First clear, with newly eligible persistent and postgame decisions.
  8. Completed run retained for records, not resumable as active play.
  9. Postgame run setup with all active modifiers reviewed.
  10. Postgame result with local clear, verified record, and reward receipt shown independently.
  11. Profile completion with no unclaimed transaction and ordinary New Run still available.

Credits, records, and postgame never trap the player. Each returns to Title or its explicit caller, and ordinary run creation remains visible wherever legal.

10. Coverage Gate

The screen authority is candidate-ready only when:

  • every ID in Section 5 has a canonical landscape composition;
  • every row has purpose, primary action, consequence, empty, loading, error, confirmation, interruption, and return behavior;
  • Shop, recruit, dismiss, equip, compare, active artifacts, party ordering, risk commitment, automatic battle, pause, speed, inspect, retreat, result, death, reward, recovery, progression, Settings, and postgame form complete paths;
  • all product values appear through Section 2 bindings or an integrated source;
  • SYS-005 remains one page while covering four unique stable provisional offers, no-Coin Inspect/Compare, exactly-two selection, revision, creation review, invalid/empty/loading/error, interruption, and first-Market handoff;
  • the 0:00-3:00 onboarding path produces one provisional choose-two receipt and two separate affordable first-Market hire receipts without recommending or auto-selecting the opening build;
  • Party-line preparation and battle stage protected rear on the left and exposed position 0 front on the right; larger numbers extend leftward and protection remains explicit;
  • no interaction inserts a combat action into the automatic timeline;
  • every destructive or costly action has a stale-preview and duplicate-receipt path;
  • ordinary dismissal is disabled at one total live Recruit across deployed and reserve; its stale confirmation rejects with zero mutation and zero rebate;
  • explicit run abandonment uses OUT-006, and ordinary dismissal never creates a zero-live-Recruit preparation state;
  • landscape phone/tablet, touch/controller, English/Simplified Chinese, 130%, reduced motion/flashes, mute, high contrast, and low-power states are covered;
  • onboarding uses the real screens and ends with an independent player decision;
  • no screen implies authored story leads; recruits remain generated run participants; and
  • design coverage is not described as implementation, device, comprehension, fun, packaging, store, or release acceptance.