UE5 EA dedicated server (Dev in Editor and Package)

Hello,

Anyone can confirm that the dedicated server creation is not fully available in UE5 EA ?

I tried to follow this as UE4 : Setting Up Dedicated Servers | Unreal Engine Documentation

I created the server target file (.cs) in my C++ project and I compiled it successfuly with “Development Server” configuration under VS2019.

But in Unreal Editor, no “WindowsServer” folder is created when I tried to package with “Windows (Server)” target.
Only the “Windows” folder is created as a solo game.

Work around but not sure is 100% accurate :

  1. Package the game with “Windows” target
  2. Compile dedicated server in VS2019
  3. Copy binary \Binaries\Win64<project>Server.exe from VS2019 build folder to package folder Windows<project>\Binaries\Win64<project>Server.exe
  4. Run with “-log” to see the result

Maybe client target should be created too and maybe try other binary conf “shipping” to have a fully functional package from Unreal Editor ?

Or just wait and see for release ?

Thank you for your advice.

Have fun,
Zarx.

Noone with the same problem ?

We have the same problem.
Building Server with VS2019 is working, but if we start the server it there are a lot of erorrs.
CDO constructor Failed to find … files from EngineResources.

i had the same problem, it helped How to package the game with Server Target setting? - #11 by IncantaGames

3 Likes

I am having this exact issue and I cannot find a workaround. The link that was posted earlier in this thread is not longer an option because the code given there isn’t the same as the current UE5 Early Access.

Any fixes?

Edit:

I figured it out.

If anyone ever has the same issue, do this:

Open your project in Visual Studio, go to Engine>UE5>Source>Developer>DesktopPlatform>Private and open PlatformInfo.cpp

Go down to line 87 and change the code as so:

	// client builds need to be plopped on the commandline, servers are handled differently? 
	// @todo: not sure if needed to be handled specially, honestly
	if (PlatformType == EBuildTargetType::Client)
	{
		UATCommandLine += TEXT(" -client");
	}
	else if (PlatformType == EBuildTargetType::Server)
	{
		UATCommandLine += TEXT(" -server -noclient");
	}

Then in the tabs above, change to Development Editor, Win64 (or whatever your platform is), as so:

Click build. It could take HOURS. If you’re on an SSD it could take 2+ hours, if you’re using HDD it could take 10+ hours.

When that is done, change Development Editor to Development Server and build again. It will take a bit, but not nearly as long. You will then have both the server and client executables.

2 Likes