Many of you who have been playing Age of Empires II HD lately, may have noticed an unusual amount of “Out of Syncs” going on. These errors happen when the game “world” looks different for various players, making the game no longer synchronized. This bug was introduced with the launch of The African Kingdoms, but we can happily announce that the bug is fixed and is now a relic of the past.

Your game will be automatically updated to the latest 4.6 patch. If you wish to force an update, just restart your Steam client.

aoe2_HD_outofsync_patch_46_released

Technical bits and bops

So, what exactly was going on? After a lot of digging by the team (especially Morness, lead programmer at Skybox Labs), we found out that flares could sometimes cause a memory overflow. At this point, a cascade of errors is unleashed.

  1. Each flare is assigned an object ID, however, since we added player-colored flares, something went wrong and the flare objects could overwrite IDs 1-8.
  2. These object IDs (1-8) were almost always trees
  3. At this point, if a team would flare, the flare would only exist for their team, and not for the other team. And thus, for the whole team, a certain tree would be corrupted (still visible, just not usable. However, the other team would still have the normal tree in their world.
  4. Once this tree is about to be cut, one team sees an invalid tree and the other team sees the valid tree, at which point the game state is no longer the same for both teams and the game goes out of sync.

How come this bug was in the release?!

It’s a crazy bug for sure and actually one we did not encounter during our testing. If you’ve made it through the technical explanation above, the reason is actually pretty simple. Most of our QA team are either in the same room or use Skype when playing together. In both cases, flares are rarely used.

Follow up

Due to the harsh nature of this bug, we vastly upgraded our logging mechanism for Out of Syncs errors. Since our logging started, last week, 7.6% of the games went out of sync. We’ll keep an eye on that number but with 3 OOS causes patched in the last 7 days, we’re sure to see that number drop to an all-time low. If you would encounter any synchronization issues in the future, please allow the game to upload your logging information, it will greatly help us!

Thanks everyone for sticking around and sorry for all the frustration this error caused you!