Save Forge is a Unity save system built for production. It works like PlayerPrefs — call SaveForge.Set() and SaveForge.Get() from anywhere, no instance management required — but handles every type that JSON can serialize: structs, classes, lists, dictionaries, and more.
Behind the simple API is a robust feature set. AES-256 encryption protects player progress from tampering. Schema migration upgrades old save files automatically so game updates never corrupt player data. Async file I/O keeps the main thread smooth. A write-to-temp-then-rename pattern prevents file corruption on crash. And a live Editor inspector lets you browse, edit, and delete save data without ever entering Play Mode.
Key features:
Static entry point — SaveForge.Set() / SaveForge.Get() from anywhere, no instance management
AES-256 encryption with PBKDF2-SHA256 key derivation — save files are ciphertext on disk
GZip compression — reduce file size on mobile without changing your code
Schema migration — rename keys, transform values, and upgrade old save files automatically on load
Async save — serialize on the main thread, write to disk in the background
Multiple save slots — each SaveSystemJson instance is a fully independent file
Auto-save component — periodic saves and scene-change triggers with zero code
Live Editor inspector — browse, edit, and delete save data without entering Play Mode
Corruption-safe writes — write-to-temp-then-rename prevents data loss on crash
iOS-safe — Saves/ folder is automatically excluded from iCloud backup per Apple guidelines
Cloud sync interface — implement ICloudSync against any provider (UGS, Steam, custom REST)
Swappable backends — use JSON or implement your own ISaveSystem
Full source code included
Full documentation is also available online at GitHub
For questions or issues, contact nregoblin@gmail.com — quick replies guaranteed.