Ue4 dedicated server and steam running in background.

I’ve been fighting with getting a developer build of dedicated server running and happened upon some strange results.

If I have steam running (not in any game.) and load my gameserver.exe it loads different then when steam is not running.

If steam is running I can’t connect to the server from another computer and even the server log indicates thugs differently.

If it’s not running I can connect to the server from another computer but see authentication errors in the server log.

I’ll post the two logs the server is spitting out in both cases soon when I get back to my dev PC but this doesn’t sound right. I’d imagine the server shouldn’t care about steam running as long as the client of the game and server are not running on the same computer?

Looking for some insight.

I’ll spike out the interesting stuff here.

WITH steam running: - Other Steam/Clients CANNOT connect to it.

[2016.10.13-11.10.07:958][  0]LogNet:Display: SteamNetDriver_0 bound to port 7777

WITHOUT steam running: - Other Steam/Clients CAN connect to it.

[2016.10.13-11.11.10:384][  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.
[2016.10.13-11.11.10:385][  0]LogOnline:Display: STEAM: OnlineSubsystemSteam::Shutdown()
[2016.10.13-11.11.10:385][  0]LogOnline:Warning: STEAM: Steam API failed to initialize!
[2016.10.13-11.11.10:386][  0]LogOnline:Display: STEAM: OnlineSubsystemSteam::Shutdown()
[2016.10.13-11.11.10:386][  0]LogInit: WinSock: Socket queue 131072 / 131072
[2016.10.13-11.11.10:387][  0]LogInit: WinSock: I am Blackbox (10.0.0.22:0)
[2016.10.13-11.11.10:387][  0]PacketHandlerLog: Loaded PacketHandler component: Engine.EngineHandlerComponentFactory (StatelessConnectHandlerComponent)
[2016.10.13-11.11.10:387][  0]LogNet: GameNetDriver IpNetDriver_0 IpNetDriver listening on port 7777

[2016.10.13-11.11.10:406][  0]LogOnline:Warning: NULL: AutoLogin missing AUTH_LOGIN=<login id>.

[link text][1]

Hey Inph1del,

I wanted to let you know that I am looking into your issue. I will update you as soon as I have more information.

Quick note: I am using dev app id. 480 and have tested this with both local address and over the Internet

I used front end to build both the server and no editor version

Hey again,

Please let me know if you are using Blueprint to create/join/destroy sessions, or if you are using C++.

Thanks.

In client the sessions are joined through blueprint.

There is a c class override however

void AMyGameSession::RegisterServer() {
Super::RegisterServer();

if (!IsRunningDedicatedServer()) {
	return;
}

IOnlineSessionPtr SessionInt = Online::GetSessionInterface();

FOnlineSessionSettings Settings;
Settings.NumPublicConnections = 10;
Settings.bShouldAdvertise = true;
Settings.bAllowJoinInProgress = true;
Settings.bIsLANMatch = false;
Settings.bUsesPresence = true;
Settings.bAllowJoinViaPresence = true;
Settings.bIsDedicated = true;

SessionInt->CreateSession(0, GameSessionName, Settings);
}

This is in the h file as override.

Side note I’ve been using console on clients to open ip with both 7777 and 27015 since it’s not showing dedicated on my browser current only sees the hosted games from other clients

Hey Inph1del,

Sorry for the delay on this.

So I am able get get a Steam server to launch and be ready all the way up to using your RegisterServer( ) function and FOnlineSessionSettings. If I use yours, the server instantly crashes with:

Assertion failed: SteamUtilsPtr [File:D:\UnrealEngine-4.13.1-release\Engine\Plugins\Online\OnlineSubsystemSteam\Source\Private\OnlineSessionAsyncLobbySteam.cpp] [Line: 434] 

I will continue to try more options on my end but wanted to reach out and let you know what I am seeing.

As a suggestion, it could be useful to have the session get created with CreateSession( ) differently.

If I problem I’ve done some research in forums and found there was a user made addition to the source back on 11? Which fixes some steam stuff still looking to see if it’s been moved up to 13 or making its way to 14.

Some stuff doesn’t seem applicable anymore so tough to follow along.

If I recal they identified that master server cannot make a lobby which ue4 is doing with the session creation. Be is because of the presence bool.

Still digging thanks for the response.

Hey again,

I got a reply from a engineer and they said a couple things. I am not sure if they are related specifically to what you are experiencing but I wanted to share just in case:

For your crash, it’s because you have bUsesPresence set to true. FOnlineSessionSteam::CreateSession checks that value to decide whether to create a lobby session or a server session. If you set it to false, it should do the right thing hopefully.

It could also be a firewall setting preventing incoming connections. Make sure that you have port 7777 (Unreal default for listen servers) open.

Thanks for your patience.

No problem I really appreciate your time and efforts. Be a big help if I can get my dedicated server to build out so it advertises on steam, could then turn around to make vid tutorials on the process as there are some mixed old info out there.