Runing "Game"Server.exe crash

Hi,

I’m trying to deploy a dedicated server for my multiplayer game.

I followed this tutorial. Everything worked fine with UnrealFrontEnd.

But when i run the .exe file I have the following error :

> Assertion failed: IsValid()
> [File:D:\UnrealEngine-4.12.5-release\Engine\Source\Runtime\Core\Public\Templates\SharedPointer.h]
> [Line: 728] 
> 
> 
> 
> TopDownServer!FDebug::AssertFailed()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\core\private\misc\outputdevice.cpp:440]
> TopDownServer!FSlateApplicationBase::Get()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\slatecore\public\application\slateapplicationbase.h:410]
> TopDownServer!SWidget::RegisterActiveTimer()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\slatecore\private\widgets\swidget.cpp:700]
> TopDownServer!SProgressBar::Construct()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\slate\private\widgets\notifications\sprogressbar.cpp:27]
> TopDownServer!UProgressBar::RebuildWidget()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\progressbar.cpp:32]
> TopDownServer!UWidget::TakeWidget_Private()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\widget.cpp:502]
> TopDownServer!UHorizontalBoxSlot::BuildSlot()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\horizontalboxslot.cpp:25]
> TopDownServer!UHorizontalBox::RebuildWidget()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\horizontalbox.cpp:63]
> TopDownServer!UWidget::TakeWidget_Private()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\widget.cpp:502]
> TopDownServer!UVerticalBoxSlot::BuildSlot()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\verticalboxslot.cpp:26]
> TopDownServer!UVerticalBox::RebuildWidget()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\verticalbox.cpp:63]
> TopDownServer!UWidget::TakeWidget_Private()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\widget.cpp:502]
> TopDownServer!UCanvasPanelSlot::BuildSlot()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\canvaspanelslot.cpp:28]
> TopDownServer!UCanvasPanel::RebuildWidget()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\canvaspanel.cpp:58]
> TopDownServer!UWidget::TakeWidget_Private()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\widget.cpp:502]
> TopDownServer!UUserWidget::RebuildWidget()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\userwidget.cpp:447]
> TopDownServer!UWidget::TakeWidget_Private()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\components\widget.cpp:502]
> TopDownServer!UUserWidget::AddToScreen()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\umg\private\userwidget.cpp:605]
> TopDownServer!AWorldSettings::NotifyBeginPlay()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\engine\private\worldsettings.cpp:165]
> TopDownServer!AGameMode::SetMatchState()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\engine\private\gamemode.cpp:733]
> TopDownServer!AGameMode::StartPlay()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\engine\private\gamemode.cpp:545]
> TopDownServer!UWorld::BeginPlay()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\engine\private\world.cpp:3218]
> TopDownServer!UEngine::LoadMap()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\engine\private\unrealengine.cpp:9802]
> TopDownServer!UEngine::Browse()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\engine\private\unrealengine.cpp:8894]
> TopDownServer!UGameInstance::StartGameInstance()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\engine\private\gameinstance.cpp:351]
> TopDownServer!UGameEngine::Init()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\engine\private\gameengine.cpp:576]
> TopDownServer!FEngineLoop::Init()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\launch\private\launchengineloop.cpp:2281]
> TopDownServer!GuardedMain()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\launch\private\launch.cpp:140]
> TopDownServer!GuardedMainWrapper()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\launch\private\windows\launchwindows.cpp:126]
> TopDownServer!WinMain()
> [d:\unrealengine-4.12.5-release\engine\source\runtime\launch\private\windows\launchwindows.cpp:200]
> TopDownServer!__scrt_common_main_seh()
> [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253]
> kernel32 ntdll

Any help appreciated.
Thanks.

Something is going wrong with one of your UserWidgets. I cannot tell exactly what it is because I would need to debug through the project, which is all I can recommend. You can try to run the server through Visual Studio and see what line is crashing the program. You can then use the call stack to jump back and see which widget it is that is crashing.

I understand, if you debug the server from Visual Studio, it should hit the same error but instead of closing, Visual Studio will stop at the line that crashed the program (or server in your case). You can use this point to check to see what file is giving the problem.

Thanks for your quick answer. This is quite wierd because I have no problem running it with the editor and the client.exe.

How can have they a different behaviour ?

May be I was not very clear but the server.exe crash while initiliazing. Not at runtime.

Hi,

I solved the problem yesterday night. I was adding to viewport a Widget on the server (no checking before the creation).
I suppose it ran on the editor because of a “server emulation”. It could be good to add an error on the editor for this case to avoid people being lost (like me) when deploying the game on a server.