1. The contestants were to create water structures for the 20th Terraining Contest. Choose one in the public poll!
    Dismiss Notice
  2. Join other hivers in a friendly concept-art contest. The contestants have to create a genie coming out of its container. We wish you the best of luck!
    Dismiss Notice
  3. The Melee Mapping Contest #4: 2v2 - Results are out! Step by to congratulate the winners!
    Dismiss Notice
  4. We're hosting the 15th Mini-Mapping Contest with YouTuber Abelhawk! The contestants are to create a custom map that uses the hidden content within Warcraft 3 or is inspired by any of the many secrets within the game.
    Dismiss Notice
  5. Check out the Staff job openings thread.
    Dismiss Notice

What causes desync problem?

Discussion in 'World Editor Help Zone' started by EdgeOfChaos, Jan 26, 2015.

  1. EdgeOfChaos

    EdgeOfChaos

    Joined:
    Jan 8, 2014
    Messages:
    639
    Resources:
    1
    Tutorials:
    1
    Resources:
    1
    This is not for one of my maps, but I am interested in this problem that occurs in several other games. Essentially, you have to restart wc3 in-between games or else you desync and drop. This is seen in Castle Fight and Lands of Ostarrichi.

    What triggers cause this problem, exactly? I couldn't find any info on it elsewhere, and examining the Ostarrichi code didn't shed any light on it.
     
  2. Dr Super Good

    Dr Super Good

    Spell Reviewer

    Joined:
    Jan 18, 2005
    Messages:
    25,282
    Resources:
    3
    Maps:
    1
    Spells:
    2
    Resources:
    3
    It is not a trigger problem.

    The maps are likely "widgitized". This tool optimizes the object editor data dramatically reducing load times. The only issue is that it corrupts the WC3 object editor cache meaning that if you try to play another map it will not load properly (use the widgitized map's object data) which violates determinism so you get disconnected for being "out of sync".

    Restarting the process destroys the cache so the next time you start a map it loads all the object data with intended results.

    All maps which use widgitization should actually clearly announce they do on the load screen to prevent this confusion. The fact they do not would be an error the map maker is responsible for.
     
  3. EdgeOfChaos

    EdgeOfChaos

    Joined:
    Jan 8, 2014
    Messages:
    639
    Resources:
    1
    Tutorials:
    1
    Resources:
    1
    I see, thanks. However, it's actually a little different for some games, in that playing anything before it and then playing it will drop you (Lands of Ostarrichi). I checked and the map wasn't widgetized, so I guess it's something else.
     
  4. chasin225

    chasin225

    Joined:
    Jun 15, 2010
    Messages:
    218
    Resources:
    0
    Resources:
    0
    If people use GetLocalPlayer and the action contains things that should affect all players, then it desync
     
  5. Dr Super Good

    Dr Super Good

    Spell Reviewer

    Joined:
    Jan 18, 2005
    Messages:
    25,282
    Resources:
    3
    Maps:
    1
    Spells:
    2
    Resources:
    3
    Widgitizer was the first way of optimizing object editor data. I would not be surprised if there are now other tools that do the same/similar effect. The problem you describe is cache poisoning/corruption which means that when a different map is loaded it loads incorrectly as the data it thinks is already loaded is different from what it should be.

    Not the problem he is describing.