C++ BTService disappears in Behavior tree after reopening editor?

Hello! Soo I created a custom C++ BTService, but for some reason, it keeps removing itself from the editor after restarting it?

Once compiled:


and here’s after restarting the editor


I’ve also attached my code i have currently as well


// Fill out your copyright notice in the Description page of Project Settings.

#pragma once

#include "BehaviorTree/Services/BTService_BlackboardBase.h"
#include "DetectEnemy_Crawler.generated.h"

class TEST_API UDetectEnemy_Crawler : public UBTService_BlackboardBase


	virtual void TickNode(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory, float DeltaSeconds) override;


// Fill out your copyright notice in the Description page of Project Settings.

#include "Test.h"
#include "BehaviorTree/BehaviorTreeComponent.h"
#include "BehaviorTree/BlackboardComponent.h"
#include "BehaviorTree/Blackboard/BlackboardKeyAllTypes.h"
#include "CrawlerController.h"
#include "Crawler.h"
#include "DetectEnemy_Crawler.h"

	bCreateNodeInstance = true;

void UDetectEnemy_Crawler::TickNode(UBehaviorTreeComponent& OwnerComp, uint8* NodeMemory, float DeltaSeconds)
	Super::TickNode(OwnerComp, NodeMemory, DeltaSeconds);

	ACrawlerController *CC = Cast<ACrawlerController>(OwnerComp.GetAIOwner());
	if (CC != NULL)
		ATargetPoint* Waypoint = Cast<ATargetPoint>(OwnerComp.GetBlackboardComponent()->GetValue<UBlackboardKeyType_Object>(CC->WaypointID));
		if (Waypoint)
			GEngine->AddOnScreenDebugMessage(-1, 2.f, FColor::Red, "Found!");

Any help would be super :(! such a strange thing to happen here

Ok soooo, I think i found my workaround. Soo I created a new Service through BP. Went to Class Settings and found the DetectEnemy_Crawler service. I applied that and it works!


However, I was curious if there was still away to still have it call through C++ and not having to create a BP object? If not, then I will stick to this method and consider this issue solved