unity-scriptableobjects
Architect Unity 6 data and decoupling with ScriptableObjects: config/data assets, shared runtime variables, event channels, and runtime sets/registries. Use when designing data-driven systems, replacing singletons/managers, creating .asset data with CreateAssetMenu, or when the user mentions ScriptableObject, SO architecture, or data assets.
npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill unity-scriptableobjects --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
# Unity ScriptableObject Architecture Use `ScriptableObject` assets to store shared data and decouple systems in Unity 6 — configuration, event channels, and registries that live as project assets instead of being hard-wired into scenes or singletons. Targets **Unity 6 (6000.0 LTS)**. ## When to use - Use when you need designer-editable config (weapon stats, level data), to share one value between unrelated systems, to decouple senders from listeners via event channels, or to build a runtime registry of active objects — without a `static`/singleton manager. - Use when the project has `*.asset` data files backed by `: ScriptableObject` classes. **When _not_ to use:** per-instance runtime state that differs per GameObject (that belongs on a MonoBehaviour) — a ScriptableObject asset is _shared_ by everyone who references it. Saving player progress to disk → `save-systems`. Plain DTOs that never need to be an asset can just be `[System.Serializable]` classes. ## Core workflow 1. **Define the class** deriving from `ScriptableObject` and tag it with `[CreateAssetMenu]` so designers can create instances from the Assets menu. 2. **Create one or more `.asset` instances** in the Project wind
- When to use
- Core workflow
- Patterns
- 1. Config/data asset
- 2. Shared runtime variable (decouples producer from consumer)
- 3. Creating an instance at runtime (not an asset on disk)
- Pitfalls
- References
- Related skills
What does the unity-scriptableobjects skill do?
Architect Unity 6 data and decoupling with ScriptableObjects: config/data assets, shared runtime variables, event channels, and runtime sets/registries. Use when designing data-driven systems, replacing singletons/managers, creating .asset data with CreateAssetMenu, or when the user mentions ScriptableObject, SO architecture, or data assets.
How do I install it?
Run `npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill unity-scriptableobjects --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From gamedev-skills/awesome-gamedev-agent-skills, a repository with 406 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
