Class SaveMigrationRegistry

Namespace
SurvivorsMaker.Run
Assembly
SurvivorsMaker.Run.dll

Pure data conversions. No serializer, file access, random source or gameplay callbacks.

public sealed class SaveMigrationRegistry
Inheritance
SaveMigrationRegistry
Inherited Members

Constructors

SaveMigrationRegistry(int)

public SaveMigrationRegistry(int currentSchema = 2)

Parameters

currentSchema int

Methods

CreateDefault(IReadOnlyList<string>)

Creates the built-in migration registry with optional legacy arena-id context.

public static SaveMigrationRegistry CreateDefault(IReadOnlyList<string> legacyArenaIds = null)

Parameters

legacyArenaIds IReadOnlyList<string>

Returns

SaveMigrationRegistry

ImportV1(ProfileState, long, string)

Separates a legacy combined profile/run save into current-domain envelopes.

public LegacySaveImport ImportV1(ProfileState legacy, long generation = 0, string owner = "")

Parameters

legacy ProfileState
generation long
owner string

Returns

LegacySaveImport

Read(SaveEnvelope, SaveDomain)

Validates domain and schema, then applies registered migrations without modifying the original envelope.

public SaveReadResult Read(SaveEnvelope source, SaveDomain expected)

Parameters

source SaveEnvelope
expected SaveDomain

Returns

SaveReadResult

Register(ISaveMigration)

Registers one schema transition; conflicting transitions are rejected.

public void Register(ISaveMigration migration)

Parameters

migration ISaveMigration

Validate()

public List<string> Validate()

Returns

List<string>