Avoid trying to serialize runtime Unity objects directly into save data.
Do not store:
- GameObject references
- Transform components
- Rigidbody components
- Collider components
- whole ScriptableObject assets
Instead save the information needed to reconstruct state:
- IDs
- position
- rotation
- quantities
- flags
- statistics