Unreal engine multiple dedicated server instances

Hi. I’m trying to setup a game where the game uses steam, unreal engine and gamelift. Game uses ipnetdriver because game joining and matchmaking happens through gamelift and flexmatch. The problem is that the steam initializes correctly in gamelift only if 1 concurrent process is allowed to be used. If I try to use more than 1 concurrent process or add more concurrent processes after the initial successfull launch the new server instances fail to initialize steam and the clients can’t join the gamesessions on those instances.

The instances that fail to initialize have this error log in them
LogSteamShared: Warning: Steam Dedicated Server API failed to initialize.
LogOnline: STEAM: [AppId: 999920] Game Server API initialized 0
LogOnline: Warning: STEAM: Failed to initialize Steam, this could be due to a Steam server and client running on the same machine. Try running with -NOSTEAM on the cmdline to disable.

What must I do to be able to run multiple dedicated server instances on one fleet?

You may get a faster response on the Unreal/Steam forums.

Have you made sure you are setting a different port for each server instance and registering that with correctly with steam? ie

--runtime-configuration ServerProcesses="[{LaunchPath="/local/game/Server",Parameters="port:1935",ConcurrentExecutions=1}, \
{LaunchPath="/local/game/Server",Parameters="port:2401",ConcurrentExecutions=1}, \
{LaunchPath="/local/game/Server",Parameters="port:5999",ConcurrentExecutions=1}, \
{LaunchPath="/local/game/Server",Parameters="port:6251",ConcurrentExecutions=1}, \

See https://docs.aws.amazon.com/gamelift/latest/developerguide/fleets-multiprocess.html

1 Like