Quest Codex Recovery
The Quest Codex Recovery artifact stores a short-lived per-player checkpoint while a Typewriter dialogue or cinematic is active. It is designed for abrupt disconnects: when the player rejoins, Quest Codex waits for the configured delay and triggers the saved interaction again.
For cinematics, the current page and frame are stored. The cinematic is restarted and moved back to that frame. For dialogues, the active dialogue entry is stored and triggered again after reconnect.
Fields
| Field | Type | Default | Description |
|---|---|---|---|
artifactId | String | Random UUID | Immutable identity used by Typewriter storage. |
The artifact keeps no permanent history. Snapshots expire after the configured retention period and are removed when the dialogue/cinematic ends.
Configuration
Add the artifact to a static page and reference its entry id from
quest_codex:
{
"type": "quest_codex_recovery_artifact",
"id": "questCodexRecoveryData",
"name": "quest_codex_recovery_data",
"artifactId": "74c8760f-8d9f-4e06-a6f7-7f410f8f0df2"
}
{
"type": "quest_codex",
"id": "my_codex_config",
"recoveryEnabled": true,
"recoveryArtifact": "questCodexRecoveryData",
"recoveryRetentionSeconds": 3600,
"recoveryRestoreDelayTicks": 10
}
recoveryRetentionSeconds is clamped to 10 seconds–24 hours and
recoveryRestoreDelayTicks to 1–20 ticks. Persistence is asynchronous and
versioned so the game thread is not blocked by artifact I/O.
Identity rule
Generate artifactId once and keep it unchanged on a live server. Changing it
creates a new storage location and makes existing recovery snapshots
unreachable.
Test procedure
- Start a dialogue or cinematic while the recovery artifact is configured.
- Disconnect during the interaction.
- Reconnect before the retention period expires.
- Confirm that the dialogue is triggered again, or that the cinematic resumes near the saved frame.
Recovery is intentionally limited to active dialogues and cinematics; quest tracking remains managed by Quest Codex tracking facts and its own artifact.