Pages

Wednesday, February 13, 2013

Multiplayer connectivity errors with Trine 2 Ping Keeps Increasing

I was trying to play trine 2 with my friend and ran into problems connecting to eachother. Sometimes we could connect and see the other person connect, displaying their name in the lobby, but their ping would skyrocket from 300-2000 ping, and on the other side the player connecting would just see a "connecting..." screen. Connection problems have been known for Trine2, many threads have been made on the steam forums.

The solution we figured out involved changing a value in a config file in %APPDATA%/Trine2 called options.txt.
In that cfg file there is an option; setOption(networkModule, "DisableSteamRelay", false). It is set to false by default. Change it to ture so that; setOption(networkModule, "DisableSteamRelay", true) is saved in the options.txt file. Make sure to close the game before you do this or it will change the value back. Both players need to change the option in their options.txt config file.

Another thing to check is if the ports for the game are correctly opened. We temporarly set our routers to DMZ mode, which is an option, but forwarding the ports is more secure. Frozenbyte makes a console program that checks to see if the correct ports are open for Trine 2. The program can be found at
http://www.trine2.com/help/Trine2_nettest.zip

It will run and display whether or not the correct ports are open for Trine2.

Another solution that was given in the forums by a developer of FrozenByte was as followed: .

Playing with v1.14

If you're having connection issues, you can try the older v1.14 version of Trine 2. It uses different multiplayer methods internally. 

You should know that savegames from versions 1.15 and 1.16 are not compatible with 1.14 (it will simply not recognize them as having any levels completed). So be prepared to lose your savegames. You can avoid that by using a different save slot (Settings -> Save Slot) and not touch the other saves, but it may not always be bulletproof. 

You should do the downgrade to all co-op players, because 1.14 can only play with other 1.14 players. Mixing 1.14 and 1.16 will not work. 

To downgrade to 1.14: Launch Steam, go to Library, right-click on Trine 2 and go to Properties. Then go to Betas tab, and choose "old". It doesn't require password. Now Steam will load v1.14 on your computer. ("old_v115" is v1.15 but it is based on the new multiplayer system so you don't want to use that.)


To summarize, this thread to help with the various multiplayer errors and troubles that still occur to some users. For general information, Trine 2 now supports multiplayer between Steam (Windows/Mac), and also with standalone Mac and Linux versions. This works very well for the most part and most players don't encounter any problems - there's a lot of multiplayer games going on.

That said, some are encountering errors and other trouble. Usually it's related to connecting to other players. The game will output an error code when it can. This can happen due to a few reasons - one reason is the simple fact that the servers might be under heavy load right now. It's advised to try a few times at least. If the error numbers are always different, then that might indicate that the problem isn't "permanent" and you'll get through with enough tries. 



Error codes

Here are the error codes and explanations:

0 = NetErrorUnknown
// Unexpected disconnection

2 = NetErrorJoinLobbyAborted
// User cancelled connection attempt

3 = ConnectFailReasonNotOnline
// Not connected to master server

4 = NetErrorNoResponseFromHost
// No reply received in 30s

6 = NetErrorConnectionRejected, NetErrorNoResponseFromServer
// Connection was lost

7 = NetErrorConnectionRejectedByServer, Disconnecting
// Server is disconnecting

8 = NetErrorConnectionLost
// Connection was lost

9 = NetErrorConnectionSyncDataTimeOut
// Sync data was not received in 30s (slow connection)

10 = NetErrorConnectingToMasterFailed
// Cannot connect to master server

65539 = ConnectFailReasonFull
// Game is full

65541 = NetErrorConnectionRejected, ResponseRejectedFull
// Game is full

65543 = NetErrorConnectionRejectedByServer, ServerFull
// Game is full

131075 = ConnectFailReasonRejected
// Rejected by peer

131077 = NetErrorConnectionRejected, ResponseRejectedBadPassword
// Invalid password

131079 = NetErrorConnectionRejectedByServer, BadVersion
// Incompatible version

196611 = ConnectFailReasonInvalidTarget
// No such peer

196613 = NetErrorConnectionRejected, ResponseRejected
// No longer hosting a game

196615 = NetErrorConnectionRejectedByServer, BadRequest
// Incompatible version

262147 = ConnectFailReasonTimeOut
// Connecting took too long

262151 = NetErrorConnectionRejectedByServer, TimeOut
// Join attempt timed out

327683 = ConnectFailReasonDeleted
// Disconnected from master server

393223 = NetErrorConnectionRejectedByServer, KickedOut
// Kicked out by server



Trine 2 nettest program

We have a quick port test program now at
http://www.trine2.com/help/Trine2_nettest.zip

This may help figuring out if the ports are open or not. It is not, however, conclusive - most players will be able to play just fine even if the ports are closed. (We'll try to add some more help and how-to as we go along, but right now you'll have to look elsewhere for info on how to open those.) 



How to start solving the problem

First, make sure the Steam Ports are open. 

Then, there's a lot of different options that relate to multiplayer in the game itself. You can access them by opening %APPDATA%\Trine2\ folder and then opening options.txt. %APPDATA%\Trine2\ can be copypasted to Windows Explorer and it should go to e.g. C:\Users\Joel\AppData\Roaming\Trine2 (AppData is a hidden folder). On Mac it's in ~/Library/Trine2/

The settings we are looking for are at the end, and the most important ones are these:

setOption(networkModule, "AllowSteamConnections", true)
setOption(networkModule, "AllowNonSteamConnections", true)
setOption(networkModule, "AllowSteamRelay", false)

The first thing to try is to enable AllowSteamRelay. If it doesn't work, change something else and try again... 



Private/Public games

There's been reports that Private games have more trouble than Public ones. So try Public and see if it has the same issues. We are looking into this too and will see if there's anything that would cause this (there shouldn't, but who knows)...



Private games with password

The password system in Trine 2 is a little unintuitive. Even if you are invited by your friend, you may get a Bad Password popup. In this case, go to the Multiplayer / Join Online Game menu, and join the Private game manually. First enter the password at the bottom of the screen, and then click on the server to join. 



Other things

If you have any internet speed/connectivity programs on the computer(s), e.g. to boost downloads, or other similar things, please make sure they are not enabled. 



Petrified Tree / The Final Chapter

We are aware of some strange disconnection issues with the levels Petrified Tree and The Final Chapter. These seem to be related to Low/Very Low graphics settings (which cause longer loading times as well). You may do well to try Medium settings and see if the problem remains with these levels. 



Playing with older version

One alternative, if you only want to play with Steam friends, is to try out the older version of the game. This may help in some of the cases (but not all - the newer version should be the best one for most people). 

If you are interested in that, there's a couple of things to know:

1. Your savegames will get messed up. Newer versions of the game can load any savegame, but older versions do not recognize newer savegames. Therefore, if you "downgrade" to v1.14, your v1.16 savegames will not work (they may show up as only having the Story Begins level available). Use a different "Save Slot" for v1.14 and that way you might be able to keep all saves in working condition. In general, be prepared to lose your savegames. 
2. V1.14 can only play multiplayer against other v1.14 versions. So if you do this, you can only play with your friends or others who use the same version (which is very few people).
3. This has not been done many times so something strange can happen - most dramatic would be losing your savegames (as said in #1). 

If that sounds ok, then here's instructions on how to do this: Launch Steam, go to Library, right-click on Trine 2 and go to Properties. Then go to Betas tab, and choose "old". It doesn't require password. Now Steam will load v1.14 on your computer. ("old_v115" is v1.15 but it is based on the new multiplayer system so you don't want to use that.)



Enable multiplayer logging

In options.txt ( %APPDATA%\Trine2\ , see above for a longer explanation), there's this line:

setOption(networkModule, "NetLogEnabled", false)

set it to true, and the game will produce a log of the events to log\trine2.log file. You can open this file with e.g. Notepad, it's just text data. Please either copypaste it along with your post or make it available elsewhere online, so we can take a look at it. 



Report your problem in detail

To help us figure out what's going on. 

Here's some information that would help:

- the net log output ( trine2.log )
- what game settings you are using (resolution, graphics detail level, etc)
- your computer specs
- your location (country/city)
- your ISP and bandwidth/connection


http://forums.steampowered.com/forums/showthread.php?t=2827833

1 comment:

  1. Thanks a bunch for sharing this with all people you actually recognize what you are talking about! Bookmarked. Kindly also discuss with my website.
    Freicoin

    ReplyDelete