Update README

This commit is contained in:
Serhii Snitsaruk 2023-07-26 15:54:19 +02:00
parent f56a37659f
commit 8a5f53d946
1 changed files with 5 additions and 4 deletions

View File

@ -1,12 +1,13 @@
LimboAI - Behavior Trees and Hierarchical State Machines for Godot Engine 4 LimboAI - Behavior Trees and Hierarchical State Machines for Godot 4
--- ---
LimboAI is a C++ module for Godot 4 that provides an implementation of Behavior Trees and State Machines, which can be used together to create complex AI behaviors. LimboAI is a C++ module for Godot Engine 4 that provides an implementation of Behavior Trees and State Machines, which can be used together to create complex AI behaviors.
>**🛈 Supported Godot Engine: 4.1** >**🛈 Supported Godot Engine: 4.1**
>**🛈 License**: Use of this source code is governed by an MIT-style license that can be found in the LICENSE file or at https://opensource.org/licenses/MIT. >**🛈 License**: Use of this source code is governed by an MIT-style license that can be found in the LICENSE file or at https://opensource.org/licenses/MIT.
A Behavior Tree (BT) is a powerful hierarchical structure used to model and control the behavior of agents in a game. It comprises tasks that represent specific actions or decision-making rules. When executed, the Behavior Tree starts from the root task and traverses down to the leaf tasks, which correspond to the actual actions or behaviors that the agent should perform. For detailed information on how various BT tasks function, please refer to the class documentation. The BTTask class serves as a good starting point. A Behavior Tree (BT) is a powerful hierarchical structure used to model and control the behavior of agents in a game. It comprises tasks that represent specific actions or decision-making rules. When executed, the Behavior Tree starts from the root task and traverses down to the leaf tasks, which correspond to the actual actions or behaviors that the agent should perform. For detailed information on how various BT tasks function, please refer to the class documentation. The BTTask class serves as a good starting point.
![Textured screenshot](doc/images/behavior-tree-editor.png) ![Textured screenshot](doc/images/behavior-tree-editor.png)
![Textured screenshot](doc/images/behavior-tree-debugger.png) ![Textured screenshot](doc/images/behavior-tree-debugger.png)
@ -18,7 +19,7 @@ A Behavior Tree (BT) is a powerful hierarchical structure used to model and cont
- Easily create, edit, and save `BehaviorTree` resources within the editor. - Easily create, edit, and save `BehaviorTree` resources within the editor.
- Combine and nest tasks in a hierarchy to create complex behaviors. - Combine and nest tasks in a hierarchy to create complex behaviors.
- Control the flow of execution using composite, decorator, and condition tasks. - Control the flow of execution using composite, decorator, and condition tasks.
- Write your own tasks by extending core classes: `BTAction`, `BTCondition`, `BTDecorator` and `BTComposite`. - Write your own tasks by extending core classes: `BTAction`, `BTCondition`, `BTDecorator`, and `BTComposite`.
- Built-in class documentation. Check out the `BehaviorTree` and `BTTask` class documentation to get started. - Built-in class documentation. Check out the `BehaviorTree` and `BTTask` class documentation to get started.
- Utilize the `Blackboard` for seamless data sharing between tasks. - Utilize the `Blackboard` for seamless data sharing between tasks.
- Use the `BTSubtree` task to execute a tree from a different resource file, promoting organization and reusability. - Use the `BTSubtree` task to execute a tree from a different resource file, promoting organization and reusability.
@ -32,7 +33,7 @@ A Behavior Tree (BT) is a powerful hierarchical structure used to model and cont
- Event-based: Transitions are associated with events, and are triggered by the state machine when the relevant event is dispatched, allowing for better decoupling of transitions from state logic. - Event-based: Transitions are associated with events, and are triggered by the state machine when the relevant event is dispatched, allowing for better decoupling of transitions from state logic.
- Combine state machines with behavior trees using `BTState` for advanced reactive AI. - Combine state machines with behavior trees using `BTState` for advanced reactive AI.
- Delegation: Instead of extending `LimboState`, utilize vanilla `LimboState` and delegate implementation to provided callback functions. Perfect for game jams and quick prototyping. - Delegation: Instead of extending `LimboState`, utilize vanilla `LimboState` and delegate implementation to provided callback functions. Perfect for game jams and quick prototyping.
- 🛈 Note: Currently, state machine transition setup and initialization must be done through code as there is no GUI editor for state machines at the moment. - 🛈 Note: Currently, state machine transition setup and initialization must be done through code as there is no GUI editor for state machines.
## Compiling ## Compiling