I created a blackboard bool variable called AiDoStream. The purpose of this bool is to trigger true once the AI visits the stream to prevent it from returning. The behavior tree task handling the bool change is AiVisitStream. In AiVisitStream I’m struggling with 2 solutions.
The first solution is I create Event Receive Execute AI. I then create a variable called AiDoStream. I assign it as a black board key selector. I mark it as public and instance editable. I drag it into the graph selecting get. I then create the function Set Black Board Value As Bool and connect it with my variable AiDoStream. I check mark the lil red box cuz I want my variable set to True. I then create Finish Execute, check mark its success box, and then hook all my execute lines up. I then compile and run. But, after my AI executes the task my variable doesn’t change.
The second solution is I create Event Receive Execute AI. I create a function called Set Value As Bool. I check mark the lil red box cuz I want my variable set to True. I create a Make Literal Name function and in the text box I put the name of my variable AiDoStream. I connect it to Set Value As Bool function. I create the function Get Blackboard and also connect it to my function. On the other end of Get Blackboard there is a blue pin called Target. This is where I get lost. I’ve tried all sorts of configurations including casting, and creating object variables to plug into it. Nothing works.
What makes this so challenging is every example I find online deals with accessing black board variables on actors. Whereas I need to access them in behavior tasks. If someone could kindly give me an example of the proper way to wire this up, I’d be extremely grateful!
Additional info: My AI and its components is called NPC and it’s parent class is Character. The stream my AI is running to is a blueprint actor. My player and its components is ThirdPersonCharacter and it’s parent class is also Character.