Hi, i created an AI enemy, it uses a Behaviour Tree and i worked it around the best i could to avoid each task and service to have too many information about current AI character, like castings, etc to easily copy-paste BTrees, Tasks and Services for fast creation of several enemies in the future (duplicates).
My big problem is that even do i made this BT the cleanest way posible, there is lots of hidden isues when trying to copy-paste BTrees, tasks and services… for example: duplicated BTs some times cant recognice the new tasks directories, original BTs can also lost some task locations too, some duplicated tasks cant really be… duplicated even if they look like they did, they act like childs or mirrors, very weird… and ultimately… it still takes days to customize each task, service, BT, Controller, decorator, replicate variables and edit the new BP enemy.
Then i wonder, if avoiding making Behaviour Trees and make behaviours inside each enemy type could be a better idea for efficiency… bTs all they do its communicate between blueprints (tasks and services), the “Tree” concept could easily be done by using branches, switchers and variables, so why not just make the AI behaviours inside each enemy BP? even tasks could work as functions, and it will be easier to duplicate each enemy type and create a new one by just change mesh, animationBP, controller and avoid having to deal with each task, service, BT, etc… also with BT tasks you might need to create several new ticks per enemy, when you could just have 1 in the BP.
What do you think? what has worked better for you?