Network Connection Timeout

Ok so I have been trying to set up a simple multiplayer system through the Online Subsystem Steam now I’ve managed to create a session and had a different PC join that session.

I have set up a delegate for when the user has joined the session and in that delegate I then call these lines of code.

if(Sessions->GetResolvedConnectString(DesiredResult, “GamePort”, Connection))
{
AOnlineController* ThePC = Cast<AOnlineController>(GetWorld()->GetFirstPlayerController());
ThePC->ClientTravel(Connection, TRAVEL_Absolute);
}

When ClientTravel is it seems to set most things up properly ready for the travel to the host however eventually the travel fails and reading my log files I believe this to be the culprit

[2014.09.03-15.00.18:871][170]LogNet:Warning: UNetConnection::Tick: Connection TIMED OUT. Closing connection. Driver: SteamNetDriver_0, Elapsed: 60.007988, Threshold: 60.000000, RemoteAddr: 76561198109124784:7777, PC: NoPC, Owner: No Owner
[2014.09.03-15.00.18:907][170]LogNet:Warning: Network Failure: PendingNetDriver[ConnectionTimeout]: UNetConnection::Tick: Connection TIMED OUT. Closing connection. Driver: SteamNetDriver_0, Elapsed: 60.007988, Threshold: 60.000000, RemoteAddr: 76561198109124784:7777, PC: NoPC, Owner: No Owner
[2014.09.03-15.00.18:936][170]LogNet: NetworkFailure: ConnectionTimeout, Error: ‘UNetConnection::Tick: Connection TIMED OUT. Closing connection. Driver: SteamNetDriver_0, Elapsed: 60.007988, Threshold: 60.000000, RemoteAddr: 76561198109124784:7777, PC: NoPC, Owner: No Owner’
[2014.09.03-15.00.19:040][170]LogNet: UNetConnection::Close: Name: SteamNetConnection_0, Driver: PendingNetDriver SteamNetDriver_0, PC: NULL, Owner: NULL, Channels: 2, RemoteAddr: 76561198109124784:7777, Time: 2014.09.03-15.00.19
[2014.09.03-15.00.19:040][170]LogNet: UChannel::Close: Sending CloseBunch. ChIndex == 0. Name: ControlChannel_0

The connection times out any ideas why it would do this and how to prevent it from doing so? My guess is I haven’t set something up that the NetDriver needs.

Cheers,

Pots3

The problem seemed to be that unless you start your game with ?listen then your game is never a running listen server and just doesn’t read data from clients therefore forcing the clients to timeout waiting to hear back from the server.

For now I will be starting my game with the ?listen command but surely there is a better way to do this?

Pots

No the Game. It’s the map.