Saltmire Save Lite persists game state in a single call — no FileAccess plumbing, no JSON wiring, no boilerplate.
Save.write("slot1", {"hp": 80, "level": 3}) # save
var d = Save.read("slot1") # load (null if it doesn't exist)
API
Save.write(slot, data)— write a Dictionary/Array/primitive. Returns true on success.Save.read(slot)— returns the data, ornullif missing/unreadable (never crashes).Save.has(slot)/Save.erase(slot)/Save.list_slots()— for a load-game menu.Save.autosave(slot, cb, interval)— callcbeveryintervalseconds and save it.Save.stats()—{ writes, last_bytes, slots }, measurable not promised.
Signals: saved(slot), loaded(slot). Saves live in user://saltmire_saves/.
Verified, not promised. The repo ships a headless selftest (selftest.gd) that asserts the round-trip, missing-slot safety, list_slots, erase and the stats() counters — it prints SELFTEST PASS. Run: godot --headless --script selftest.gd.
Features
- Drop-in autoload — enable the plugin and the
Savesingleton is ready. - Zero dependencies, one small file, MIT.
- Safe reads — a missing or unreadable slot returns
null, no crash.
Part of the Saltmire toolbox family. Playable demo and full source: https://saltmire.itch.io/saltmire-save-lite
Need encryption, backup + corruption recovery, schema migration and gzip compression? That's Saltmire Save PRO: https://saltmire.itch.io/saltmire-save
Built with AI assistance, reviewed and tested by hand in Godot 4.6. No AI art or audio.
Changelog for version 1.0.0
No changelog provided for this version.