Save & Load Systems
Build robust save systems in Godot 4 - from simple JSON to full game state serialization
Why Every Game Needs a Save System
Save systems preserve player progress, settings, and game state. Without them, players lose everything when they close your game.
Unity Comparison
In Unity, you might use PlayerPrefs for simple data or serialize to JSON/binary files. Godot uses FileAccess class for all file operations - it's more direct and powerful.
What to Save
- Player position, health, inventory
- Game progress (levels, quests)
- World state (opened chests, killed enemies)
- Settings (volume, keybinds)
- Statistics (playtime, deaths)
Where Saves Go
user://- User's app data folder- Windows:
%APPDATA%\Godot\app_userdata\ - macOS:
~/Library/Application Support/ - Linux:
~/.local/share/godot/
Best Practice
Always use user:// for save files, never res://. The res:// path is read-only in exported games and points to your project folder during development.