Reconnecting to rank games fix

Discussion in 'General Discussion' started by TinfoilHatTheory, Jul 23, 2017.

  1. My internet dc'd and I managed to reconnect back in. Only to find out I lost my full turn "GG".

    What's the fcken point of reconnecting if you're gona lose your turn anyway. You need 5-6 min for the router to realise it dc'd + reconnect. There's no realistic amount of time for you to play out your turn even if you reconnect in time.

    Solution 1:
    Make it your timer preserves when you dc. To save time when someone ragequits. Make Alt-F4's count as a forfeit/quit.

    Solution 2:
    Just turn off reconnection for rank games. It's USELESS. Better of taking some load of the servers, so they're more stable.
     
    Last edited: Jul 23, 2017
  2. Sokolov

    Sokolov The One True Cactuar Octopi

    The timer does, in fact, pause when you disconnect in a non-natural way.

    The problem is that with internet, when you disconnect in this manner, it isn't 100% immediately apparent to all parties. This is because when some part of your connection is broken like this (and it could be anywhere along the line between our servers and your house), there is no message saying, "Hey guys, I am disconnecting now." So the only way to determine that there is a problem is if we are no longer receiving the data we expect from you - which, depending on the cause of the disconnect, could take an unknown amount of time. At the same time, just because we aren't receiving data doesn't mean you are immediately disconnected - most connections are not continuously sending data at all points in time - so we can't assume that any brief pause in data means you are disconnected.

    (You can test this behavior with various programs by turning off your router while someone else is observing your status - the amount of time it takes for you to be recognized as offline could vary wildly depending on the service.)

    Contrast this with clicking Quit on a program, which will, along with closing the program on your computer, also send us a message that says, "Hey, I am out" so we can close the connection immediately.

    Note that if your opponent did a turn relatively quickly, you can basically lose a turn in just a little over a couple of minutes - which isn't all that long when it comes to internet connection interruptions.

    ~

    Second, reconnection doesn't really put much stress on the server, and the servers aren't exactly stressed in any way.

    ~

    That said, it's possible there is a bug with disconnect, so I will have someone to a quick test but it has already been tested a lot since that was one of the concerns with old client.
     
    Last edited: Jul 24, 2017
    DiCEM0nEY likes this.
  3. DiCEM0nEY

    DiCEM0nEY I need me some PIE!

    I don't understand, why isn't data sent at all points? How would a game like LOL work otherwise? Good post though for the uninformed
     
  4. Sokolov

    Sokolov The One True Cactuar Octopi

    Because continuously sending data is expensive - both from a server perspective (the server is receiving all of these events from ALL players), from a bandwidth perspective (every event sent takes bandwidth) and from the client perspective (there is client overhead for initiating these events).

    In a game like League of Legends, you, as the user know you are disconnected when you stop seeing characters move - because you are no longer receiving server commands telling your client where to draw stuff.

    At the same time, whenever you perform an action, you are sending data to the server. Since the number of actions a player does is many per second, you are basically sending and receiving data most of the time already anyway (but they are still discrete events with gaps in between - the gaps are just normally really really small).

    But if you were to idle in your base - that's functionally no different to being disconnected as far as the server can tell - because you are no sending any data. In other words, in most cases, games can't tell you are disconnected or idle. This is why when someone is disconnected, they look the same as if they are AFK or vice versa. You can't tell WHY someone is not moving/sending data. But at some point, you say, ok, no data for 30s... let's send them a request for data and see if they respond, and if they do, then they are still there, otherwise consider them disconnected. But you don't want to be too aggressive on this because this will increase ping/response times, as well as potentially create false disconnect flags. In the case of League of Legends, only the client really needs to know they are disconnected since they aren't doing anything on their end when you disconnect, and a disconnect is easily detected on the client side because it is no longer receiving server messages.

    Now, some applications may send "null" events in those instances but those are usually cases where bandwidth is not an issue, idling is a common occurrence and you still want to detect a true disconnect - but this not common in games.
     
  5. DiCEM0nEY

    DiCEM0nEY I need me some PIE!

    Ok, that was basically my understanding of the situation as well. Turn based nature of game.
     
  6. Hey I just want to mention a bug. When you dc from the game. The client jumps back into the login screen. But you can't actually login. You have to alt f4 out and restart pox.

    Although I still stand by my opinion, rejoining a rank game is useless. So not annoyed by this bug.
     
  7. Chris

    Chris I need me some PIE!

    I disagree, coming from an era where a d/c was a loss i am very greatful of the d/c protection. There are things you can do to check if you have d/ced or not. Generally tho I think D/Ced are almost always the user end. I spent some time away from home and was logged in continuously without a single D/C
     
  8. badgerale

    badgerale Warchief of Wrath

    The reconnect works well for me, I use it a lot, and it is quicker than the old client.

    Sometimes I lose time, but rarely my whole turn.
     
  9. Sokolov

    Sokolov The One True Cactuar Octopi

    I am glad! We did do some optimizations for that aspect early on in the porting process (since this was a frequent concern from players before).
     
  10. Senshu

    Senshu Administrator Octopi

    Are you using the Steam version of the game? This happens, because the Pox Nora game client can't reconnects until the Steam client reconnects. In cases where you need to re-log into your steam launcher this will block you from playing until both have reconnected.
     
    DiCEM0nEY likes this.
  11. DiCEM0nEY

    DiCEM0nEY I need me some PIE!

    Very interesting
     

Share This Page