BehaviourToolkit
BehaviourToolkit copied to clipboard
A collection of tools for AI Behaviour in the Godot 4 Game Engine!
`FiniteStateMachine` only processes one event per frame. I'm not sure if this is a bug or if it is intentional, but it was certainly a surprise to me. I was...
This main screen panel is intended to make it easier to edit transitions of complex state machines. > If this is in a usable state (or even a good starting...
BTSequence does not return a SUCCESSful status when the last action is successful. Currently it waits for the next tick to reset itself and report success. While this doesn't appear...
It is probably easier to understand the issue raised in https://github.com/ThePat02/BehaviourToolkit/issues/81with an actual example. There is a README in examples/bt_sequence_bug/ folder describing the scene that I didn't repeat here. I...
## Problem description So I have a pretty simple FSM with 4 states: Idle, Walk, FollowUntil (follow enemy until it's not in attack range), Attack. I want to have an...
`BTRoot` has been modified with an additional exported variable named `allow_await`. When `true`, the `BTRoot` modifies its flow such that it `await`s for `tick()`, and suspends processing until that `await`...
I was working some with the FSM capabilities and wanted to add some additional functionality. The three core things added here: - **Split Transition:** Transitions that always transition based on...
This PR makes both FSM and BTree systems work properly when their nodes are moved, removed, added at runtime. On top of that many nodes are now fine when they...