Great video, thank you very much! The part about why returning the 'Running' state was necessary was especially useful for helping me understand first principles of BTs. Cheers!
Thanks for the vid, i've worked with btrees in like 3 dif engines now and seeing how it's implimented in godot is useful (as i just used them, didn't code them from scratch.) Good framework!
I'm confused why you would do this with nodes. Isn't this a lot simpler and clearer in code using separate functions that call each other in the same hierarchy? And you don't have to spam your work environment with a code file for each iterative step for each behavior?
I think it depends on a developer’s preferences and, for me, the amount of behaviors or code. If the behavior is simple and the functions are not very numerous and are simple themselves, then putting all of it in one script would be OK. But add enough code into a script and you get narliness anyway. At least that's my opinion. I've had buckets and buckets of code in scripts before and it all gets very confusing to me at some point. So, I favor separating functionality out into separate scripts for nodes. But you have a point. If functionality is split into files at too granular a level, you'll get more than you need and I would think lend to confusion as well. As long as the chunks are meaningful and well named, and preferably re-usable, then I think it's a win.
By far one of the best tutorials on that matter out there. You got a new subscriber!
Excellent. I am working on an enemy using finite state machines. I definitely saw its limitations and didn't know about this approach. Thanks!!
Great video, thank you very much! The part about why returning the 'Running' state was necessary was especially useful for helping me understand first principles of BTs. Cheers!
Greatest enemy ai tutorial video on youtube! Please make more videos about how to make enemy AI behaviour. Please!
just wanted this was a great explanation and helped me implement my own beh tree in my game. Thanks for this :)
What a great explanation of a btree! Brilliant.
Thanks for the vid, i've worked with btrees in like 3 dif engines now and seeing how it's implimented in godot is useful (as i just used them, didn't code them from scratch.) Good framework!
Thank you for making this kind of videos. Can't wait for godot to really blow up and see the numbers on these vids go really up.
This is a great explanation. Thank you!
Great stuff. Subbed and liked.
I'm pretty good at finite state machines at this point. Im glad I can try another technique on my next project
This is gold. Thanks a bunch
Great video! Very well explained. Thanks for putting this together.
This really helped!
great explanations, thanks you both for the video and the source code!
This video is amazing. thank you so much
Thank you pro you really made my day ❤️
Very useful
Amazing!
I'm confused why you would do this with nodes. Isn't this a lot simpler and clearer in code using separate functions that call each other in the same hierarchy? And you don't have to spam your work environment with a code file for each iterative step for each behavior?
I think it depends on a developer’s preferences and, for me, the amount of behaviors or code. If the behavior is simple and the functions are not very numerous and are simple themselves, then putting all of it in one script would be OK. But add enough code into a script and you get narliness anyway. At least that's my opinion. I've had buckets and buckets of code in scripts before and it all gets very confusing to me at some point. So, I favor separating functionality out into separate scripts for nodes. But you have a point. If functionality is split into files at too granular a level, you'll get more than you need and I would think lend to confusion as well. As long as the chunks are meaningful and well named, and preferably re-usable, then I think it's a win.
👌
Thanks
nice
damn, when you said "that tick" everything clicked
✅FSM
✅Behaviour tress
GOAP
Lets keep the learning