unity-data-driven

Guide Unity data-driven design with ScriptableObjects, JSON/CSV pipelines, and versioning strategies.

24|5|Updated Mar 10, 2026
One-click install
npx skills add https://github.com/Nice-Wolf-Studio/unity-claude-skills --skill unity-data-driven
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: unity-data-driven
Source: https://github.com/Nice-Wolf-Studio/unity-claude-skills/tree/main/skills/unity-data-driven
Command: npx skills add https://github.com/Nice-Wolf-Studio/unity-claude-skills --skill unity-data-driven

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill addresses the challenge of managing game data effectively in Unity, preventing hardcoded values and enabling designer-driven content creation without code changes.

Core Features & Use Cases

  • Configurable Data Storage: Choose between ScriptableObjects, JSON/CSV, or embedded constants for storing game data.
  • Designer Handoff: Facilitates workflows where designers can create and edit game data using Inspector attributes, custom EditorWindows, or external spreadsheets.
  • Data Versioning: Provides strategies for handling breaking changes in data formats between game updates.
  • Use Case: A game designer needs to balance enemy stats. Instead of a programmer modifying code, the designer can directly edit EnemyConfig ScriptableObject assets in the Unity Editor, adjusting health, speed, and damage values.

Quick Start

Use the unity-data-driven skill to create a new EnemyConfig ScriptableObject asset for a goblin enemy.

Frequently Asked Questions about unity-data-driven

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I manage Unity game data without hardcoding values?

ScriptableObjects and JSON pipelines prevent hardcoded values by externalizing configuration. This data-driven approach enables designers to modify game variables directly via the Unity Inspector or external spreadsheets without code changes.

How do I handle data versioning and migration in Unity ScriptableObjects?

Handle Unity ScriptableObject data migration by using explicit version fields and the `[FormerlySerializedAs]` attribute to manage breaking changes across game updates. This preserves data integrity when formats evolve.

What is the best way to load JSON configuration files at runtime in Unity?

The best way to load JSON configurations at runtime in Unity is by utilizing the StreamingAssets folder. This approach supports external data pipelines and allows dynamic data loading without recompiling the application.

Can I use CSV imports for designer workflows in Unity?

Yes, Unity supports editor-based CSV imports to facilitate designer workflows. Designers can manage game data in external spreadsheets, which programmers can then import to populate ScriptableObject assets.

When should I use ScriptableObjects versus JSON for Unity data management?

Use ScriptableObjects for Inspector-based designer handoff and embedded assets, while JSON suits runtime loading via StreamingAssets. Both data-driven approaches prevent hardcoded values but serve different pipeline needs.

How do I set up a designer handoff workflow for Unity enemy stats?

Set up a designer handoff workflow by creating `EnemyConfig` ScriptableObject assets. Designers can then directly adjust health, speed, and damage values in the Unity Inspector without requiring a programmer to modify code.