I'm pumped for this! The only thing missing is the visual 2D graph that shows states and transitions. The list is good, but it's even better in 2D. I hope state trees get even better in 5.5.
Great video man! 5.4 now has me seriously considering using State Tree, though I want to see them development it further before I fully commit. I noticed the State Tree also came with a new Move To task in the 5.4 update. However, for me this built in Move To task is bugged. Has anyone else noticed the Move To task being bugged?
@@blackshinobi956 I tested it further and it’s only bugged if you use it with other tasks in the same state and don't don’t call finish task on those other tasks. But if you use the new Move To node by itself in a state it works correctly, so it would seem it’s supposed to be used in a dedicated state for moving the AI. Interestingly, “Finish Task” is a confusing name because finishing a task doesn’t actually finish a task in the C++, it simply ends the state. So it’s possible to have multiple tasks in a single state which doesn’t end the state if you don’t call finish task. But this, for whatever reason, bugs out the new included MoveTo task. I kinda wish tasks were more robust with State Tree..
Whats the difference between bt and state trees besides state trees being general purpose and bt mainly ai? Are they more performant or run async or so? How would they performed if we compared 100ai using bt and 100 using st for behaviors? :D
Good questions, I've heard STs can be more performant, but I've never seen actual data proving it. The documentation for STs says the goal is to be highly performant, flexible, and organized, but the stuff I make isn't really pushing the upper limits for performance haha. I just find STs a little more organized in way I can understand.
Behavior Tree is more task oriented and the flow of logic moving from one task to another. While State Tree is a finite state machine, which is basically an abstract machine that can be in exactly one of a finite number of states at any given time. State Machine allow precise control over transition between states based on conditions. For example at the end of a state for an AI, the AI can be set to transition to a different state based on some transition rule. With BT you can't really control direct transition between specific states. Not every AI is going to need a State Tree, but the more complex the AI behavior the more need there is for a State Tree.
I'm pumped for this!
The only thing missing is the visual 2D graph that shows states and transitions. The list is good, but it's even better in 2D.
I hope state trees get even better in 5.5.
great tips, thanks for the insight and video :)
Glad it was helpful!
Wow these seem very powerful!
Great content! Thank you so much!
Thanks! Glad you liked it
Great video man! 5.4 now has me seriously considering using State Tree, though I want to see them development it further before I fully commit. I noticed the State Tree also came with a new Move To task in the 5.4 update. However, for me this built in Move To task is bugged. Has anyone else noticed the Move To task being bugged?
I didn't see the new move to node, but I'll check and see if it's bugged for me too. Thanks for wmpointing that out
@@blackshinobi956 I tested it further and it’s only bugged if you use it with other tasks in the same state and don't don’t call finish task on those other tasks. But if you use the new Move To node by itself in a state it works correctly, so it would seem it’s supposed to be used in a dedicated state for moving the AI. Interestingly, “Finish Task” is a confusing name because finishing a task doesn’t actually finish a task in the C++, it simply ends the state. So it’s possible to have multiple tasks in a single state which doesn’t end the state if you don’t call finish task. But this, for whatever reason, bugs out the new included MoveTo task.
I kinda wish tasks were more robust with State Tree..
very nice explained!
Glad it was helpful!
From what I am seeing all of this is in 3.5.2 as well
Whats the difference between bt and state trees besides state trees being general purpose and bt mainly ai? Are they more performant or run async or so? How would they performed if we compared 100ai using bt and 100 using st for behaviors? :D
Good questions, I've heard STs can be more performant, but I've never seen actual data proving it. The documentation for STs says the goal is to be highly performant, flexible, and organized, but the stuff I make isn't really pushing the upper limits for performance haha. I just find STs a little more organized in way I can understand.
Behavior Tree is more task oriented and the flow of logic moving from one task to another. While State Tree is a finite state machine, which is basically an abstract machine that can be in exactly one of a finite number of states at any given time. State Machine allow precise control over transition between states based on conditions. For example at the end of a state for an AI, the AI can be set to transition to a different state based on some transition rule. With BT you can't really control direct transition between specific states. Not every AI is going to need a State Tree, but the more complex the AI behavior the more need there is for a State Tree.
i dont know why but the breakpoints doesn't work at all for me ! kinda sad about it (i'm using unreal 5.4.4)
alright it worked, i just needed to enable the debugger viewer
State tree Debugger not available on Mac UE 5.4 ??? Can't see it in the dropdown menu