The Component Save System is a save game system designed to work seamlessly with Unity's component system. It allows you to save each unique GameObject separately based on an assigned ID, making it easy to implement saving for individual components. With this system, you can write a save implementation per component, keeping your project modular and organized.
The system works by automatically generating a unique ID for each GameObject with a 'Saveable' component, and then fetching all scripts that implement the ISaveable interface. Data is saved to disk when the game exits or when the SaveMaster.WriteSaveToDisk() function is called, and can be turned off to enable 'save points' instead.
Key features include:
- Source code included
- Easy saving of items that can be dropped on the floor
- Modular saving system with per-component implementations
- Support for primitive data types and binary/SQLite saving
- AES encryption of save files
- Automatic screenshot saving and loading of last used scenes
- Game templates included
The system is compatible with Windows, Linux, Android, WebGL, and iOS, and uses open-source libraries under permissive licenses.
The system uses a unique ID for each GameObject, and saves data to disk when the game exits or when the SaveMaster.WriteSaveToDisk() function is called. It also supports 'save points' and automatic screenshot saving. The system is designed to be modular and easy to use, with a simple and intuitive API.





