-
Notifications
You must be signed in to change notification settings - Fork 0
Save and Multiplayer
Generated cards are data, not seed-only reconstruction. Persist and synchronize the complete ordered definition list, including card data, runtime specs, upgrades, bilingual names/descriptions, portrait identity, and effects.
- Use the same stable profile ID and component/runtime schema on every peer.
- The host chooses or generates definitions once and sends that exact list to clients.
- Install definitions before a generated card model is rendered, deserialized, or used.
- Preserve contiguous slot order. A card's concrete model type and
Slotare its stable ModelDb address. - Derive seeds with a stable algorithm such as SHA-256. Runtime-dependent hashes are not network-safe.
- Every participant needs compatible AutoAnthony and character-mod versions.
ChaosCompositePower stores the external profile ID with its structured operations. Multiplayer checksums include a
stable hash of that ID, so delayed and continuous effects resolve against the correct external definition after a
reload or reconnect.
Schema 10 is the current structured snapshot format. Live runs from schema 5-9 migrate card-by-card. Schema 1-4 records remain readable by run history, but an active run from those pre-all-pool layouts regenerates its generated pools rather than installing ambiguous definitions.
When changing an opcode, variant, slot name, or flag:
- Keep the old runtime route available for every currently supported save version.
- Migrate the structured record before installation when possible.
- Regenerate only definitions that cannot be parsed; do not regenerate an otherwise valid whole pool.
- Treat localized text as display data, never as the migration key.
New snapshots store localization IDs and structured upgrade effects. Legacy bilingual upgrade labels and duplicated keyword arrays are read only as migration inputs; do not emit them from new integrations.
If a removed card model cannot be restored, use the game's missing-card placeholder rather than mapping the old slot to a different card.
- Compare mod and API versions before starting the lobby.
- Synchronize next-run settings from the host.
- Verify definition count, slot order, stable signatures, and profile ID before entering combat.
- Install the synchronized definitions exactly once per run state.
- Clear run-scoped definitions only after the run is actually abandoned or completed.
Source · Steam Workshop · AutoAnthony 0.3.32 · API v3