No instance of overloaded function

You need to call it this way:

BehaviorComp = CreateDefaultSubobject<UBehaviorTreeComponent>(TEXT("BehaviorComp"));

Also, since you are overriding the Possess function you need to call its Super implementation first:

void AAI_Controller::Possess(APawn * InPawn)
 {
     Super::Possess(InPawn);
 }

Otherwise, your possessing won’t work properly. (Credits to Daxter154 for the catch)

1 Like