Warning
Work in progress. Aspid.Core.HSM is under active development. The public API is not yet stable and may change without notice between releases. Use with care in production.
Aspid.Core.HSM is a Roslyn-powered Hierarchical State Machine for Unity, built from small composable abstractions: states with Enter / Exit hooks, a parent→child hierarchy expressed through the generic IChildState<TParent> interface, pluggable per-frame controllers (IUpdateController, IFixedUpdateController, ILateUpdateController, …) aggregated via [ControllerGroup], declarative guarded transitions ([Transition]), extension states ([ExtensionFor]), state scopes and async enter/exit. MonoStateMachine wires it all to the Unity MonoBehaviour lifecycle.
Install Aspid.Core.HSM via UPM: in the Package Manager click + → Install package from git URL… and paste one of the URLs below.
The upm branch always points to the latest stable release:
https://github.com/VPDPersonal/Aspid.Core.HSM.git#upm
To install a specific version, target the immutable per-release tag (see Releases for the list of available versions):
https://github.com/VPDPersonal/Aspid.Core.HSM.git#upm/0.0.1
Preview
The upm-preview branch always points to the latest preview release (rc, beta, alpha, …):
https://github.com/VPDPersonal/Aspid.Core.HSM.git#upm-preview
To install a specific preview version, target the immutable per-release tag (see Releases for the list of available versions):
https://github.com/VPDPersonal/Aspid.Core.HSM.git#upm-preview/0.0.1-rc.1
Note. The
upm/upm-previewbranches and their badges appear once the Release workflow publishes the first stable / preview version.
Aspid.Core.HSM depends on UniTask (for async enter/exit controllers), pulled in automatically as a package dependency.