0 purchases
behavior tree
This package provides a simple and easy to use behavior tree API in pure dart.
Behavior tree is a very common way of implementing AI behavior in game and robotics. Using this, you
can break-down a complex behavior of an in game AI, into multiple smaller nodes.
Features #
Nodes
Composite
Sequence: Continues execution until one of the children fails.
Selector: Continues execution until one of the children succeeds.
Decorator
Inverter: Flips the status of the child node.
Limiter: Limits the number of ticks for child node.
Task
Task: Executes a given callback when ticked.
AsyncTask: Executes an async callback when ticked.
Condition: Checks a condition when ticked.
Getting started #
Add this package to your dart project using,
dart pub add behavior_tree
copied to clipboard
Usage #
Create a behavior tree.
final treeRoot = Sequence(
children: [
Condition(() => isHungry),
Task(() => goToShop()),
Task(() => buyFood()),
Task(() => goToHome()),
Task(() => eatFood()),
]
);
copied to clipboard
Tick the root node to update the tree.
final treeRoot = ...;
treeRoot.tick();
copied to clipboard
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.