Editor crash when exiting PIE after calling event

Hi,

A few hours ago I started to have a really strange problem with a BlueprintImplementableEvent. Whenever I call it, and then exit PIE, the editor crashes. If I don’t call the event from C++ or just don’t implement it with blueprint, it exits fine. Also if I remove the parameter, it doesn’t crash anymore. The weirdest thing is, that I didn’t even change the event, and until today it worked fine. I changed when it was called in C++, but it doesn’t seem to matter where I call it from.

UFUNCTION(BlueprintImplementableEvent, Category = Dialog)
void DialogueFunction(AAICharacter* NPC);

And when I interact with an NPC, I call it this way

DialogueFunction(this);

It really doesn’t matter how I implement the event in blueprints, as soon as I add the event to the graph, interact with the NPC and then exit, it crashes.

This post seems to be about the same problem:
Post

I decided to put this in the Blueprint-Section, but I’m not entirely sure if it’s a Blueprint or a C++ related problem.

Thank you for taking the time.


Here is the error-message:


Fatal error: [File:D:\BuildFarm\buildmachine_++depot+UE4-Releases+4.5\Engine\Source\Developer\MessageLog\Private\Model\MessageLogListingModel.cpp] [Line: 70] 
Critical Error PlayerState /Game/Maps/UEDPIE_0_PhunkTestMap.PhunkTestMap:PersistentLevel.PlayerState_1 Object from PIE level still referenced. Shortest path from root:    (Object is not currently rooted)



KERNELBASE.dll!UnknownFunction (0x000007fefd3a940d) + 0 bytes [UnknownFile:0]
UE4Editor-Core.dll!UnknownFunction (0x000007feeaa571c4) + 0 bytes [UnknownFile:0]
UE4Editor-Core.dll!UnknownFunction (0x000007feea8e979f) + 0 bytes [UnknownFile:0]
UE4Editor-MessageLog.dll!UnknownFunction (0x000007fedc56ae15) + 0 bytes [UnknownFile:0]
UE4Editor-MessageLog.dll!UnknownFunction (0x000007fedc56af0f) + 0 bytes [UnknownFile:0]
UE4Editor-Core.dll!UnknownFunction (0x000007feea8571e5) + 0 bytes [UnknownFile:0]
UE4Editor-UnrealEd.dll!UnknownFunction (0x000007fee64daa86) + 0 bytes [UnknownFile:0]
UE4Editor-UnrealEd.dll!UnknownFunction (0x000007fee62ad974) + 0 bytes [UnknownFile:0]
UE4Editor-UnrealEd.dll!UnknownFunction (0x000007fee670f966) + 0 bytes [UnknownFile:0]
UE4Editor.exe!FEngineLoop::Tick() (0x000000013f1ca8f4) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.5\engine\source\runtime\launch\private\launchengineloop.cpp:2129]
UE4Editor.exe!GuardedMain() (0x000000013f1bf9df) + 0 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.5\engine\source\runtime\launch\private\launch.cpp:133]
UE4Editor.exe!GuardedMainWrapper() (0x000000013f1bfa4a) + 5 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.5\engine\source\runtime\launch\private\windows\launchwindows.cpp:125]
UE4Editor.exe!WinMain() (0x000000013f1cbf19) + 17 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.5\engine\source\runtime\launch\private\windows\launchwindows.cpp:201]
UE4Editor.exe!__tmainCRTStartup() (0x000000013f1ccdc9) + 21 bytes [f:\dd\vctools\crt\crtw32\dllstuff\crtexe.c:618]
kernel32.dll!UnknownFunction (0x00000000773959ed) + 0 bytes [UnknownFile:0]
ntdll.dll!UnknownFunction (0x00000000775cc541) + 0 bytes [UnknownFile:0]
ntdll.dll!UnknownFunction (0x00000000775cc541) + 0 bytes [UnknownFile:0]

Hi HammelGammel,

I have a few clarification questions for you.

  • What version of the Engine are you using?
  • Are you using a binary version of the Engine installed by the Launcher, or did you build the Engine from source code?
  • Is this only happening in your own project, or can you reproduce it in a new project? If so, can you list the exact steps you are following to reproduce it?

I just solved the problem by replacing the parameter with a TWeakObjectPtr. I’m still not entirely sure why this fixed it, but I’m sure I’ll figure it out by reading more about them.

But thank you for answering! :slight_smile: