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?

1 Like

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

Old thread but some useful info, to direct connect to a steam dedicated server, you need to use open steam.generatedServerNumber rather than the ip of the server as steam seems to obfuscate the server ip and instead gives it that id.
you can find the id of the server either querying the steam oss for the connection url or looking on the steam clients servers browser, it will look like a int64 seam id but usually starts with 90***

It’s been a couple years now, but I’m in the same boat in UE 5.2. Not only can’t find session but the server is only shows up in the LAN tab (not the Internet tab). Any tips?

tldr: To fix the issue where servers are not showing up as “Online” is generally network porting issues (Assuming your server is running in your local network).
The ports you will need to forward are:
Steam client:

  • TCP/UDP: 27014-27050
    Steamworks P2P Networking and Steam Voice Chat:
  • TCP/UDP: 3478, 4379-4380
    Unreal Engine Server:
  • TCP/UDP: 7777 (default game port)
  • TCP/UDP: 27015 (default query port)

This is through random searches etc of other posts, don’t think it’s a locked in standard and your game/engine can have different ports manually assigned.


I have just started my journey into multiplayer and looks like people all encounter the same problems. So hoping to reopen some of these posts.

I am having the issue where my server is now showing as online in steam servers but I can only find in a local network if I select “Lan” when finding sessions (Even though I have setup the dedicated server part as false for “Use LAN” ).
If I host the server in a separate network, I can see the server in the steam server viewer as “Online” but the game can’t find it, even if I select “Lan” when searching.


Create Session


Find Session

Thanks. The goal is to make local dedicated server work without port forwarding. Do you want to force users to forward the ports? No. Are there games that do it successfully? Yes (Empyrion Galactic Survival).