Unreal Engine 4.8 Pre. 4 Steam Issues

Hello,

I 've got some issues with Multiplayer Sessions.
I got log here:

2015.06.03-17.23.25:224][963]LogOnline:Warning: STEAM: Failed to parse setting from key selected_division_68 value 1
[2015.06.03-17.23.25:225][963]LogOnline:Warning: Unknown or unsupported data type from Steam key data versus_game_type 4
[2015.06.03-17.23.25:225][963]LogOnline:Warning: STEAM: Failed to parse setting from key versus_game_type value 4
[2015.06.03-17.23.25:226][963]LogOnline:Warning: STEAM: Unable to parse search result for lobby 'Lobby [0x186000045C1B882]'

Fullversion :
http://finalspark-gamestudios.com/cdn/TheLostIslandAlpha-backup-2015.06.03-22.50.21.log

Anyone know if this has something to do that no one finds a session?

Cheers, Bander

Hi Bander,

Can you show me what you’re OSS settings look like in your project’s DefaultEngine.ini? And can you show me your setup for creating and joining a session that isn’t working? Thanks!

OSS

[OnlineSubsystem]
DefaultPlatformService=Steam
PollingIntervalInMs=20

[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=480
GameServerQueryPort=27077
bRelaunchInSteam=true
GameVersion=1.1.2.0
bVACEnabled=1
bAllowP2PPacketRelay=true
P2PConnectionTimeout=90

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

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

3 days no answer … Hopefully someone looks at this problem… I blueprinted Multiplayer-System new and still same error. No one finds session / can join.

Hi Bander,

It was weekend, most people weren’t here =/

I’ve looked at your settings and BP setup, and I’m not seeing anything wrong with them. I’ve reached out to networking team here and asked them to look over your log, and I’ll let you know when they get back to me. Thanks for your patience!

Have you set this up in 4.7.6 as well, and did it work there?

Jup it worked in 4.7.6 … this error is new with 4.8 prev. 4 … Thank you that you guys work on this ! :slight_smile:

oh and btw … this is my new blueprint looks a bit better :slight_smile:

Hi Bander,

Since you’re using 480 app id, session search will actually find lobbies hosted by other games that are also using an app id of 480. It looks like warning you’re getting in your log is implying that one of sessions you found has set some data on lobby that UE4 doesn’t recognize. Looking at log, there are a lot of unrecognized keys, and it could be that lobbies from other games are filling up search results up to Max Results value before any lobbies from your own game are returned. Assuming this is case, best fix is to of course get a unique app id, but increasing Max Results may work as well.

Hope that helps!

Thank you Ill try my best!

This is very interesting and probably an issue I’m experiencing, I will try increasing number of results returned from FindSession to say 100 and see what that yields.

How do we know which Session we created? Is there a way to name sessions? or is that a function for C++ which I’m happy with by way.

Hey ,

In Blueprints, Create Session only supports one implicitly named session currently. In C++, first parameter to create session is to give it an fname. You can access all session stuff by that name.

did you ever fix this issue as I have same problem, even on blank projects that have keys bound to join and host a server and I have had this problem for a few months now.

Hi TheMunky,

Can you let us see Server and Client logs?

Hi , since he didn’t answer I will :slight_smile:

Having this same issue… Some info (+ logs attached). I’ll preface this by saying sometimes I am able to connect, although usually I find another persons session. Certainly there must be a way to find mine? I want networking done before I even think about starting gameplay… And without gameplay I can’t get greenlit and get a unique app id. If it’s not possible … then it just isn’t, however all I’ve seen around is, “maybe, maybe not”.

Running a dedicated server. Server is on separate machine, with all ports required forwarded correctly. Server also has its own steam account.

I am creating a session through RegisterServer() in AGameSession::RegisterServer():

void AGameSession::RegisterServer()
{
UWorld* World = GetWorld();
IOnlineSessionPtr SessionInt = Online::GetSessionInterface(World);

FOnlineSessionSettings Settings;
Settings.NumPublicConnections = 3;
Settings.bShouldAdvertise = true;
Settings.bAllowJoinInProgress = true;
Settings.bIsLANMatch = true;
Settings.bUsesPresence = true;
Settings.bAllowJoinViaPresence = true;
Settings.BuildUniqueId = 1337;

SessionInt->CreateSession(0, GameSessionName, Settings);
return;

}

I see no indication anywhere that session creation is failing… BuildUniqueId is normally not set, however I was hoping setting it would help.

Here is client Find/Join session:

Client does succesfully find a session, however of course problem is I am finding another users session… Judging by variables shown in log, there are a large amount of people using app id 480 - so surely there must be a way to access ones own server exclusively?

If you need anymore info please ask. Been trying to solve this issue for a while now…

[link text][3]
[link text][4]

Hey sorry been really busy.

I started a thread on it when I first encountered problem It’s here:

I’ll attach a log from client to this reply, it’s from a completely fresh project, only thing I have done to it, is bound 2 keys with create and join session logic to them, ?
link text

Hi all,

Yes, this appears to be same problem. Unfortunately, there isn’t much to be done in a Blueprints-only project, and since this won’t affect a project with a unique Steam app id, this isn’t likely to change. Aside from adjusting how your code works with C++, only real solution is to increase Max Results in Find Sessions node.

you might consider iterating through Find Sessions output array with a ForLoopWithBreak, rather than simply attempting join Element 0. You’ll probably have more success that way.

Oh my…So obvious. Honestly can’t believe I missed that. Brain fog… Thanks a lot

Sorry to mark this as unanswered again by commenting. But maybe you could give some insight on a new issue. dedicated server crashes when server runs Find Sessions. client isn’t even joining - I’m just printing all results. This is only change along with reducing results to 20.

Here’s crash files: https://.com/drive/folders/0B0fd2R5ywI70YjA2ZVZ3blVMb0k

only thing client logs is this: LogInit:WinSock: I am Dev-Laptop (192.168.1.100:0)

Looks like issue might be “Assertion failed: IsValid()”… Maybe? But it doesn’t give much info on that…

That’s okay, but it would be better to track this in a new post since it’s a separate issue. If you wouldn’t mind, can you create a new post in Bug Reports section with all this information for me? I’d also like to know if crash occurs in PIE or in a packaged project. It might be helpful to know if this occurs in a fresh project as well, and if so, if you could post it online somewhere for me and get me a download link, I can test it out here as well. Thanks!

Hey thank you for reply, how exactly would I go about changing Max Results?

In Find Sessions node, there’s an Integer input labeled Max Results. You can either feed in a variable node, or simply enter max results you’d like there.