Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Observing advancement progress

Subscribe to player_advancement_progress to inspect the whole advancement immediately after one criterion is granted or revoked, before its completion rewards. event.progress.criteria includes obtained and unobtained criteria; obtained_at is the original saved grant date or None. requirements lists the OR groups, completed_requirements counts satisfied groups, and done is the game's completion result. A player-issued /reload mutates and snapshots the acting player's live progress, including during a nested turn. For a suspended outer player, reload grants still use the displaced hub record; full owner-correct reload awards for suspended and inactive players remain tracked in #1240.

Keep event.progress.clone() if it is needed later: the owned AdvancementProgress snapshot cannot change the player's progress and is not updated by subsequent events. No-op grants and revokes do not fire. The snapshot uses the same plain-data bindings in native and wasm mods.