Having searched the web up and down without getting definitive clues, there is nothing left but asking for help.
Problem: Steam-Lobbies created with my Unreal Game are not listed to other game clients.
-
I have tested with a game client on a different machine and different steam account. The problem exists for both clients in the same network aswell as in separate networks.
-
In all cases the steam download
server were the same for both server
and client. -
In all of these cases the
server/client were in a NAT-Network,
if that matters. -
The game is registered (not yet released) on Steam and uses an own App-ID. The App-ID is referenced within the DefaultEngine.ini aswell as the game_target.cs, as described in the numerous instructions.
-
The Steam-Overlay itself works and I can successfully retrieve the Steam Username.
-
The Game is packaged with the ProjectLauncher (currently in Debug mode).
-
Unreal-Engine - Version 4.25.4, Advanced Sessions for Unreal 4.25, Steamworks-Library - Version 1.47
The Blueprint - Nodes:
The DefaultEngine.ini
…
[/Script/Engine.Engine]
MaximumLoopIterationCount=10000000
!NetDriverDefinitions=ClearArray
+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver")
[/Script/Engine.GameEngine]
;currently commented out. the same as above.
;+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver")
[OnlineSubsystem]
DefaultPlatformService=Steam
PollingIntervalInMs=20
;OnlineSubsystem.bInitServerOnClient=true
[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=1743880
SteamAppId=1743880
GameServerQueryPort=27015
bRelaunchInSteam=false
GameVersion=0.1.2
bVACEnabled=1
bAllowP2PPacketRelay=true
P2PConnectionTimeout=90
[/Script/OnlineSubsystemSteam.SteamNetDriver]
NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection"
MaxClientRate=100000
MaxInternetClientRate=100000
[/Script/OnlineSubsystemUtils.IpNetDriver]
MaxClientRate=100000
MaxInternetClientRate=100000
[/Script/Engine.Player]
ConfiguredInternetSpeed=50000
ConfiguredLanSpeed=50000
...
The Game_Target.cs
public class RTS_HeroesTarget : TargetRules
{
public RTS_HeroesTarget(TargetInfo Target) : base(Target)
{
bOverrideBuildEnvironment = true;
Type = TargetType.Game;
// Ensure that we compile with the Steam OSS
bUsesSteam = true;
ExtraModuleNames.AddRange( new string[] { "RTS_Heroes" } );
//Replace this number with the eventual steam app id
GlobalDefinitions.Add("UE_PROJECT_STEAMSHIPPINGID=1743880");
//The game name in steam
GlobalDefinitions.Add("UE_PROJECT_STEAMPRODUCTNAME=\"Andalia\"");
//Game directory for steam
GlobalDefinitions.Add("UE_PROJECT_STEAMGAMEDIR=\"Andalia\"");
//This is what shows up under the game filter in Steam server browsers
GlobalDefinitions.Add("UE_PROJECT_STEAMGAMEDESC=\"Andalia, Fantasy-RTS\"");
}
}
The Game_Build.cs
public class RTS_Heroes : ModuleRules
{
public RTS_Heroes(ReadOnlyTargetRules Target) : base(Target)
{
PCHUsage = PCHUsageMode.UseExplicitOrSharedPCHs;
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "NavigationSystem" });
PrivateDependencyModuleNames.AddRange(new string[] { });
bLegacyPublicIncludePaths = false;
// Uncomment if you are using Slate UI
// PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" });
PrivateDependencyModuleNames.Add("OnlineSubsystem");
PrivateDependencyModuleNames.Add("OnlineSubsystemNull");
AddEngineThirdPartyPrivateStaticDependencies(Target, "Steamworks");
// To include OnlineSubsystemSteam, add it to the plugins section in your uproject file with the Enabled attribute set to true
}
}
Log-Output on the Server:
LogSteamShared: Display: Loading Steam SDK 1.47
LogSteamShared: Steam SDK Loaded!
LogOnline: OSS: Creating online subsystem instance for: Steam
LogOnline: STEAM: Steam User is subscribed 1
LogOnline: STEAM: [AppId: 1743880] Client API initialized 1
LogOnline: STEAM: Initializing SteamNetworking Layer
LogOnline: STEAM: Missing P2PCleanupTimeout key in OnlineSubsystemSteam of DefaultEngine.ini, using default
LogInit: WinSock: version 1.1 (2.2), MaxSocks=32767, MaxUdp=65467
LogOnline: OSS: TryLoadSubsystemAndSetDefault: Loaded subsystem for module [Steam]
LogInit: Build: ++UE4+Release-4.25-CL-14469661
LogInit: Engine Version: 4.25.4-14469661+++UE4+Release-4.25
---
[2021.09.01-09.26.14:597][ 0]LogInit: Using OS detected language (de-DE).
[2021.09.01-09.26.14:597][ 0]LogInit: Using OS detected locale (de-DE).
[2021.09.01-09.26.14:600][ 0]LogTextLocalizationResource: LocRes '../../../Engine/Content/Localization/Engine/de-DE/Engine.locres' could not be opened for reading!
[2021.09.01-09.26.14:601][ 0]LogTextLocalizationResource: LocRes '../../../Engine/Plugins/Online/OnlineSubsystem/Content/Localization/OnlineSubsystem/de-DE/OnlineSubsystem.locres' could not be opened for reading!
[2021.09.01-09.26.14:601][ 0]LogTextLocalizationResource: LocRes '../../../Engine/Plugins/Online/OnlineSubsystemUtils/Content/Localization/OnlineSubsystemUtils/de-DE/OnlineSubsystemUtils.locres' could not be opened for reading!
[2021.09.01-09.26.14:601][ 0]LogTextLocalizationResource: LocRes '../../../Engine/Plugins/Online/OnlineSubsystemSteam/Content/Localization/OnlineSubsystemSteam/de-DE/OnlineSubsystemSteam.locres' could not be opened for reading!
[2021.09.01-09.26.14:601][ 0]LogTextLocalizationResource: LocRes '../../../Engine/Content/Localization/Engine/de/Engine.locres' could not be opened for reading!
---
[2021.09.01-09.26.15:090][ 0]LogOnline: Warning: STEAM: Failed to obtain steam user stats, user: melchur [0x221F571A0C0] has no stats entries
---
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: dumping NamedSession:
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: SessionName: GameSession
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: HostingPlayerNum: 0
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: SessionState: Pending
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: RegisteredPlayers:
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: 0 registered players
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: dumping Session:
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: OwningPlayerName: melchur
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: OwningPlayerId: melchur [0x22198040FA0]
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: NumOpenPrivateConnections: 0
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: NumOpenPublicConnections: 3
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: SessionInfo: HostIP: INVALID SteamP2P: 76561199160075497:7777 Type: Lobby session SessionId: Lobby[0x186000002415419]
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: dumping SessionSettings:
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: NumPublicConnections: 4
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: NumPrivateConnections: 0
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: bIsLanMatch: false
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: bIsDedicated: false
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: bUsesStats: false
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: bShouldAdvertise: true
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: bAllowJoinInProgress: true
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: bAllowInvites: false
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: bUsesPresence: true
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: bAllowJoinViaPresence: true
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: bAllowJoinViaPresenceFriendsOnly: false
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: BuildUniqueId: 0x00c89141
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: Settings:
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: Map=02 : OnlineService
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: Name=terst : OnlineService
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: Open=true : OnlineService
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: gameNumber=0 : OnlineService
[2021.09.01-09.26.58:983][653]LogOnlineSession: Verbose: OSS: gameEnded=false : OnlineService
[2021.09.01-09.26.58:997][653]LogNet: Browse: /Game/Game/Maps/Map02/Lvl_Map02_Preview?listen
[2021.09.01-09.26.58:998][653]LogLoad: LoadMap: /Game/Game/Maps/Map02/Lvl_Map02_Preview?listen
[2021.09.01-09.26.58:998][653]LogWorld: BeginTearingDown for /Game/Game/Maps/MainMenu/Lvl_MainMenu
[2021.09.01-09.26.58:999][653]LogWorld: UWorld::CleanupWorld for Lvl_MainMenu, bSessionEnded=true, bCleanupResources=true
[2021.09.01-09.26.59:000][653]LogSlate: InvalidateAllWidgets triggered. All widgets were invalidated
[2021.09.01-09.26.59:047][653]LogAISub: UAISubsystem::~UAISubsystem EnvQueryManager (000002219C05FA00), frame # 3653
[2021.09.01-09.26.59:047][653]LogAISub: UAISubsystem::~UAISubsystem AIPerceptionSystem (00000221AD640880), frame # 3653
[2021.09.01-09.26.59:051][653]LogUObjectHash: Compacting FUObjectHashTables data took 3.36ms
[2021.09.01-09.26.59:076][653]LogStreaming: Display: Flushing async loaders.
[2021.09.01-09.27.00:050][653]LogAIModule: Creating AISystem for world Lvl_Map02_Preview
[2021.09.01-09.27.00:050][653]LogAISub: UAISubsystem::UAISubsystem EnvQueryManager (00000221AF6AE000), frame # 3653
[2021.09.01-09.27.00:050][653]LogAISub: UAISubsystem::UAISubsystem AIPerceptionSystem (00000221AA97BDC0), frame # 3653
[2021.09.01-09.27.00:051][653]LogLoad: Game class is 'BP_Lobby_GameMode_C'
[2021.09.01-09.27.00:089][653]LogNet: ReplicationDriverClass is null! Not using ReplicationDriver.
[2021.09.01-09.27.00:093][653]LogNetCore: DDoS detection status: detection enabled: 0 analytics enabled: 0
[2021.09.01-09.27.00:093][653]LogNet: Display: SteamNetDriver_2147482481 bound to port 7777
[2021.09.01-09.27.00:100][653]PacketHandlerLog: Loaded PacketHandler component: Engine.EngineHandlerComponentFactory (StatelessConnectHandlerComponent)
[2021.09.01-09.27.00:100][653]LogNet: GameNetDriver SteamNetDriver_2147482481 IpNetDriver listening on port 7777
[2021.09.01-09.27.00:155][653]LogWorld: Bringing World /Game/Game/Maps/Map02/Lvl_Map02_Preview.Lvl_Map02_Preview up for play (max tick rate 0) at 2021.09.01-11.27.00
[2021.09.01-09.27.00:156][653]LogWorld: Bringing up level for play took: 0.055851
[2021.09.01-09.27.00:163][653]LogGameMode: FindPlayerStart: PATHS NOT DEFINED or NO PLAYERSTART with positive rating
[2021.09.01-09.27.00:193][653]LogUMG: Display: Widget Class WBP_MainMenu_Lobby_C - Loaded Fast Template.
[2021.09.01-09.27.00:194][653]LogUMG: Display: Widget Class WBP_MainMenu_LobbyPlayerSlot_C - Loaded Fast Template.
[2021.09.01-09.27.00:346][653]LogLoad: Took 1.347248 seconds to LoadMap(/Game/Game/Maps/Map02/Lvl_Map02_Preview)
...
Log-Output on the Client:
[2021.09.01-09.26.33:443][769]LogOnlineSession: STEAM: Found 0 lobbies, finalizing the search