🎮 Game

A finite state machine library that game code can add to entities to drive AI or scripted logic. It has State, Transition, and StateMachine components that run enter/update/leave callbacks, pick transitions by message or time windows, serialize to JSON, and optionally broadcast transitions over the network. There are duplicate files for engine and addon layouts but they implement the same model and behavior.

🔧 Editor

An editor library for building and editing state machines in s&box. It adds a State Machine Editor window with nodes and transitions, label items for state enter/update/leave and transition condition/action, context menus, copy and paste with gzip+base64, undo and redo, and selection/drag input. Label sources bind editor UI to State and Transition delegate fields and support editing graphs and delays/messages.

🧪 Unit Test

A small unit test project for Sandbox.States. It initializes the unit test runtime, creates a Scene, pushes it to the scene stack, spawns a GameObject, then asserts the scene GameObjectCount becomes 1. The tests run in the unit test runner with no external calls.