[R179]Unnatural DC when MP joining room after left a room

Bugs will be moved here once resolved.

Post » Sat Sep 06, 2014 10:34 pm

As per requested by @Ashley. Brace yourself, crazy instruction is coming.

Problem Description
Describing the problem is beyond my understanding and knowledge of what's happening, however you can read the symptom and observation here. It would be helpful if other user can understand the problem, please notify me, I will update this section. Specific test on the problem is not possible because the information of breaking change between r178 and r179 is unavailable.

However the best description I can give is, the client will be DC/kicked unnaturally after connecting to a room (duelroom) with a condition of it has joined then left other room previously (lobbyroom). This also affect all my recovery mechanism upon disconnection. Tell me if this is confusing, I'll try to rephrase.

Attach a Capx. Download link below.
Please follow the instruction carefully as the project minimized tremendously, as all fail-proof mechanism/events were removed for readability of the real problem.

Note:
  • Provided capx is as minimal as it can be to simulate the problem, expect 20+ events for each capx. Tests in smaller scale than this doesn't help.
  • Capx provided is in r178, so that you can duplicate it to test in both r178 and r179.
  • All marked "nothing to see here" are prerequisite to re-simulate the problem, but doesn't play any role on the issue. You can Ignore these.
  • Ping functionality are left for tester to play around.

Description of Capx
  • [LobbyHostDFN.capx] This is the host for the lobby, which responsible to create Duelhost and managing the transfer of peer.
  • [DuelHostDFN.capx] This is the duelhost for the two client in duel.
  • [CCGclientDFN.capx] This is the client for the game.

Steps to Reproduce Bug, applicable for both r178 and r179
Note: this is doable with just a single type of browser.
  1. Open all capx in different instance of C2. [3 instance]
  2. If your default preview port is localhost:50000, or change the address in LobbyHostDFN.capx Line17 accordingly.
    1. Run Preview LobbyHostDFN.capx first and grab Localhost:50000
    2. Run Preview DuelHostDFN.capx second to grab Localhost:50001. If it grabbed other port, change the address in LobbyHostDFN.capx Line17.
    3. Run Preview CCGclientDFN.capx third and grab Localhost:50002 [important: run 2 instance/window/tab of this]
  3. Once you run preview all three, you can close Localhost:50001.
  4. By default, Lobbyhost (50000) will attempt to connect on start layout. You should see 4 logs [connect, login, joining, joined as HOST]
  5. By default, Client will check whether Lobbyhost is already exist or not, if yes, the go to lobby button will be enabled.
  6. Enter username in each client, click go to lobby. Observe the log in Lobbyhost and Client to see connection status. Play around with the ping button to see if they are communicating. If they are, they should be ready to request match.
  7. Click Request Match button, Localhost:50001 will popup, this is duelhost popping up. Ensure to enable popup from localhost, check your address bar.
  8. The process is pretty much automatic from here, both client will leave LobbyRoom upon confirmation from lobbyhost, then it will attempt to connect duelhost.
  9. Observe the duelhost and clients logs. See observation section. Play with ping button a bit.

Observed Result: r179
Image
Observation from both client log r179. This is the unnatural DC I'm talking about. Ping failed.

Image
Observation from duelhost log r179. Host failed to log leave reason, only error message managed to be logged. Ping failed.


Expected Result: r178
Image
Observation from both client log r178. Ping works!

Image
Observation from duelhost log r178. Ping works!


Investigation Note
  • Please read event group description to help on the investigation.

Affected Browsers: All version are latest
  • Chrome: (YES)
  • FireFox: (YES) Note: Lousiest of the three in term of WebRTC.
  • Opera: (YES) Note: Opera seems to be second most responsive for WebRTC, after Chrome :shock: .
  • IE: (WebRTC unsupported)

Operating System and Service Pack
Win8.1 64bit

Construct 2 Version ID
R179 (affected)
B
28
S
8
G
4
Posts: 553
Reputation: 4,914

Post » Tue Sep 09, 2014 3:06 pm

I've made a tweak to how disconnects are made in the next beta. I think the change to support kicking peers accidentally got a "leave room" line in the wrong place which I think you're running in to. Let me know how it goes when r180 is out.
Scirra Founder
B
387
S
230
G
88
Posts: 24,251
Reputation: 192,454

Post » Tue Sep 09, 2014 3:31 pm

Allright will do. Thanks!
B
28
S
8
G
4
Posts: 553
Reputation: 4,914

Post » Fri Sep 12, 2014 7:59 pm

@DuckfaceNinja - can you check r180 now it's out and verify if it's fixed?
Scirra Founder
B
387
S
230
G
88
Posts: 24,251
Reputation: 192,454

Post » Sat Sep 13, 2014 4:46 am

Ashley wrote:@DuckfaceNinja - can you check r180 now it's out and verify if it's fixed?

It seems to be fixed now, you can close the bug report now.
B
28
S
8
G
4
Posts: 553
Reputation: 4,914

Post » Sat Sep 13, 2014 10:41 am

Great, thanks.
Scirra Founder
B
387
S
230
G
88
Posts: 24,251
Reputation: 192,454


Return to Closed bugs

Who is online

Users browsing this forum: No registered users and 2 guests