Features

Dynamic Blackboard System

Utilize a robust data structure to share and manage AI information efficiently across various components of your game, making complex AI behaviors simple and maintainable.

Automated Code Generation

Simplify your workflow with source generators that automatically produce typed, efficient, and error-free code based on your definitions, drastically reducing development time and potential bugs.

Signal-Based Data Management

Each piece of data on the blackboard is managed as a 'Signal'—a lightweight class that not only holds the value but also triggers events upon changes, ensuring your AI reacts dynamically to the game environment.

Event-Driven Architecture

Fully leverage UnityEvents to respond to data changes, allowing for a modular and decoupled design that enhances code clarity and reusability.

Computed Signals

Define signals that automatically update based on changes in dependent data, perfect for creating reactive and adaptive AI without manual updates.

List Management

Manage collections of data with list signals that notify changes efficiently, perfect for handling dynamic elements like inventories or AI states.

Serialization Support

Effortlessly save and load blackboard states with built-in JSON serialization, or implement your own!

Interfaces

Improve maintainability and testability of your code by using the generated interfaces instead of the concrete implementations.

Validations

Make sure your values are always what you expect them to be using simple attributes!