I have recently built my session browser following the helpful video posted on the UE YouTube channel a while back.
I am however having some issues and I’m not sure where to begin tackling it.
I have set it up so that it works like a traditional server browser, with refresh, host and direct connect buttons. When I click to host the game on my machine, the session creates and I’m loaded into the level. However the issue I’m having is that my friends cannot find the session via the browser online, however I can find it locally.
I have been through the basics over and over such as making sure the session create/find is not set to LAN.
I have updated the steam .dll’s to the latest and have double checked it is all correct for the steam setup.
I have also forwarded the needed ports so that isn’t blocking me either.
I am happy that Steam is set up correctly as the overlay appears and the game can fetch the users Steam username. However the game is currently setup to use the default app id 480 and I was wondering if this would cause an issue for the sessions not being found over the net?
Just so I can show the DefaultEngine file is setup correctly:
So this seems to be an intermittent thing… So I am assuming it’s a draw-back to using the 480 App ID. Any one able to confirm that for me? Also, as the game is running via steam, is it best practice to change the port from 7777-7778 to Steams 27015?
Well I’ve got Steam working over the internet, tested with someone 50KM away, but within the same country. I’ve read something about issues with different countries/continents when using the 480 App ID.
Here’s what I’ve got on some of the settings. DefaultEngine.ini
[OnlineSubsystem]
DefaultPlatformService=Steam
PollingIntervalInMs=20
PublicDependencyModuleNames.AddRange(new string[] {
"OnlineSubsystem",
"OnlineSubsystemUtils"
});
DynamicallyLoadedModuleNames.Add("OnlineSubsystemSteam");
//Uncomment if you are using Slate UI
//PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" });
//Uncomment if you are using online features
PrivateDependencyModuleNames.Add("OnlineSubsystem");
if ((Target.Platform == UnrealTargetPlatform.Win32) || (Target.Platform == UnrealTargetPlatform.Win64))
{
if (UEBuildConfiguration.bCompileSteamOSS == true)
{
DynamicallyLoadedModuleNames.Add("OnlineSubsystemSteam");
}
}
projectname.Target.cs
public projectnameTarget(TargetInfo Target)
{
Type = TargetType.Game;
bUsesSteam = true;
}
I hope that this might help you to find what’s wrong.