Download

Advanced Sessions Plugin - Steam Dedicated Servers - Can't find the server

I am trying to make the MultiplayerShootout project provided by EpicGames support the steam dedicated servers. But i couldn’t manage the FindSessions node to return the dedicated server.

It is told that you can’t host a server and a client for steam on the same machine, therefore i am using two computers, in one i start the dedicated server by executing the following bat:


 "C:\Epic Games\UE_4.24\Engine\Binaries\Win64\UE4Editor.exe" "ProjectPath\ProjectName.uproject" Level_01 -server -log
pause

It successfully creates advanced session and i can see the server in steam’s View-Servers-LAN tab’s server list.

From the other computer i launch the packaged build of the game. But it can’t find the session. If i use listen server everything works fine. One computer starts the listen server the other finds it and joins. But no luck for the dedicated servers.

I also tried “open 192.68.1.9” (Which is the server’s ip) , “open 192.168.1.9:7777” commands in “Execute Console Commands” node and same thing with the public IP too. Also tried open level node with the private and public IP.

But here i am a little confused. This isin’t the right way to join right? Find Sessions node should return the server, i shouldn’t enter any IP manually.

Am i on the right path? Or totally lost it? Please show me the way.

The configurations i did so far:

I added


bUsesSteam = true;

to the ProjectName.Target.cs

The config files are as follows:

DefaultEngine.ini:



GameName=MultiplayerShootout

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

[OnlineSubsystem]
DefaultPlatformService=Steam
PollingIntervalInMs=20

[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=480
GameServerQueryPort=27015
bRelaunchInSteam=false
bVACEnabled=0
GameVersion=1.0.0.0
bAllowP2PPacketRelay=true
P2PConnectionTimeout=90

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

[/Script/Engine.PhysicsSettings]
DefaultTerminalVelocity=4000.000000
DefaultFluidFriction=0.300000
bEnableAsyncScene=False
LockedAxis=None
FrictionCombineMode=Average
MaxDepenetrationVelocity=0.000000
bSimulateSkeletalMeshOnDedicatedServer=True
MaxPhysicsDeltaTime=0.033333
bSubstepping=True
bSubsteppingAsync=False
MaxSubstepDeltaTime=0.016667
MaxSubsteps=12
SyncSceneSmoothingFactor=0.000000
AsyncSceneSmoothingFactor=0.990000
InitialAverageFrameRate=0.016667

[/Script/Engine.UserInterfaceSettings]
UIScaleCurve=(EditorCurveData=(Keys=((Time=480,Value=0.444),(Time=720,Value=0.666),(Time=1080,Value=1.0),(Time=8640,Value=8.0))),ExternalCurve=None)
UIScaleCurve=(EditorCurveData=(Keys=((Time=480.000000,Value=0.444000),(Time=720.000000,Value=0.666000),(Time=1080.000000,Value=1.000000),(Time=8640.000000,Value=8.000000))),ExternalCurve=None)

[/Script/Engine.RendererSettings]
r.MobileHDR=True
r.AllowOcclusionQueries=True
r.MinScreenRadiusForLights=0.030000
r.MinScreenRadiusForDepthPrepass=0.030000
r.PrecomputedVisibilityWarning=False
r.TextureStreaming=True
Compat.UseDXT5NormalMaps=False
r.AllowStaticLighting=True
r.NormalMapsForStaticLighting=False
r.GBuffer=True
r.GenerateMeshDistanceFields=True
r.Shadow.DistanceFieldPenumbraSize=0.050000
r.TessellationAdaptivePixelsPerTriangle=48.000000
r.SeparateTranslucency=True
r.CustomDepth=1
r.DefaultFeature.Bloom=True
r.DefaultFeature.AmbientOcclusion=True
r.DefaultFeature.AmbientOcclusionStaticFraction=True
r.DefaultFeature.AutoExposure=True
r.DefaultFeature.MotionBlur=True
r.DefaultFeature.LensFlare=True
r.DefaultFeature.AntiAliasing=2
r.EarlyZPass=3
r.EarlyZPassMovable=False
r.DBuffer=False
r.ClearSceneMethod=1
r.MSAA.CompositingSampleCount=4
r.WireframeCullThreshold=5.000000
UIScaleRule=ShortestSide
UIScaleCurve=(EditorCurveData=(Keys=),ExternalCurve=None)

[/Script/EngineSettings.GameMapsSettings]
EditorStartupMap=/Engine/Maps/Templates/Template_Default
EditorStartupMap=/Game/Maps/Level_01
TransitionMap=
bUseSplitscreen=True
TwoPlayerSplitscreenLayout=Horizontal
ThreePlayerSplitscreenLayout=FavorTop
GameInstanceClass=/Script/Engine.GameInstance
GameInstanceClass=/Game/Blueprints/MyGameInstance.MyGameInstance_C
GameDefaultMap=/Game/Maps/MainMenu.MainMenu
GameDefaultMap=/Game/Maps/MainMenu.MainMenu
GlobalDefaultServerGameMode=None


DefaultGame.ini:


[/Script/EngineSettings.GeneralProjectSettings]
ProjectID=B1E7E17343DD95D5A526BEA810949FA8

[/Script/UnrealEd/ProjectPackagingSettings]
+DirectoriesToAlwaysStageAsUFS=(Path="Engine/Binaries/ThirdParty/Steamworks")

Added steam_api64.dll to the path: packedProjectPath\WindowsNoEditor\Engine\Binaries\ThirdParty\Steamworks\Steamv146\Win64

Here are the plugins i added.



Here is the blueprint setup to create dedicated server session located in Level Blueprint of Level_01 which is the level where players fight.

Hi, been in the same spot for some time now. Did you manage to find a solution to this?

unfortunately no

I’m also in the same boat and can’t seem to find my dedicated server from sessions, but I see it in steam server browser. Does anyone know what could possibly be going wrong?

Hey, I know this topic is ancient, but in case it helps anyone else I notice in your screenshots that you don’t have a PlayerController inputting into the CreateAdvancedSession node. I’ve run into some trouble that was solved by by just plugging in GetPlayerController(0) into that guy, as well as into FindAdvancedSession.

I’m lurking around trying to figure out why I’m getting an empty list of sessions even though I swear my setup was working not too long ago. Wondering if it’s because I’m using the Space War appid, lol.

I have the same problem. My server showed up in the internet viewer, but I just couldn’t find it. I used “open steam.xxx” console command to connect to my server and it worked! xxx is the server index shown in the server viewer. It’s wired that I couldn’t find the session.

has a solution been found?

You could use SteamCore:: to host/find your dedicated server