Hi,
I am using a plain 4.8.3. build with a lot of ideas taken from shootergame.
I am trying to get the steam subsystem working, but its not working somehow… If i use the null online system i can perfectly join local games and lan games… I do see the steam overlay on both environments and i am logged in with two separate accounts. I noticed that in the shooter game connections are not that smooth either, but they do work. I activated all logging LogOnlineGame=VeryVerbose and LogOnline=VeryVerbose. Both return no errors and the sessions are created correctly. What could be wrong here? Any other posts about this seem to remain unanswered.
My steps so far:
-
Use steps provided in Online Subsystem Steam Interface in Unreal Engine | Unreal Engine 5.2 Documentation and also had a look at A new, community-hosted Unreal Engine Wiki - Announcements - Epic Developer Community Forums.
-
Added latest version of steam sdk v1.32 dll’s for both windows 64/32 bit.
-
Engineconfig:
Script/Engine.GameEngine]
!NetDriverDefinitions=ClearArray
;+NetDriverDefinitions=(DefName=“GameNetDriver”,DriverClassName=“OnlineSubsystemUtils.IpNetDriver”,DriverClassNameFallback=“OnlineSubsystemUtils.IpNetDriver”)
+NetDriverDefinitions=(DefName=“GameNetDriver”,DriverClassName=“OnlineSubsystemSteam.SteamNetDriver”,DriverClassNameFallback=“OnlineSubsystemUtils.IpNetDriver”)
;+NetDriverDefinitions=(DefName=“DemoNetDriver”,DriverClassName=“/Script/Engine.DemoNetDriver”,DriverClassNameFallback=“/Script/Engine.DemoNetDriver”)[OnlineSubsystem]
;DefaultPlatformService=Null
DefaultPlatformService=Steam
PollingIntervalInMs=20[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=480
;SteamDevAppId=212960
GameServerQueryPort=27015
bRelaunchInSteam=false
GameVersion=1.0.0.0
bVACEnabled=1
bAllowP2PPacketRelay=true
P2PConnectionTimeout=90`[/Script/OnlineSubsystemSteam.SteamNetDriver]
NetConnectionClassName=“OnlineSubsystemSteam.SteamNetConnection”
AllowDownloads=false -
build.cs
PrivateDependencyModuleNames.AddRange( new string[] { "InputCore", "Slate", "SlateCore", "UMG", "OnlineSubsystem", } ); DynamicallyLoadedModuleNames.AddRange( new string[] { "OnlineSubsystemNull", "NetworkReplayStreaming", "NullNetworkReplayStreaming", "HttpNetworkReplayStreaming" } ); PrivateIncludePathModuleNames.AddRange( new string[] { "NetworkReplayStreaming" } ); if ((Target.Platform == UnrealTargetPlatform.Win32) || (Target.Platform == UnrealTargetPlatform.Win64) || (Target.Platform == UnrealTargetPlatform.Linux) || (Target.Platform == UnrealTargetPlatform.Mac)) { if (UEBuildConfiguration.bCompileSteamOSS == true) { DynamicallyLoadedModuleNames.Add("OnlineSubsystemSteam"); } } else if (Target.Platform == UnrealTargetPlatform.PS4) { DynamicallyLoadedModuleNames.Add("OnlineSubsystemPS4"); } else if (Target.Platform == UnrealTargetPlatform.XboxOne) { DynamicallyLoadedModuleNames.Add("OnlineSubsystemLive"); }
-
Target.cs
public MyGameTarget(TargetInfo Target) { Type = TargetType.Game; bUsesSteam = true; }