Everytime, I start Unreal Editor, one of my nodes in Behavior Tree gets reseted and I need to manually restore it to the correct one. Not only this annoying, but also I cannot run a standalone game even if I correct the BT.
I verified the engine but that did not help me.
Could you point me out , what is wrong with my tree.
Thanks,
this is what I get everytime I start Unreal Editor
& 2) - I haven’t tried in a clean project. I will do that later.
I don’t use blueprints. My tasks are C++ classes based on UBTTask_BlackboardBase. Interesting thing that I have implemented a few of them - and they almost similar but for some reason only GoTo Task gives such results.
For the clean project where I tested it, it is really empty.
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "BehaviorTree/Tasks/BTTask_BlackboardBase.h"
#include "BTTask_GoTo.generated.h"
/**
*
*/
UCLASS()
class KOSMOFRONT_API UBTTask_GoTo : public UBTTask_BlackboardBase
{
GENERATED_BODY()
};
As you see I extended it from UBTTask_BlackboardBase, not from MoveTo.
After I renamed it from UBTTask_GoTo to UBTTask_GoToDestination, everything went fine.
I was able to reproduce the error in your screenshot. As you mentioned it seems to be related to the name given to the class. I’ve submitted a report to investigate this further (UE-20918).
I’ve encountered the same problem with version 5.0.3-20979098
I noticed some of the custom BTTask/BTService did not load into UE when opening a project, causing the references to “not be found” in the behaviour tree.
I deleted the /binaries and /intermediate folder in the project folder then right-click on project file → generate visual studio project files. Then double-click on project file and rebuild the binaries when prompted. This seemed to fix the problem for me (all classes properly loaded and found in BTtree) when reopening project after closing. IE the class naming was not involved for me.