README.md

March 27, 2026 ยท View on GitHub

Trove is a collection of packages for Unity DOTS.

All of these packages care about:

  • Performance
  • Customizability
  • Netcode compatibility
  • Keeping things as simple and not over-engineered as possible
  • Having as little impact on your architecture as possible
  • Making you do things manually so you are fully aware of everything that happens

Installing the packages

The packages are hosted on OpenUPM. You can install them like this:

  • Open Edit/Project Settings/Package Manager.
  • Add a new Scoped Registry
    • Name: package.openupm.com
    • URL: https://package.openupm.com
    • Scope: com.trove
  • Click Save or Apply.
  • Open Window/Package Manager.
  • Click + and select Add package by name....
  • Enter package name (and optionally version, if want a specific one), then click Add.

Package list

NamePackageDescriptionDocumentation
Commoncom.trove.commonTrove Common provides various tools and utilities that may be used by other Trove packages, or by any project in general.Documentation
Event Systemscom.trove.eventsystemsTrove Event Systems provides various types of event systems to facilitate deferred logic.Documentation
Polymorphic Structscom.trove.polymorphicstructsTrove Polymorphic Structs provides a codegen tool for polymorphic behaviour in burstable unmanaged code. They can be used to solve a variety of problems that are not so obvious to solve in ECS, such as: ordered events where order can't be determined by type, state machines without structural changes or large jobs overhead, etc...Documentation
State Machinescom.trove.statemachinesTrove State Machines provides templates for state machines in DOTSDocumentation
Statscom.trove.statsTrove Stats allows you to define identifiable "numbers" (stats) on entities, and add/remove "rules" (modifiers) that affect the evaluation of these numbers' values. This tool can be used to effortlessly setup gameplay mechanics such as RPG character/equipment stats, buffs, effects, roguelike-style stackable powerups and synergies, etc...Documentation
Spatial Queriescom.trove.spatialqueriesTrove Spatial Queries provides tools for querying objects in the scene.Documentation
Utility AIcom.trove.utilityaiTrove Utility AI provides a flexible and efficient decision-making system for ECS.Documentation
Tweenscom.trove.tweensTrove Tweens is a simple tweening tool that allows you to create your own highly-efficient custom tweens.Documentation
Audiocom.trove.audioTrove Audio is a simple ECS interface for FMOD.Documentation
Debug Drawcom.trove.debugdrawTrove Debug Draw is a GPU-persistent burst-compatible debug line/mesh drawer.Documentation