In this chapter, we've learned how to create some simple AI by making our own Pawn and Controller with some code to make them run around a Nav Mesh. Then, we expanded on this by creating our own Behavior Tree with tasks, decorators, and services to expand on our AI's behavior.
You can see how Behavior Trees make creating complex AI a lot simpler. If we tried to do even this simple one in code, it would quickly become a complicated mess. It would be difficult to make major modifications, and it would be difficult to debug.
Even the code we made that detects the player can be simplified and made a lot more flexible. For more advanced reading, look into adding an AI perception component to the enemy's controller class: https://docs.unrealengine.com/en-us/Engine/Components/AI.
In the next chapter, we'll take a look at creating multiplayer games, and the...