Massive problem with disconnects
Kangaxx1987
Member Posts: 5
Hallo everybody,
first let me start by telling you how much I appreciate your work here. I played the classic editions of all the infinity engine games more than any other game and I still like to play them today.
Sadly, there seems to be some quality loss when it comes to multiplayer. Maybe the fault lies with me but since I haven't been able to sort my problems out, I am posting here.
Yesterday, a friend of mine and I wanted to start a new session of BG:EE. We were planning to play through the whole series, so naturally we started with BG1. We made pregenerated characters and my friend was hosting the game using the beamdog service.
Our systems: Windows 7, both bought the game on Steam. No additional firewall software (WinFirewall correctly setup). Both have SoD installed. Version is 2.1.63.2. He gave me full permissions for ingame actions.
Connecting works perfectly. We were able to connect everytime without a problem.
We started playing and it seemed like everything was fine. Then, after around 10 minutes of playing, the game started to acting weird. I wasn't able to speak to any person and my friend stopped moving. We were skyping while playing and he suddenly mentioned that he could control my character and that I had disconnected. I exited back into the main screen and was able to reconnect again. I was able to play normally for another 10-20 minutes and then the same thing happened again. We continued playing for some time with me reconnecting the whole time.
As you certainly understand, this is not very pleasant so we left and searched the web for some troubleshooting. We found some people saying that the game was more stable in the older 1.3 version, so we downgraded and played again. Sadly, that didn't fix the problem at all (it even added some more problems like crashes when leaving areas and such). We played for some hours and called it a night.
So.. since we want to continue this game, we would like to fix this problem. Does anyone of you know what could be the cause of me disconnecting so often? Skype worked without a problem the whole time and we have been able to play other games without similar behavior.
I also did a ongoing ping to see if my connection would drop, but apart from one or two timeouts in about half an hour, nothing noteworthy happened. The next time we play I will run a network capture to see if the packets differ when I disconnect.
Edit: Neither of us has any third party mods installed. We removed the xp cap by adding the required files to the override folder. My friend gave them to me, so they are identical on both systems.
TL;DR: Game connects perfectly but keeps disconnecting the client player from the host every 10-20 minutes. Sometimes it seems that certain actions like me initiating a dialog or me seeing an enemy would trigger it, but I could not make out a certain pattern.
Hope you guys can help.. otherwise we would have to wait for the next patch.. altough the changelog for the next patch mention nothing about our problem.
@Nathan You wanted to be mentioned when experiencing problems..
Also, I am a software developer myself.. so please DON'T spare me the technical details if you have some ^^
first let me start by telling you how much I appreciate your work here. I played the classic editions of all the infinity engine games more than any other game and I still like to play them today.
Sadly, there seems to be some quality loss when it comes to multiplayer. Maybe the fault lies with me but since I haven't been able to sort my problems out, I am posting here.
Yesterday, a friend of mine and I wanted to start a new session of BG:EE. We were planning to play through the whole series, so naturally we started with BG1. We made pregenerated characters and my friend was hosting the game using the beamdog service.
Our systems: Windows 7, both bought the game on Steam. No additional firewall software (WinFirewall correctly setup). Both have SoD installed. Version is 2.1.63.2. He gave me full permissions for ingame actions.
Connecting works perfectly. We were able to connect everytime without a problem.
We started playing and it seemed like everything was fine. Then, after around 10 minutes of playing, the game started to acting weird. I wasn't able to speak to any person and my friend stopped moving. We were skyping while playing and he suddenly mentioned that he could control my character and that I had disconnected. I exited back into the main screen and was able to reconnect again. I was able to play normally for another 10-20 minutes and then the same thing happened again. We continued playing for some time with me reconnecting the whole time.
As you certainly understand, this is not very pleasant so we left and searched the web for some troubleshooting. We found some people saying that the game was more stable in the older 1.3 version, so we downgraded and played again. Sadly, that didn't fix the problem at all (it even added some more problems like crashes when leaving areas and such). We played for some hours and called it a night.
So.. since we want to continue this game, we would like to fix this problem. Does anyone of you know what could be the cause of me disconnecting so often? Skype worked without a problem the whole time and we have been able to play other games without similar behavior.
I also did a ongoing ping to see if my connection would drop, but apart from one or two timeouts in about half an hour, nothing noteworthy happened. The next time we play I will run a network capture to see if the packets differ when I disconnect.
Edit: Neither of us has any third party mods installed. We removed the xp cap by adding the required files to the override folder. My friend gave them to me, so they are identical on both systems.
TL;DR: Game connects perfectly but keeps disconnecting the client player from the host every 10-20 minutes. Sometimes it seems that certain actions like me initiating a dialog or me seeing an enemy would trigger it, but I could not make out a certain pattern.
Hope you guys can help.. otherwise we would have to wait for the next patch.. altough the changelog for the next patch mention nothing about our problem.
@Nathan You wanted to be mentioned when experiencing problems..
Also, I am a software developer myself.. so please DON'T spare me the technical details if you have some ^^
1
Comments
You could both see what is in your documents > baldur's gate - enhanced edition > jingle.log file
I played about an hour of BGIIEE as a client yesterday until my internet connection dropped, and my file contains the information below (this is the entire file content so much shorter than I recall). There may be something recorded in your logs that you can investigate.
[4131:410] Resolving addr in PhysicalSocket::Connect [4152:425] Warning(physicalsocketserver.cc:1608): PhysicalSocketServer got FD_CONNECT_BIT error 10060
As you're both using Steam, you could consider trying the public beta to see if that helps in any way
http://forums.beamdog.com/discussion/55197/beta-for-2-2-update-now-available
If you can reliably reproduce connectivity drops by performing set actions (e.g. host does x and client does y) please report them on Redmine as described here
http://forums.beamdog.com/discussion/49845/how-to-report-bugs
sorry for the delay, didn't have much time to play. We played tonight and I wanted to post an update about my problems.
First: We used the beta keys to update to the 2.2 version available on Steam. Sadly, that didn't help at all.
Also here is the content of my jingle.log file. I don't think that this kind of logging is very helpful
[2539:192] Resolving addr in PhysicalSocket::Connect [2539:404] Signalled with DE_CONNECT: 6
We played from 5 pm to 7:30 pm. I wrote down a short note every time I disconnect. The only pattern I was able to identify is that the disconnects occur roughly about every 10-15 minutes. Could be an indicator of some kind of memory running full?
Here are my notes:
5:17: Disconnect during quickload. Client went back to multiplayer character screen. Host did too, but client was missing. 5:28: Disconnect when assassin Molkar attacked at Gullykin. 5:40: Disconnect when last of Molkars party died. 5:50: Just walking around... 6:10: Nashkell inn. Host was identifying stuff and resting. 6:18: While attacking some Xvarts in Xvart village. 6:35: Walking around... 6:46: Talking to an NPC (Brienne) 6:59: After killing some skeletons. 6:10: Talking to an NPC (Torlo). 6:16: Attacking Zorgal. 6:30: Walking around again.. 6:43: Casting buffs in front of High Hedge. 7:06: Just standing around while host shopped at Thalantyr's. 7:17: Attacking skeletons near High Hedge. 7:30: Host was shopping at smith's shop in Beregost.
The disconnects are not directly visible as no error is thrown. The host mostly noticies that he gets control of my character. For me, the game continues but enemies are not attacking anymore and I can't hit them or interact with the game. Shortly after, I get the message that the connection has been terminated and I am back in the multiplayer game list screen.
My connection doesn't seem to be the problem as we have been skyping throughout the entire session. Also, my girlfriend was watching Netflix and she didn't mention any problems as well.
We are able to play like that, but I am sure you can understand how annoying those disconnects are...
Also I am curious if other people have the same issues. Maybe the lack of comments on this topic indicates that this isn't the case. But since I only encounter those disconnects with the Infinity Engine enhanced games, I would say that they are the problem and not something on my side
Is there anything else I can do to help find out more about what could be the reason for my disconnects? Can I increase the verbosity for the jingle log file?
Today I found out I can cause the game to crash by trying to open the connection screen when the game starts to disconnect. Doing this dumps content to the jingle.log. Obviously that file is only flushed when the game crashes.
Here is what looks like the interesting part to me:
[642:149] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|29]: UpdateState(): pings_since_last_response_=, rtt=100, now=9470633 [642:149] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|29]: Sending STUN ping Rvj1Fgni2cWX at 9470633 [642:178] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|29]: set_state [642:178] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|29]: Received STUN ping response Rvj1Fgni2cWX, pings_since_last_response_=9470633 , rtt=29 [642:592] Warning(physicalsocketserver.cc:1618): PhysicalSocketServer got FD_CLOSE_BIT error 10053 [642:629] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|29]: UpdateState(): pings_since_last_response_=, rtt=100, now=9471113 [642:629] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|29]: Sending STUN ping INwKLW1eTkJr at 9471113 [642:683] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|29]: set_state [642:683] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|29]: Received STUN ping response INwKLW1eTkJr, pings_since_last_response_=9471113 , rtt=54 [643:109] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|35]: UpdateState(): pings_since_last_response_=, rtt=100, now=9471593 [643:109] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWS|35]: Sending STUN ping 2pmKb3WjwvEb at 9471593 [643:589] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 , rtt=100, now=9472073 [643:589] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping BdrVf3jUH/dz at 9472073 [644:069] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 , rtt=100, now=9472553 [644:069] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping g9gcliKxg5sB at 9472553 [644:549] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 , rtt=100, now=9473033 [644:549] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping lPGt4cvWzPEq at 9473033 [645:029] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 9473033 , rtt=100, now=9473513 [645:029] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping XezvJpZJVEl2 at 9473513 [645:509] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 9473033 9473513 , rtt=100, now=9473993 [645:509] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping c8rhrYb4cQwM at 9473993 [645:989] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 9473033 9473513 9473993 , rtt=100, now=9474473 [645:989] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping Bfh+TcR/c09W at 9474473 [646:469] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 9473033 9473513 9473993 9474473 , rtt=100, now=9474953 [646:469] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping UXaTAfWQqaE7 at 9474953 [646:949] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 9473033 9473513 9473993 9474473 9474953 , rtt=100, now=9475433 [646:949] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping ifXamPUdLu63 at 9475433 [647:429] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 9473033 9473513 9473993 9474473 9474953 9475433 , rtt=100, now=9475913 [647:429] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping /D7XefxOrkCf at 9475913 [647:909] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 9473033 9473513 9473993 9474473 9474953 9475433 9475913 , rtt=100, now=9476393 [647:909] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Sending STUN ping C+kONicdxwIy at 9476393 [648:109] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Timing-out STUN ping 2pmKb3WjwvEb after 5000 ms [648:389] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 9473033 9473513 9473993 9474473 9474953 9475433 9475913 9476393 , rtt=100, now=9476873 [648:389] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRWI|35]: Unwritable after 5 ping failures and 5280 ms without a response, ms since last received ping=5849 ms since last received data=8579 rtt=100 [648:389] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRwI|35]: set_write_state [648:389] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRwI|35]: Sending STUN ping V5XcinTwwcac at 9476873 [648:389] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRwI|35]: UpdateState(): pings_since_last_response_=9471593 9472073 9472553 9473033 9473513 9473993 9474473 9474953 9475433 9475913 9476393 9476873 , rtt=100, now=9476873 [648:389] Sorting available connections: [648:389] Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CRwI|35] [648:389] Jingle:Channel[tunnel|1|RW]: DTLSTransportChannelWrapper: channel writable state changed. [648:389] cricket::PseudoTcpChannel::OnChannelWritableState: [tcp]
Before that the log shows a lot of STUN pings that were successful. After this part, they time out and it looks like they start to "pile up". Every log message displays the hash of all the pings that my client tried to send since the last response.
The last lines of the log look like this:
[672:583] Sorting available connections: [672:583] Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CxxI|35] [672:583] Jingle:Channel[tunnel|1|R_]: DTLSTransportChannelWrapper: channel readable state changed. [672:583] Jingle:Conn[tunnel:mKBJIXi0:1:0:stun:udp:46.5.16.84:21317->:1:0:local:udp:88.67.154.30:61118|CxxI|35]: Connection deleted [672:583] Jingle:Port[tunnel:1:0:stun:Net[ASUS:192.168.0.12/32]]: Port deleted [672:583] Jingle:Port[tunnel:1:0:stun:Net[ASUS:192.168.0.12/32]]: Removed port from allocator (0 remaining) [672:583] Removed port from p2p socket: 0 remaining [672:583] Jingle:Channel[tunnel|1|__]: Removed connection (0 remaining) [672:583] Jingle:Channel[tunnel|1|__]: No best connection [672:584] Sorting available connections: [675:410] cricket::PseudoTcpChannel::TcpWritePacket: Blocking [691:410] cricket::PseudoTcpChannel::TcpWritePacket: Blocking
I attached the file. Hope you are able to identify my issue.