Giter Club home page Giter Club logo

Comments (7)

Atulin avatar Atulin commented on August 31, 2024

Callstack:

>	UE4Editor-DonAINavigation.dll!TSet<AActor * __ptr64,DefaultKeyFuncs<AActor * __ptr64,0>,FDefaultSetAllocator>::FindId(AActor * Key) Line 631	C++
 	[Inline Frame] UE4Editor-DonAINavigation.dll!TSet<AActor *,DefaultKeyFuncs<AActor *,0>,FDefaultSetAllocator>::Contains(AActor *) Line 728	C++
 	[Inline Frame] UE4Editor-DonAINavigation.dll!ADonNavigationManager::HasTask(AActor *) Line 1063	C++
 	UE4Editor-DonAINavigation.dll!UBTTask_FlyTo::SchedulePathfindingRequest(UBehaviorTreeComponent & OwnerComp, unsigned char * NodeMemory) Line 92	C++
 	UE4Editor-DonAINavigation.dll!UBTTask_FlyTo::ExecuteTask(UBehaviorTreeComponent & OwnerComp, unsigned char * NodeMemory) Line 58	C++
 	[Inline Frame] UE4Editor-AIModule.dll!UBTTaskNode::WrappedExecuteTask(UBehaviorTreeComponent &) Line 28	C++
 	UE4Editor-AIModule.dll!UBehaviorTreeComponent::ExecuteTask(UBTTaskNode * TaskNode) Line 1687	C++
 	UE4Editor-AIModule.dll!UBehaviorTreeComponent::ProcessPendingExecution() Line 1486	C++
 	UE4Editor-AIModule.dll!UBehaviorTreeComponent::ProcessExecutionRequest() Line 1442	C++
 	UE4Editor-AIModule.dll!UBehaviorTreeComponent::TickComponent(float DeltaTime, ELevelTick TickType, FActorComponentTickFunction * ThisTickFunction) Line 1172	C++
 	[Inline Frame] UE4Editor-Engine.dll!FActorComponentTickFunction::ExecuteTick::__l2::<lambda_e8384def656dc646af48282ce274db64>::operator()(float) Line 795	C++
 	UE4Editor-Engine.dll!FActorComponentTickFunction::ExecuteTickHelper<<lambda_e8384def656dc646af48282ce274db64> >(UActorComponent * Target, bool bTickInEditor, float DeltaTime, ELevelTick TickType, const FActorComponentTickFunction::ExecuteTick::__l2::<lambda_e8384def656dc646af48282ce274db64> & ExecuteTickFunc) Line 3095	C++
 	UE4Editor-Engine.dll!FActorComponentTickFunction::ExecuteTick(float DeltaTime, ELevelTick TickType, ENamedThreads::Type CurrentThread, const TRefCountPtr<FGraphEvent> & MyCompletionGraphEvent) Line 797	C++
 	[Inline Frame] UE4Editor-Engine.dll!FTickFunctionTask::DoTask(ENamedThreads::Type) Line 270	C++
 	UE4Editor-Engine.dll!TGraphTask<FTickFunctionTask>::ExecuteTask(TArray<FBaseGraphTask *,FDefaultAllocator> & NewTasks, ENamedThreads::Type CurrentThread) Line 829	C++
 	[Inline Frame] UE4Editor-Core.dll!FBaseGraphTask::Execute(TArray<FBaseGraphTask *,FDefaultAllocator> & CurrentThread, ENamedThreads::Type) Line 498	C++
 	UE4Editor-Core.dll!FNamedTaskThread::ProcessTasksNamedThread(int QueueIndex, bool bAllowStall) Line 665	C++
 	UE4Editor-Core.dll!FNamedTaskThread::ProcessTasksUntilIdle(int QueueIndex) Line 585	C++
 	UE4Editor-Engine.dll!FTickTaskSequencer::ReleaseTickGroup(ETickingGroup WorldTickGroup, bool bBlockTillComplete) Line 558	C++
 	UE4Editor-Engine.dll!FTickTaskManager::RunTickGroup(ETickingGroup Group, bool bBlockTillComplete) Line 1455	C++
 	UE4Editor-Engine.dll!UWorld::RunTickGroup(ETickingGroup Group, bool bBlockTillComplete) Line 780	C++
 	UE4Editor-Engine.dll!UWorld::Tick(ELevelTick TickType, float DeltaSeconds) Line 1466	C++
 	UE4Editor-UnrealEd.dll!UEditorEngine::Tick(float DeltaSeconds, bool bIdleMode) Line 1691	C++
 	UE4Editor-UnrealEd.dll!UUnrealEdEngine::Tick(float DeltaSeconds, bool bIdleMode) Line 403	C++
 	UE4Editor.exe!FEngineLoop::Tick() Line 3495	C++
 	[Inline Frame] UE4Editor.exe!EngineTick() Line 62	C++
 	UE4Editor.exe!GuardedMain(const wchar_t * CmdLine, HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, int nCmdShow) Line 166	C++
 	UE4Editor.exe!WinMain(HINSTANCE__ * hInInstance, HINSTANCE__ * hPrevInstance, char * __formal, int nCmdShow) Line 209	C++
 	[Inline Frame] UE4Editor.exe!invoke_main() Line 102	C++
 	UE4Editor.exe!__scrt_common_main_seh() Line 283	C++
 	kernel32.dll!BaseThreadInitThunk�()	Unknown
 	ntdll.dll!RtlUserThreadStart�()	Unknown

from donainavigation.

jcageman avatar jcageman commented on August 31, 2024

Got the same error and stacktrace. The issue in my case is that the actor which does a pathfinding request is outside of the manager range

	NavigationManager =  UDonNavigationHelper::DonNavigationManagerForActor(pawn);
	if (NavigationManager->HasTask(pawn) && !QueryParams.bForceRescheduleQuery)
		return EBTNodeResult::Failed; // early exit instead of going through the manager's internal checks and fallback via HandleTaskFailure (which isn't appropriate here)

NavigationManager is a nullptr here in my case, which results in an incorrect dereference on the next line. Current local code to fix the issue:

NavigationManager =  UDonNavigationHelper::DonNavigationManagerForActor(pawn);
if (NavigationManager && NavigationManager->HasTask(pawn) && !QueryParams.bForceRescheduleQuery)
	return EBTNodeResult::Failed; // early exit instead of going through the manager's internal checks and fallback via HandleTaskFailure (which isn't appropriate here)

from donainavigation.

Atulin avatar Atulin commented on August 31, 2024

The actor was well within the navmesh in my case

from donainavigation.

jcageman avatar jcageman commented on August 31, 2024

Another case where it could go wrong, since it really seems to be the same crashsite, is that the moment an actor dies this task is still ran (could be timing related). I.e. if the pawn is a nullptr here, you get the same issue, since then also the manager is not found for the pawn.

from donainavigation.

Atulin avatar Atulin commented on August 31, 2024

The crash occurs as soon as the BT is activated. The pawn is alive and well at the time.

from donainavigation.

jcageman avatar jcageman commented on August 31, 2024

Why not attach a debugger and find out? It should break at the right spot

from donainavigation.

Atulin avatar Atulin commented on August 31, 2024

It breaks on FlyTo, throws callstack mentioned above. Not much more, if anything, to work with.

from donainavigation.

Related Issues (13)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.