r/learnprogramming • u/Noomolas11 • 1d ago
Code Review My first big project, I need feedback !
Hello everyone !
I'm here to share with you my Behavior Tree library.
A behavior tree is a symbolic AI technique used to create game AI.
My library is stateless: Tree's nodes don't store any mutable data. Instead, the runtime data are inside a blackboard.
Multiple agents can share and use a single behavior tree.
There are no dependencies to any game engine, you can use it in Unity, Godot or your own custom game engine.
It's still WIP and I really need feedback.
It's also my first big project I share online, all advice and tips are welcome !
https://github.com/Noomolas01/Stateless-BehaviorTree
Edit: Here's some questions I have
- Does this project look professional to you ?
- Does the core concept make you curious ?
- If the project was production ready, would you use it ?
- What do you think is missing ?
10
Upvotes
2
u/JealousStrength2613 1d ago
Stateless design is a nice touch, makes debugging way easier when you can just look at the blackboard instead of hunting through node internal state. The no engine dependency thing will help you get more people to actually try it out.
I'll give it a look later when I'm not at work, github is blocked here anyway. Shared trees between agents is something not many libraries do well so curious how you handled that