Component Save System
A free, plug-and-play save system for Unity.
A component-based save system for Unity. Drop a Saveable component onto an object, implement ISaveable, and the SaveMaster handles identification, serialization and writing to disk. Free and open-source on GitHub, with an expanded paid version on the Asset Store.

About
Component Save System is a save system for Unity built around the engine’s own component model. It was originally made for the RPG Farming Kit and expanded to work across any project. Add a Saveable component to a GameObject, implement the ISaveable interface on your scripts, and a global SaveMaster takes care of unique identification (via GUIDs), serialization, and writing saves to disk. Plug and play out of the box.
The GitHub version is free and open-source; a paid version on the Unity Asset Store adds extra features and architectural improvements.
Add a Saveable component, implement ISaveable
using Lowscope.Saving;
using UnityEngine;
public class Enemy : MonoBehaviour, ISaveable
{
[SerializeField] private Stats stats;
public void OnLoad(string data) => stats = JsonUtility.FromJson<Stats>(data);
public string OnSave() => JsonUtility.ToJson(stats);
public bool OnSaveCondition() => true; // skip saving when nothing changed
}
Features
- Plug-and-play: a global Save Master is created before the first scene loads
- Save any component by implementing
ISaveable, with no manual ID bookkeeping - Stable GUID-based identification that survives object/scene renames
- Automatic write on scene change, app pause, or
SaveMaster.WriteActiveSaveToDisk() - Save slots, configurable auto-load/auto-save, and spawned-prefab tracking
- Free & open-source on GitHub; expanded paid version on the Asset Store
Save your game the easy way
Grab Component Save System free on GitHub, or get the expanded version on the Unity Asset Store.