Migrations & Versioning
Why do you need Migrations?
When you update your game (v1.0.0 → v1.1.0, for example ), save file structure may change:
Renamed fields
New features
Removed old data
Migrations automatically convert old saves to the new format.
For example, imagine that in Version 1.0.0 your player’s health was stored under the key "playerHealth", but in the next version it was renamed to "playerHealthValue". Without a migration, OmniSave would still attempt to load "playerHealth". Since that key no longer exists, the health value wouldn’t load at all.
Migration solves this by informing OmniSave that player health is no longer stored as "playerHealth", and that it should instead look for "playerHealthValue". This ensures that no data is lost between versions.
Creating a Migrator ( No-Code )
Add Required Operations
There are 3 type of Operations:
Rename: A Field was renamed ( playerHealth > playerHealthValue )
Addition: A Field was added
Removal: A Field was removed
When all Operations are properly configured, you´ll see "Ready to Generate" at the bottom right corner.

If any operation info is missing, or something is miss-configured, it will trigger a Validation Error. Ensure all Validation errors are solved before proceeding with the next Step.

Chain Migrations
Chain migrations automatically:
v1.0 > v1.1 > v1.2 > v2.0OmniSave runs them in order.
Last updated


