Unity systems · editor tooling · integration

Give me the part of your Unity project that is slowing everything else down.

I build and repair the connective tissue inside existing Unity projects: Odin inspectors, custom editor tools, package integrations, system architecture, procedural systems, and difficult bugs. The goal is not to rewrite your game. It is to make the part you hate working in understandable, maintainable, and useful.

  • Existing-project friendly
  • Fixed scope before implementation
  • Source, notes, and handoff included
Odin InspectorCustom Editor ToolsPackage IntegrationSystem RefactorsProcedural GenerationDebugging & RecoverySave / LoadLOD & Impostors

Services

Things you can actually hire me to build.

Most Unity work does not need another generalist promising to “help with the game.” It needs a specific part of the project understood well enough to improve it without creating three new problems. These are the kinds of bounded jobs I take on.

02Workflow

Custom Unity Editor Tools

Replace repetitive project work with tooling designed around the actual production workflow.

  • Editor windows, scene tools, debug panels, and content browsers
  • Batch operations, validators, setup wizards, and one-click workflows
  • Visual controls for systems that are painful to author through raw fields
  • Project-specific utilities instead of generic tools you have to fight
  • Clear ownership so the tool stays maintainable after handoff
03Integration

Asset, Package & SDK Integration

Make a third-party tool behave like part of your project instead of a foreign system bolted onto the side.

  • Unity packages, Asset Store tools, SDKs, APIs, and plugins
  • Odin, save systems, input, shaders, rendering, AI, and workflow assets
  • Adapters and integration layers around your existing architecture
  • Resolve setup conflicts, ownership overlap, and duplicated responsibility
  • If buying or using an existing tool is smarter than custom code, I will say so
04Architecture

Systems Wiring & Targeted Refactors

Clean up the seam between systems when the individual parts work but the project around them has become fragile.

  • Clarify state ownership, permissions, events, and data flow
  • Refactor one problem area without turning it into a full-project rewrite
  • Separate editor/runtime responsibilities and brittle hidden dependencies
  • Create stable interfaces between existing systems
  • Leave the project easier to reason about than I found it
05Diagnosis

Debugging, Regression & Recovery

For bugs that survived the obvious fixes, regressions with unclear causes, and project states you no longer trust.

  • Reproduction-first debugging and regression isolation
  • Prefab, serialization, transform, LOD, state, and integration failures
  • Compare known-good states instead of stacking patches blindly
  • Rollback planning, recovery work, and verification passes
  • Document what failed, what changed, and what now proves the fix
06Runtime systems

Procedural & Simulation Systems

Build or extend systems where generated content has to remain deterministic, persistent, measurable, and connected to gameplay.

  • World generation, spawning, habitat, ecology, and environmental data
  • Deterministic seeds, runtime generation, persistence, and save/load contracts
  • Hydrology, zones, scoring, taxonomies, and rule-driven placement
  • Validation tooling for generated systems instead of visual guesswork
  • Prototype the risky system before the rest of the project depends on it

Concrete examples

What “Unity systems work” means in practice.

The useful question is not whether I know a technology name. It is whether I can see the workflow around it, identify the correct seam in the project, and build the missing piece without making the rest of the codebase pay for it.

01Make the Inspector match the mental model

A complex system should not require memorizing which six fields across three components matter.

  • Group controls around the decisions a designer is actually making
  • Hide irrelevant state and surface invalid combinations immediately
  • Add previews, actions, presets, status, and validation where they reduce mistakes
02Wire the purchased tool into the real project

Installation is not integration. The work is deciding what the package owns, what your project owns, and how they communicate.

  • Keep third-party code replaceable instead of spreading it through gameplay logic
  • Adapt package data and events to existing systems
  • Document the boundary so future updates do not become archaeology
03Find the system behind the symptom

A visible bug is often only where a deeper ownership or representation problem becomes noticeable.

  • Trace competing state changes before adjusting thresholds and magic numbers
  • Use known-good baselines and focused tests to isolate regressions
  • Fix the contract that produced the failure, not only the frame where it appeared
04Build the missing connective tissue

Sometimes the right deliverable is not another feature. It is the adapter, validator, editor, state layer, or debug view that makes the feature operable.

  • Prefer a small, legible integration layer over a broad rewrite
  • Automate repeated work that creates errors or kills iteration speed
  • Leave clean extension points instead of a one-off patch

Sprucebound tool · Unity Editor

Know when your Unity work is becoming expensive to lose.

SBCheckpoint is a local safety instrument for Unity Version Control. It watches the shape of pending work, explains when protection debt is building, and helps you checkpoint before a useful experiment becomes a recovery job.

View on Unity Asset Store Product details Asset Store listing submitted
  • Reads UVCS truth.Uses read-only status and history instead of inventing a second version-control model.
  • Understands change shape.Time matters, but so do breadth, destructive operations, project settings, and structural risk.
  • Stays out of the way.No cloud service, telemetry, LLM, automatic branching, or surprise rollback behavior.
Example recommendationLocal · deterministic
ProtectionUnprotected
Exposure47 min
Meaningful changes12 files
Protection debtHigh
Current workHydrology + World Generation3 higher-risk items since the last protected state
Recommended next stepCreate a checkpoint before expanding the change set.

How I work

Understand the project around the task before touching the task.

The fastest implementation is often the one that avoids creating cleanup work later. I start by finding the ownership boundary, the workflow, and the smallest intervention that can actually hold up.

  1. 1

    Map the system

    Identify the owning scripts, data, packages, dependencies, current workflow, and what the finished behavior needs to feel like.

  2. 2

    Choose the seam

    Decide where the change belongs, what should stay untouched, and whether an existing tool solves the job better than custom code.

  3. 3

    Build the bounded piece

    Implement the inspector, editor, adapter, system change, prototype, or fix without quietly expanding the scope into the rest of the project.

  4. 4

    Verify & hand off

    Test against explicit acceptance criteria and leave source, setup notes, limitations, and the maintenance boundary clear.

About Sprucebound

First principles, practical systems, less wasted motion.

My name is Matthew. I’m a first-principles thinker, outdoors enthusiast, optimizer, designer, and systems builder. I tend to get interested when the obvious solution is inefficient, overcomplicated, or built on assumptions nobody has revisited.

I genuinely enjoy efficiency: finding wasted motion and unnecessary complexity, then rebuilding the problem around clear ownership, useful constraints, and how people actually use the system. In Unity that turns into editor UX, integrations, architecture, procedural systems, debugging, and tooling.

Sprucebound is where I apply that mindset professionally. SBCheckpoint is the first Sprucebound tool moving through the Unity Asset Store, while service work lets me apply the same thinking inside existing projects.

01Start from first principles before inherited assumptions.
02Optimize for less wasted motion, not more machinery.
03Design around the real workflow and the people using it.
04Build systems that stay understandable as they grow.

FAQ

Before you send the project.

Is a small task worth contacting you about?

Yes. A single ugly Inspector, a custom editor window, one package integration, a validation tool, or a focused debugging problem can be a complete engagement. Small, well-bounded jobs are often the best fit.

Can you work inside an existing project without rewriting it?

That is the point of most of this work. I first map the relevant ownership and dependencies, then choose the smallest stable seam for the change. If the existing architecture makes a targeted implementation unsafe, I will explain that before expanding scope.

Can you build Odin Inspector tooling?

Yes. I can design and wire Odin-based authoring workflows into projects that already have the appropriate Odin package/license, including validation, groups, conditional UI, actions, previews, and project-specific controls. I do not redistribute Odin itself.

Do you need my entire repository?

Not for the first conversation. Screenshots, short videos, package information, selected scripts, logs, and a description of the current workflow are often enough to define the scope. Repository access is discussed only when the work actually requires it.

What work is not a fit?

Open-ended “build my whole game” contracts, emergency on-call support, art/audio production, guaranteed launch outcomes, and jobs where the requested result cannot be defined well enough to verify.

Have a Unity task?

Show me the ugly part.

You do not need to write a formal specification. Show me what you are working with, what feels wrong or slow, and what you wish the finished workflow or system did instead.

Fixed-scope Unity work openSmall editor tools, integrations, debugging jobs, and bounded systems work are all valid starting points.

This launch version prepares a formatted inquiry using your email app. Private uploads and payment are added only after scope is accepted.