question

Tanguy avatar image
Tanguy asked

Unable to get UE5 Steam Dedicated Server to work: Steam won't initialise

Hey there,

We've been trying to set up a dedicated server for our game using the Multiplayer servers feature.

I can see the game server and Unreal Engine being initialized through the logs after shutting down the server. However, we always get "Steam Dedicated Server API failed to initialize". The assets contain all the required Steam DLLs. This is the same build that works for us locally and it perfectly shows up in the Steam server browser.

I have tried:

- Debugging the container locally with LocalMultiplayerAgent, shuts down instantly after the following, so it's of no help (no error message)

{"log":"Running Startup Script\n","stream":"stdout","time":"2022-11-11T13:52:29.4314198Z"}
{"log":"Certificates located at: C:\\GameCertificates\n","stream":"stdout","time":"2022-11-11T13:52:29.4339023Z"}

- Checking if I might need SteamCMD installed, but the person in this thread confirmed that they can have their server running with Steam without installing SteamCMD

- Checking the DLL diff (as far as I know, the server wouldn't even run without the required DLLs)

- Opening the required ports for Steam

- Changing the VM type to Process, which yields the same result

Is there anything else I could try to make this work?

The problem is not with the game build as it's running as it should on our local machines.

Thanks in advance

unrealCustom Game Serversmultiplayer
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Xiao Zha avatar image
Xiao Zha answered

Did you check the required DLL based on this documentation: Determining required DLLs for Windows game servers - PlayFab | Microsoft Learn? You can refer to this thread: Steam Dedicated Server with PlayFab - "Warning: Steam Dedicated Server API failed to initialize.” - Unreal Engine Forums to have more information. If this is not the case, could you please provide the full server logs and the local debug logs for us to research.

10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Tanguy avatar image
Tanguy answered

Hey Xiao,

Here are the logs for when we run it on PlayFab: PlayFab Logs

And here are the logs on the LocalMultiplayerAgent: localmultiplayeragentlogs.txt

As you can see the LocalMultiplayerAgent just stops at "Game ceritifcates found at .."

We have the following Steam DLLs in the root directory:

steamclient.dll
steamclient64.dll
tier0_s.dll
tier0_s64.dll
vstdlib_s.dll
vstdlib_s64.dll
crashhandler.dll
crashhandler64.dll

This is the output of ListDlls on our server executable:

RightToRuleServer.exe pid: 24948
Command line: "Z:\SteamLibrary\steamapps\common\Right to Rule Dedicated Server\RightToRuleServer.exe" -log


Base                Size      Path
0x00000000c9020000  0x2c000   Z:\SteamLibrary\steamapps\common\Right to Rule Dedicated Server\RightToRuleServer.exe
0x0000000045830000  0x1f8000  C:\WINDOWS\SYSTEM32\ntdll.dll
0x00000000450d0000  0xbf000   C:\WINDOWS\System32\KERNEL32.DLL
0x0000000042f80000  0x2d2000  C:\WINDOWS\System32\KERNELBASE.dll
0x00000000f9900000  0xc9000   C:\Program Files\Bitdefender\Bitdefender Security\bdhkm\dlls_266028799605032704\bdhkm64.dll
0x00000000f97d0000  0x12a000  C:\Program Files\Bitdefender\Bitdefender Security\atcuf\dlls_266149177300000000\atcuf64.dll
0x00000000452a0000  0x19d000  C:\WINDOWS\System32\USER32.dll
0x0000000043460000  0x22000   C:\WINDOWS\System32\win32u.dll
0x0000000044ad0000  0x2b000   C:\WINDOWS\System32\GDI32.dll
0x0000000043670000  0x10f000  C:\WINDOWS\System32\gdi32full.dll
0x00000000435d0000  0x9d000   C:\WINDOWS\System32\msvcp_win.dll
0x0000000043780000  0x100000  C:\WINDOWS\System32\ucrtbase.dll
0x0000000044870000  0xae000   C:\WINDOWS\System32\ADVAPI32.dll
0x0000000045190000  0x9e000   C:\WINDOWS\System32\msvcrt.dll
0x0000000045440000  0x9c000   C:\WINDOWS\System32\sechost.dll
0x0000000043950000  0dllx125000  C:\WINDOWS\System32\RPCRT4.dll
0x0000000043a80000  0x743000  C:\WINDOWS\System32\SHELL32.dll
0x00000000441d0000  0x55000   C:\WINDOWS\System32\SHLWAPI.dll
0x00000000457b0000  0x32000   C:\WINDOWS\System32\IMM32.DLL
0x0000000028530000  0x2f000   C:\WINDOWS\SYSTEM32\msvcp140_2.dll
0x0000000021f60000  0x8e000   C:\WINDOWS\SYSTEM32\MSVCP140.dll
0x0000000021ff0000  0x1b000   C:\WINDOWS\SYSTEM32\VCRUNTIME140.dll
0x0000000025ad0000  0xc000    C:\WINDOWS\SYSTEM32\VCRUNTIME140_1.dll
0x0000000000400000  0x1e000   C:\WINDOWS\SYSTEM32\XINPUT1_3.DLL
0x0000000044c60000  0x468000  C:\WINDOWS\System32\SETUPAPI.dll
0x0000000042f30000  0x4e000   C:\WINDOWS\System32\cfgmgr32.dll
0x00000000433c0000  0x27000   C:\WINDOWS\System32\bcrypt.

For some reason, it doesn't list Steam DLLs even though it requires them (nontheless the server works with Steam and shows up perfectly).

Thanks in advance.


3 comments
10 |1200

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Xiao Zha avatar image Xiao Zha commented ·

Since the server didn’t list any Steam DLLs, which means the Steam DLLs were not included into your server package, you can try to copy the Steam DLLs into your server package to see if the problem still exists. For more information you can refer to Steam Dedicated Server with PlayFab - "Warning: Steam Dedicated Server API failed to initialize.” - Unreal Engine Forums.

1 Like 1 ·
Tanguy avatar image Tanguy Xiao Zha commented ·

Hello Zhao,

We moved the Steam DLLs which were already in the server package to the Binaries/Win64 folder. Now Steam works. Thank you!

However, our server seems to not show up in-game. As ports, we put 7777 and 27015, and 27016 for Steam. We can confirm that it can find our locally hosted server when we run it.

Is it necessary to have the PlayFab GSDK integrated for the server to even show up at all? I thought that was only necessary for the matchmaking function but doesn't affect the server's ability to be online.

The servers show "Pending heartbeat" which is normal as we were testing with a build without PlayFab GSDK integration. From the logs, we can tell that the server should be up and running. These are the logs: e1067f03e50e6f289877371d0872bf70155d7a1f08e94fb7f3.zip

Thanks in advance.

0 Likes 0 ·
Xiao Zha avatar image Xiao Zha Tanguy commented ·

To use PlayFab Multiplayer Server, you have to integrate GSDK with your server build. You can refer to Integrating game servers with the PlayFab Game Server SDK (GSDK) - PlayFab | Microsoft Learn to have more information.

0 Likes 0 ·

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.