Skip to main content

View as Markdown · AI documentation index

Interface: SaveSchemaSource

Defined in: packages/core/src/saveSchema.ts:14

Everything needed to describe the shape of this game's saves.

Remarks​

This is raw material, not a schema: it carries the actual state object and the registered passage ids. Turning it into a comparable schema (recording value kinds rather than values) is the job of the tooling that consumes it, so the engine stays free of any particular schema format.

Properties​

gameData​

gameData: GameSaveState

Defined in: packages/core/src/saveSchema.ts:22

The state a save would contain right now, exactly as Game.getState() would produce it - entity variables plus the _system paths owned by the engine.


gameVersion​

gameVersion: string

Defined in: packages/core/src/saveSchema.ts:16

Version the game currently declares through Game.init().


passageIds​

passageIds: string[]

Defined in: packages/core/src/saveSchema.ts:31

Ids of every registered passage, sorted.

Remarks​

Needed because a save stores _system.game.currentPassageId. Deleting or renaming a passage leaves old saves pointing at an id that no longer resolves, which is not visible in the state shape alone.