Cannot find/create sessions using steam subsystem

Hi all,

So im not sure what I missed, but basically when I go to find other sessions, I can see them (presumably other people’s games using the same steam app id), but I cannot find the session I make on my other standalone game. I can find my sessions when using PIE, but not standalone using steam.

Anyone? I’m a bit lost with this.

Ok I had a bit of a look at the logs to see whats going on when two standalone games are running.

LogOnline: STEAM: [AppId: 480] Client API initialized 1
LogSteamShared: Warning: Steam Dedicated Server API failed to initialize.
LogOnline: STEAM: [AppId: 480] 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.
LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()
LogSteamShared: Unloading the Steam API...
LogOnline: Warning: STEAM: Steam API failed to initialize!
LogOnline: Display: STEAM: OnlineSubsystemSteam::Shutdown()
LogOnline: OSS: Unable to create OnlineSubsystem instance Steam
LogInit: WinSock: version 1.1 (2.2), MaxSocks=32767, MaxUdp=65467
LogOnline: OSS: Created online subsystem instance for: NULL
LogOnline: OSS: TryLoadSubsystemAndSetDefault: Loaded subsystem for type [NULL]

So it seems that having two users causes issues and for the Steam API to not properly initialize. Any way around it, or you just can’t test on the same machine?

I’m currently testing a project with steam sessions too. Usually for testing I just exit steam in background and open 2-3 clients as standalone, it hosts and finds them properly this way - but of course without steam. Testing with steam on one computer probably would require some kind of virtual machines, but I saw people struggled with it too so I wasn’t looking much into it

So I tried having packaging my game and giving it to a friend as a test. Unfortunately, it still seems like whenever either of us create a session, neither of us can see each others, but we can both see other user’s created sessions with the same steam app id (480), so I’m guessing it’s something specifically tied to CreateSession that’s not working here, or the way DefaultEngine.ini is setup.

DefaultEngine.ini

[/Script/Engine.GameEngine]
+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver")

[OnlineSubsystem]
DefaultPlatformService=Steam

[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=480
bInitServerOnClient=true

[/Script/OnlineSubsystemSteam.SteamNetDriver]
NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection"

I also tried packaging my game to my laptop with a seperate steam account. Same deal: Can’t see each other’s created sessions but can see other random ones using the same steam app id.

Anyone have any guesses on what it might be?

Ok, I had a look at the logs, and noticed this
[2024.07.31-00.37.55:422][350]LogOnlineSession: STEAM: Found 50 lobbies, finalizing the search
So my suspicion is that perhaps because I’m using a steam app id of 480 (Spacewar) and many others are as well, my lobby finder is hitting the cap before it can find my session that I created.

So I guess the next step is to try and use C++ instead in order to limit the lobbies to the same type somehow, because BP seems too limited in order to do this unless you use Advanced Sessions plugin.