Skyriding Mount: Disconnect/Kick during Ground -> Flight Transition (Bad Anti-hack detection)

Steps to Reproduce:

  1. VPN to Europe and play on a US server (Latency is key here)
  2. Play a Druid
  3. Fly around, land… Shift out of Flight Form, shift back into Flight Form
  4. Spam Spacebar to start flying.
  5. Repeat steps 3 - 4 for a while. There is about a 1 - 5% chance any time you do this to disconnect.

I’m about 60% sure what is going on. Your guys’ anti-fly/speed hack is kicking in because it’s detecting a sudden increase of velocity of my character that doesn’t make sense.

I’m assuming this is because until your server has received the “PLAYER HAS STARTED FLIGHT MODE” arrives, you think that the Client sending you any high-speed movement is probably a cheat. Most of the time this works fine, but because you guys trust the Client for movement simulation and probably update via unreliable data-channels the “PLAYER HAS START FLIGHT MODE” is probably sent over the reliable data-channel like all other WoW abilities.

This means that your anti-fly-hack detection logic has an ordering dependency between the Unreliable position update from my Client and the Reliable “Started Flying” request. Data over Unreliable and Reliable channels CANNOT have temporal dependencies. When everything works fine, it works as expected, but if for some reason my “started flying” packet drops you start treating my movement as a hack and kick me.

Please consider adding a buffer before kicking players to see if a “Start Flying” event arrives post-detection. Even a 200ms buffer would solve A LOVE of these cases, and probably solve Demon Hunter Fel Rush, Mind Control, and Blink disconnect bugs that have plagued the game for ETERNITY.

Note that the delay won’t properly solve the problem because YOU CANNOT HAVE TEMPORAL DEPENDENCIES between an Unreliable Channel and a Reliable Channel UNLESS YOU ADD SPECIAL LOGIC. But it’s a super trivial way to solve 99% of these cases.

Thanks, and cheers.

Note: This post is redundant with [Possible Repro] Sky Riding/Fel Rush/Blink/Mind Control Disconnect

I made the second post when this one was randomly hidden by Blizz’s spam filter.