[Bug] Game state not in sync after reconnect in MP

Discussion in 'Bugs' started by progammer, Jul 20, 2013.

  1. progammer

    progammer Ogre

    RoomID=135376, me vs Platouf. After I make the first move my client tried to reconnect successfully. My client still shows waiting for Platouf to play a trait. Platouf' made a move on his client and is showing waiting for me to make a move.

    Both player are waiting on the other and seeing their opponent's clock counting down. Chat is working as normal.

    My log:
    Code:
    Edited: Full log below
    
    My screen:
    http://i.imgur.com/8HzDD7r.jpg

    Platouf's log and screen:
    http://chefdesplatoufsc.free.fr/stock image/bug_disconnect_platouf_log.txt
    http://chefdesplatoufsc.free.fr/stock image/bug_disconnect_platouf_screen.jpg
     
  2. progammer

    progammer Ogre

    Update: After the clock timeout, it appears that my client is the one that is out of sync:

    Code:
    Initializing battle screen
    Battle joined
    startTimer 0 1200
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Event=StartGame
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Starting round 1
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Event=Attachment Phase Initiated
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Event=Draw Phase Initiated
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Walk for Tank Fighter
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Powerful Hack for Tank Fighter
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Impaler for Tank Fighter
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Lunging Thrust for Tank Fighter
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Run for Human Wiz
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Winds of War for Human Wiz
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Run for Human Wiz
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Chilling Rime for Human Wiz
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Run for Human Healer
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Impenetrable Nimbus for Human Healer
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Bless for Human Healer
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Shuffle for Human Healer
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew Walk for Barazok
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew a card for Barazok
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew a card for Barazok
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew a card for Barazok
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew Walk for Wyrzak
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew a card for Wyrzak
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew a card for Wyrzak
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew a card for Wyrzak
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew Walk for Troggdar
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew a card for Troggdar
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew a card for Troggdar
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf drew a card for Troggdar
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Event=Action Phase Initiated
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer must play a Trait
    stopTimer 0 1189
    BATTLE LOG: Player=progammer,Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Event=PlayAction,Action=Impaler,Instigator=Tank Fighter,Targets=
    startTimer 0 1189
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Attaching Impaler to Tank Fighter
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Impaler for Tank Fighter
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer must play a Trait
    stopTimer 0 1187
    BATTLE LOG: Player=progammer,Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Event=PlayAction,Action=Impaler,Instigator=Tank Fighter,Targets=
    startTimer 0 1187
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Attaching Impaler to Tank Fighter
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Detaching and discarding Impaler from Tank Fighter
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=progammer drew Sprint for Tank Fighter
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=The active player is now progammer
    stopTimer 0 1167
    BATTLE LOG: Player=progammer,Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Event=PlayAction,Action=Run,Instigator=Human Wiz,Targets=
    startTimer 0 1167
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Player=progammer,Actor=Human Wiz,Event=Move,Origin=(4, 2),StartFacing=(1, 0),Destination=(6, 4),EndFacing=(0, 1)
    stopTimer 0 1166
    startTimer 1 1200
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Platouf must play a Trait
    Retrying connection.
    Connection resumed.
     
    > reconnect
     
    CHEAT: Unknown command
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Scoring Phase: initiated
    BATTLE LOG: Scenario=Temple Tussle,Room=Platouf vs progammer,RoomID=135636,Msg=Discard Phase: initiated
    
     
  3. Platouf

    Platouf Mushroom Warrior

    Hello,

    I win this game when the progammer timer is about 00min 37 seconds. After this i have normal victory screen with loot and rating update. If these information can help you.

    Friendly,
    Platouf.
     
  4. Phaselock

    Phaselock Bugblatter

    Aye, in fact...you don't even need to drop connection to cause desync. Lag/slow asset loading on one end will screw the game. Dunno when devs want to tackle this...

    edit: perhaps a simple solution is to let the server start the clock when both players have completed loading rather than in its current aysnchronous nature ?
     
    skip_intro and progammer like this.
  5. j-wiz

    j-wiz Blue Manchu Staff Member


    Does that result in the state of the game out of sync, or just the clock?
     
  6. Phaselock

    Phaselock Bugblatter

    Slow loading/Alt-tabbing screws the clock. Packet loss screws the game.
     
  7. skip_intro

    skip_intro Ogre

    I had this when I was testing World of Tanks. Due to a slow machine / connection, I played several games where I was still waiting to enter as far as I knew, and was killed before I even started. :eek:

    That game had a much more intense set of graphics, so the slow asset thing hasn't hit me much in CH, though it is not unknown in SP for me to wait a few seconds to get all of the figures loaded whilst playing on a laptop. Once I get my new machine though I wouldn't expect any lag at all unless there's been a massive upswing in concurrent players.
     

Share This Page