Disclosure: I make these and sell them: GodotSaveKit, $9.99 (sold by Fortress MSSP LLC). This post was written with AI assistance.
GodotSaveKit brings save slots and player settings together in a focused Godot 4 addon. This post is mostly about the save side.
Saves
- Versioned JSON save slots.
- Atomic write workflow.
- .bak fallback for recovery.
- Corrupt files are quarantined rather than silently discarded.
- A migration hook, to help you adapt older save data as your game evolves.
- Autosave and slot metadata.
Settings. A settings service covers audio, window options, vsync and input rebinding. These preferences are kept separate from individual save slots.
Demo. There is a headless-tested demo, so you can explore integration without relying on a polished visual interface.
Illustrative excerpt: the migration hook. This registers a migration callback on an object named saves. The callback takes a Dictionary (doc), sets its version to 1 and returns it. The assert checks that the call returned OK. It is an excerpt, not a complete script, and it does not show a migration being run:
assert(saves.register_migration(0, func(doc: Dictionary) -> Dictionary:
doc.version = 1
return doc) == OK)
Limits:
- Tested headless only: 73/73 checks passed on Godot 4.7.2 stable on macOS.
- Visual UI checks, export builds and mobile testing have not been run.
- This is not a certification of platform compatibility. Test it in the Godot version and on the platform you ship on.
- This is not an official Godot product, and I am not implying that Godot sponsors or endorses it.
Terms. 30-day refunds. Support: hello@mail.programkiln.com.
Companion. For menu styling, the listing points to the Godot 4.x UI Theming Cookbook as a complementary resource for the presentation side of your game’s menus (I sell that too): Godot 4.x UI Theming Cookbook
GodotSaveKit: GodotSaveKit — Godot 4 Save Slots & Settings