Skip to content

DW256/ScriptableObject-Manager

Repository files navigation

ScriptableObject Manager for Unity

A modular Unity Editor toolkit for inspecting, validating, and performing batch operations on ScriptableObject assets.

This project focuses on safe authoring and maintenance of ScriptableObject-driven data in medium to large Unity projects, without relying on Odin Inspector.


Core Goals

  • Improve ScriptableObject data authoring workflows
  • Reduce human error in large content libraries
  • Provide structured, extensible editor tooling
  • Remain Editor-only and dependency-free
  • Serve as a foundation for future data tooling

Key Capabilities

ScriptableObject Inspection

  • Centralized view for ScriptableObject assets
  • Structured field introspection via serialization
  • Consistent editor UI across asset types

Batch Operations

  • Perform controlled batch mutations across multiple ScriptableObjects
  • Field-level operations by serialized field name
  • Validation layer before execution
  • Operation-specific UI and rules

Validation & Safety

  • Pre-execution validation
  • Explicit error reporting
  • Clear separation between inspection and mutation
  • Designed to minimize accidental data corruption

Batch Operation System

Batch operations are implemented as pluggable units:

  • IBatchOperation Execution logic

  • IBatchOperationUI Operation-specific editor UI

  • IBatchOperationValidation Safety and compatibility checks

This allows new operations to be added without modifying the core manager.

Current Operations

  • Reset Serialized Field

    • Resets a serialized field to its default value
    • Validates field existence and type compatibility

Non-Goals

This project does not aim to be:

  • A full Odin Inspector replacement
  • A runtime data system
  • A visual scripting or database solution
  • An automatic migration framework

The focus is editor tooling for ScriptableObject data hygiene.


Requirements

  • Unity 6000.3 (tested)
  • Editor-only usage

Installation

Unity Package Manager (Git)

https://github.com/DW256/ScriptableObject-Manager.git

Or add it directly to your manifest.json.


Project Status

Active Development / MVP

  • Core architecture is established
  • Batch operation framework is functional
  • Additional inspection and validation features are planned
  • APIs may evolve

Roadmap (High-Level)

  • Expanded inspection UI
  • More batch operations (assign, copy, clear, migrate)
  • Rule-based validation presets
  • Improved UX for large asset sets
  • Documentation for extension points

License

MIT

About

Unity Editor tooling for managing and batch-editing ScriptableObject data

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages