Comments (5)
Thank you for your input! I was actually planning on rewriting/refactoring the BT stuff anyways, since you probably don't want the tick to run on each _process
tick anyways. This also includes the renaming of the Status
enum to something like BehaviourStatus
and put it directly in the base class of all nodes. Giving the option to switch between IDLE and PHYSICS is a good idea!
I poked at Beehave and their master also has it now (althoug AssetLib version doesnt). I would probably implement it in similar way, although they don't provide delta in tick() so users while coding the leafs will have to guess which process the Tree is using.
I could be wrong, but I think Beehave also stores its delta on the blackboard.
from behaviourtoolkit.
So in conclusion: Both BT and FSM need an export to toggle different process types and a way to tell them how often they should run. You can take a look at the branch releated to #3 where I started toying around with grouping Patterns together and have them called in alternating order. There needs to be a way to have them update on a lower rate to save on performance, as not all AIs/NPCs need super responsive behaviour.
from behaviourtoolkit.
Could you open a seperate issue for the API changes? I think that is something interesting to discuss for a 2.0.0 release, while the selectable process
should be be pretty easy to add. If you have any PRs in mind, feel free to add them too!
from behaviourtoolkit.
@SirPigeonz take a look at #27 and tell me what you think of it. Is that what you had in mind?
from behaviourtoolkit.
@SirPigeonz Thank you for this very useful contribution. I haven't put a lot of thought into this thing yet, as I was waiting until I really started implementing #3. I just merged your PR! I'd be happy to discuss further API changes for the 2.0.0 version in another issue. If anything is okay on your end, I'll happily close this one!
from behaviourtoolkit.
Related Issues (20)
- Sometimes a scene needs to be reloaded before you can edit / reset properties after adding a new node. HOT 6
- Godot 4.2 what is the policy HOT 2
- Tween node - add option to use value from blackboard HOT 4
- Using ReadTheDocs for documentation HOT 1
- Loop decorator leaf HOT 13
- Example Scene to use static typing HOT 3
- Redesign feature request: Simplify transitions HOT 7
- Maybe include behaviour and behavior in the title of your plugin in godot HOT 3
- Input? HOT 6
- Remove actor parameter in behavour's in favor of something else HOT 11
- Open discussions tab for repo HOT 1
- Convert BehaviourToolKit to use resources and graphic edit HOT 1
- LeafCondition for Vector2.length? HOT 2
- Add blackboard value support to LeafCall and LeafTween HOT 6
- LeafCall should accept blackboard value as argument type
- Errors after v2.0.1 update HOT 3
- Add the _on_enter() function to the BTBehaviour class for leaf,composite and etc HOT 1
- C#? HOT 1
- BTSequence does not return SUCCESS when the last action is successful until the after first action has run again in some cases. HOT 2
- `FiniteStateMachine` only processes one event per frame. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from behaviourtoolkit.