GetWorldTimerManager causes "Fatal error!"

Hello there!

Can you provide more details? Better would be all class definition and implementation, that relates to the timer, code of function that calls GetWorldTimerManager(). Thanks

Hey everyone, so I’m adding some timers to my game to manage health decay and gain over time.

But I’m getting a “Fatal error!” message when I compile. Then I relaunch the editor, and I get it during loading again. Removing the code and building in VS seems to fix it. But that’s obviously not a solution, since I need these timers.

The code that causes a crash is as follows:

GetWorldTimerManager().SetTimer(m_bloodChangeTimer, this, &ADivisionPlayerState::BloodTick, 1, true);

And I get this exception in my log:

[2016.02.07-03.31.46:620][  0]LogWindows:Error: === Critical error: ===
Fatal error!

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x000001b0

UE4Editor-Engine.dll!AActor::GetWorldTimerManager() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\engine\private\actor.cpp:282]
UE4Editor-Division-8438.dll
UE4Editor-CoreUObject.dll!UClass::CreateDefaultObject() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\coreuobject\private\uobject\class.cpp:2761]
UE4Editor-CoreUObject.dll!UObjectLoadAllCompiledInDefaultProperties() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\coreuobject\private\uobject\uobjectbase.cpp:724]
UE4Editor-CoreUObject.dll!ProcessNewlyLoadedUObjects() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\coreuobject\private\uobject\uobjectbase.cpp:818]
UE4Editor-CoreUObject.dll!TBaseStaticDelegateInstance<void __cdecl(void)>::ExecuteIfSafe() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\core\public\delegates\delegateinstancesimpl_variadics.inl:1021]
UE4Editor-Core.dll!TBaseMulticastDelegate<void>::Broadcast() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\core\public\delegates\delegatesignatureimpl_variadics.inl:921]
UE4Editor-Core.dll!FModuleManager::LoadModuleWithFailureReason() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\core\private\modules\modulemanager.cpp:427]
UE4Editor-Projects.dll!FModuleDescriptor::LoadModulesForPhase() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\projects\private\moduledescriptor.cpp:395]
UE4Editor-Projects.dll!FProjectManager::LoadModulesForProject() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\projects\private\projectmanager.cpp:53]
UE4Editor.exe!FEngineLoop::LoadStartupModules() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\launch\private\launchengineloop.cpp:2078]
UE4Editor.exe!FEngineLoop::PreInit() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\launch\private\launchengineloop.cpp:1551]
UE4Editor.exe!GuardedMain() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\launch\private\launch.cpp:110]
UE4Editor.exe!GuardedMainWrapper() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
UE4Editor.exe!WinMain() [c:\users\oyasu_000\documents\unreal_engine\unrealengine\engine\source\runtime\launch\private\windows\launchwindows.cpp:200]
UE4Editor.exe!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:264]
KERNEL32.DLL
ntdll.dll
ntdll.dll

Anyone have any idea what is wrong?

Thank you very much!

Try surrounding it with
if(GetWorld ())
{
}