Unknown exception - code 00000001 during ServerTravel

Hello, I tried to create a lobby system in which players are taken on another map (via ServerTravel command). The problem occurs when the game is over and that the server calls another time ServerTravel command to travel all clients to the previous map, this crash occurs:

MachineId:A866C35F41F256ADA278E49C910B2D60
EpicAccountId:64c7497a464840698f5d6338229b321f

Unknown exception - code 00000001 (first/second chance not available)

"Assertion failed: NewWorld [File:D:\BuildFarm\buildmachine_++depot+UE4-Releases+4.10\Engine\Source\Runtime\Engine\Private\UnrealEngine.cpp] [Line: 9440]
"

UE4Editor_Core!FDebug::AssertFailed() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\core\private\misc\outputdevice.cpp:374]
UE4Editor_Engine!UEngine::LoadMap() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\engine\private\unrealengine.cpp:9442]
UE4Editor_Engine!UEngine::Browse() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\engine\private\unrealengine.cpp:8682]
UE4Editor_Engine!UEngine::TickWorldTravel() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\engine\private\unrealengine.cpp:8822]
UE4Editor_Engine!UGameEngine::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\engine\private\gameengine.cpp:914]
UE4Editor!FEngineLoop::Tick() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\launch\private\launchengineloop.cpp:2427]
UE4Editor!GuardedMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\launch\private\launch.cpp:142]
UE4Editor!GuardedMainWrapper() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
UE4Editor!WinMain() [d:\buildfarm\buildmachine_++depot+ue4-releases+4.10\engine\source\runtime\launch\private\windows\launchwindows.cpp:200]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:264]
kernel32
ntdll

I don’t know how to fix this, can someone help me? Sorry for my bad english, i’m french :slight_smile:

You use blueprints only or you use also C++?

Either way i will explain you the crash, this might help you decode other crashes. You having a assertion error, UE4 code has self checks, it has check(x) where x is a bool condition (like in “if”), it’s a condition for the farther code in order to work stable, if condition fails it stop the code (it will trigger break on debug or simply crash the engine). It might sound like a crazy idea but it has a good goal, C++ code is compiled down to native CPU machine code, if something goes wrong there there will be crash practically with low amount of information, sometimes very hard to debug, that main difference between full unmanaged native code and managed code or virtual machines (like C#), in order to prevent that it is better to predict possible instability (by doing check if current state is a state which you know your code will run correctly) and crash it now by yourself, then letting it crash later on without much information what went wrong. Here you have wiki about it:

So in your case:

“Assertion failed: NewWorld [File:D:\BuildFarm\buildmachine_++depot+UE4-Releases+4.10\Engine\Source\Runtime\Engine\Private\UnrealEngine.cpp] [Line: 9440]”

After “Assertion failed:” there condition that failed, again it’s like “if” so that means it crashed the engine because some object varable “NewWorld” is null and it point you file and line where assertion failed and it leads here:

https://github.com/EpicGames/UnrealEngine/blob/release/Engine/Source/Runtime/Engine/Private/UnrealEngine.cpp#L9440

if( WorldPackage == NULL )
{
	// it is now the responsibility of the caller to deal with a NULL return value and alert the user if necessary
	Error = FString::Printf(TEXT("Failed to load package '%s'"), *URL.Map);
	return false;
}

// Find the newly loaded world.
NewWorld = UWorld::FindWorldInPackage(WorldPackage);

// If the world was not found, it could be a redirector to a world. If so, follow it to the destination world.
if ( !NewWorld )
{
	NewWorld = UWorld::FollowWorldRedirectorInPackage(WorldPackage);
	if ( NewWorld )
	{
		WorldPackage = NewWorld->GetOutermost();
	}
}

check(NewWorld); // this is assertion that failed

From that code you can jurge that package with the level was loaded, if it would not it would stop a function with error, so either FindWorldInPackage or FollowWorldRedirectorInPackage failed (redirectors helps old stuff work if you rename or or move content without editing old content refrence in it)

So i guess best way to go here would be check if you inputing right map name, if it’s ok and check if there was no error messages before crash happened, so check the logs in project directory Saved/Logs and see what happens before crash, there might be clues there. Either way there something wrong with loading map and overall world creation

I post this as anwser because it didn’t fit in comments

I got this assertion on Android, when I packaged wrong texture compression format. Try packaging for All compression formats.