Please, do a thoroughly tutorial (or even a series) about using the Unity Behavior. I'm struggling for weeks trying to create different behaviors (the classic: idle, patrol, chase, attack, receive damage). Maybe you could do two different approaches: one considering the viewer doesn't even know how to work with behavior trees (like me), and one considering the viewer already knows it, but they're trying to understand the unique features Unity Behavior offers. Of course, this is only a request. I love your videos :D
I want to know more about this please make more videos about this topic because there are very less tutorial about this right now. Please tell us the full potential.
Ah finally you came with behavior tree tutorials. Love your way of explaining itsy bitsy stuff man. Please keep these behavior tutorials coming as there aren't many out there.
More are on the way, especially in the next Microgame! I'm thinking about doing more bite-sized tutorials on Unity Behavior like this one. While I personally like the super long ones that show the full implementation, it seems that most people prefer the shorter ones. I'm very interested in the feedback on these shorter ones and how the analytics play out!
@LlamAcademy I personally like longer ones as they can easily cover alot of unforeseen stuff which always helps. My vote, Longer videos. Shorter ones are also better but when there's, like, some new feature. One example is that new Unity 6 feature where while pressing Ctrl key and click in your scene, it gives you a selection list of everything under your cursor and you don't have to keep clicking like a freak to select something. 😆
I have used GDevelop 5 engine where action and events are like story telling. Exciting to hear about the unity story telling action and events system. thanks to Ai!!!! huge thanks to this channel for creating a basic tutorial about this.
I would love to know more about Unity Behavior! My mind is already coming up with many possible small game ideas using this tool! Thank you for bringing it to our attention!
Great tutorial! I'd be interested in seeing a tutorial about scaling behavior trees to cover more variation in say, enemy types. A lot of tutorials currently are focused on the basics, but if we have multiple entities in the game that use the same behavior but rely on different values, like move speed for example, how do we make a tree that's flexible enough to dynamically handle it without hardcoding values into the blackboard?
Great overview, I actually just noticed this in the package manager yesterday, however I had already installed NodeCanvas. I often struggle with the *design* of BTs and knowing when to create micro and macro tasks/actions. The basics do generally tend to come with a bunch of micro tasks like in the example that you showed, so a node in the graph is doing a bunch of things like the say, choose random, target say, navigate to target. Whereas a more macro approach might be to create a custom node that does those 4 things in one action called "Pick and Move to Target" or something. Similar to if the action was "Patrol" or "Hunt for Player" or whatever.
I think it comes down to your preference and the level of control you want to push to the behavior tree system. For me, I tend to break them down when a branch condition comes in. We can encapsulate larger "Tasks" as subgraphs in this system which also helps. For example "Move" may not be as simple as a single node. Maybe you want to "Move" to follow a target. Maybe you want to "Move" to a single location. In that case I'd make a subgraph with a branch with 2 nodes - one that knows how to follow a target and one that knows how to move to a target location and branch between them based on some condition
more videos please. got some problems with the behavior graph. Specially with custom flows or actions with different ports... creepy behaviors sometimes or maybe i misunderstood something
I am curious how people handle things like "Navigate to position" but react if something happens on the way. I have resorted to custom actions called "NavigateToPositionUnlessCondition", which returns Status.Running unless the condition is true. Is this the correct approach? Or should I have parallel running nodes? That is, one that navigates and one that checks for the condition (and a "WaitForAny" node to tie them together?)
For this case I would probably use an "Abort" node at the top of the branch with your condition. You can "Abort if..." a value has changed, or a value equals a specific value. Once that happens, it will automatically cancel your branch and restart from the Abort node.
For that type of thing, at least in behaviour designer you would create sequence nodes on the same level , the one on the left-most should have the biggest priority (for example: if health is critically low, go out of the battle and try to heal), so the abort type there should be set to lower priority so that after every 'tick' of the tree the variables can be validated and the agent would 'determine' that it health is terribly low so he needs to leave the battle to heal
Great visual tool. I'm using my own tree implementation, but my btree is separated from code. It's a bit messy. Gonna have to look at this closer. If there is an option to chage update rate, for lets say 200 ms., I'll redo my btree.
I don't think today there is an out of the box configuration for it, but you can write your own MonoBehaviour that calls BehaviorGraph.Tick() at a custom interval and I think that should still give you that behavior!
This not what I expected. It's any way to make State mashing not nesery for AI outside of animation in unity. With similar graph like this? Or have to found there'd party asset's for this ?
great question 🙂 I'd say generally yes it's a great choice. However if you're going megascale RTS with thousands of units, you'll likely need a full DOTS implementation. Behavior is currently uses the standard interaction paradigm of a GameObject with MonoBehaviour(s).
You can make some aspects of your AI without writing any code, but most likely you will need to create some custom nodes to achieve the behaviors you'll need. Luckily Behavior makes the node creation process easy so you can focus on the implementation of your AI behaviors!
Please, do a thoroughly tutorial (or even a series) about using the Unity Behavior. I'm struggling for weeks trying to create different behaviors (the classic: idle, patrol, chase, attack, receive damage). Maybe you could do two different approaches: one considering the viewer doesn't even know how to work with behavior trees (like me), and one considering the viewer already knows it, but they're trying to understand the unique features Unity Behavior offers.
Of course, this is only a request. I love your videos :D
I want to know more about this please make more videos about this topic because there are very less tutorial about this right now. Please tell us the full potential.
I heard you all loud and clear 🙂 More coming!
@LlamAcademy thanks 🙏
Ah finally you came with behavior tree tutorials. Love your way of explaining itsy bitsy stuff man. Please keep these behavior tutorials coming as there aren't many out there.
More are on the way, especially in the next Microgame!
I'm thinking about doing more bite-sized tutorials on Unity Behavior like this one. While I personally like the super long ones that show the full implementation, it seems that most people prefer the shorter ones. I'm very interested in the feedback on these shorter ones and how the analytics play out!
@LlamAcademy I personally like longer ones as they can easily cover alot of unforeseen stuff which always helps. My vote, Longer videos. Shorter ones are also better but when there's, like, some new feature. One example is that new Unity 6 feature where while pressing Ctrl key and click in your scene, it gives you a selection list of everything under your cursor and you don't have to keep clicking like a freak to select something. 😆
@@LlamAcademy My vote goes to long ones too 😂
Please do a tutorial series on this. It would be incredibly helpful. 😊
Thanks for this 🙂I'd be interested in more in-depth videos, please
I have used GDevelop 5 engine where action and events are like story telling.
Exciting to hear about the unity story telling action and events system.
thanks to Ai!!!!
huge thanks to this channel for creating a basic tutorial about this.
Lliam Academy you are the best. You always showing underrated feautures from Unity.
Thank you thank you thank for highlighting this and giving an overview. I would Love to see more
Great! We need a lot more!
I would love to know more about Unity Behavior! My mind is already coming up with many possible small game ideas using this tool! Thank you for bringing it to our attention!
Thanks for this easy to understand tutorial. I'll take another piece :)
Holy moly, his hair gets brighter the stronger he gets!
I'm working towards SSJ2. Still on SSJ1 😢
HIS HAIR TURNED YELLER!
Bro im stoked!!! Thank you!!
How to create a third person controller in Unity
Great tutorial!
I'd be interested in seeing a tutorial about scaling behavior trees to cover more variation in say, enemy types. A lot of tutorials currently are focused on the basics, but if we have multiple entities in the game that use the same behavior but rely on different values, like move speed for example, how do we make a tree that's flexible enough to dynamically handle it without hardcoding values into the blackboard?
Stay tuned 🙂
yeah do more of this :)
Great overview, I actually just noticed this in the package manager yesterday, however I had already installed NodeCanvas. I often struggle with the *design* of BTs and knowing when to create micro and macro tasks/actions. The basics do generally tend to come with a bunch of micro tasks like in the example that you showed, so a node in the graph is doing a bunch of things like the say, choose random, target say, navigate to target. Whereas a more macro approach might be to create a custom node that does those 4 things in one action called "Pick and Move to Target" or something. Similar to if the action was "Patrol" or "Hunt for Player" or whatever.
I think it comes down to your preference and the level of control you want to push to the behavior tree system. For me, I tend to break them down when a branch condition comes in. We can encapsulate larger "Tasks" as subgraphs in this system which also helps.
For example "Move" may not be as simple as a single node. Maybe you want to "Move" to follow a target. Maybe you want to "Move" to a single location. In that case I'd make a subgraph with a branch with 2 nodes - one that knows how to follow a target and one that knows how to move to a target location and branch between them based on some condition
I need more info on this, I want to create my own nodes
more videos please. got some problems with the behavior graph. Specially with custom flows or actions with different ports... creepy behaviors sometimes or maybe i misunderstood something
Can you please make behavior graph tutorial from scratch? for example we as a player sneaking into a enemy base
I am curious how people handle things like "Navigate to position" but react if something happens on the way. I have resorted to custom actions called "NavigateToPositionUnlessCondition", which returns Status.Running unless the condition is true. Is this the correct approach? Or should I have parallel running nodes? That is, one that navigates and one that checks for the condition (and a "WaitForAny" node to tie them together?)
For this case I would probably use an "Abort" node at the top of the branch with your condition. You can "Abort if..." a value has changed, or a value equals a specific value. Once that happens, it will automatically cancel your branch and restart from the Abort node.
For that type of thing, at least in behaviour designer you would create sequence nodes on the same level , the one on the left-most should have the biggest priority (for example: if health is critically low, go out of the battle and try to heal), so the abort type there should be set to lower priority so that after every 'tick' of the tree the variables can be validated and the agent would 'determine' that it health is terribly low so he needs to leave the battle to heal
@@LlamAcademy @kantagara this has been very helpful. Thanks to both of you. And thanks for the video!
You awesome
Great visual tool. I'm using my own tree implementation, but my btree is separated from code. It's a bit messy. Gonna have to look at this closer. If there is an option to chage update rate, for lets say 200 ms., I'll redo my btree.
I don't think today there is an out of the box configuration for it, but you can write your own MonoBehaviour that calls BehaviorGraph.Tick() at a custom interval and I think that should still give you that behavior!
@@LlamAcademy Thanks! Disabling automatic update (enabled = false) and manually calling BehaviorGraph.Tick() should do the job.
This not what I expected.
It's any way to make State mashing not nesery for AI outside of animation in unity.
With similar graph like this?
Or have to found there'd party asset's for this ?
❤❤❤❤❤
🧡
Is Unity Behaviour suitable for creating AI for RTS games?
great question 🙂 I'd say generally yes it's a great choice. However if you're going megascale RTS with thousands of units, you'll likely need a full DOTS implementation. Behavior is currently uses the standard interaction paradigm of a GameObject with MonoBehaviour(s).
wow, does i understand right? make IA without writing code? need to try in my rts. and dude, paint hair blue again, i like it more)
You can make some aspects of your AI without writing any code, but most likely you will need to create some custom nodes to achieve the behaviors you'll need. Luckily Behavior makes the node creation process easy so you can focus on the implementation of your AI behaviors!