Murloc Cult

Back to the archive

Autopilot: the client no longer “takes back” control on its own

First milestone reached autonomously (level 2, two quests turned in, gloves equipped). Yet the autopilot stopped at every fight: the client echoed the auto shot and attack started by the server. These echoes are now ignored; stats are also counted under autopilot.

Commit
da2a90d
Build
Build success (1 min) · Target worldserver

Finding

The takeover log showed CMSG_CAST_SPELL or CMSG_ATTACKSWING a few seconds after each engagement. The 3.3.5a client repeats the auto shot (auto-repeat spell) and the attack on the target the server just engaged: these are not human gestures.

Fix

  • CMSG_CAST_SPELL of an auto-repeat spell (IsAutoRepeatRangedSpell): ignored.
  • CMSG_ATTACKSWING on the already attacked target: ignored.
  • Everything else (keyboard movement, jump, another spell, another target, NPC or object click) hands control back to the human at once.
  • The responsible opcode is logged at each takeover.
  • Kill, death and level-up hooks also recognise the brain under autopilot (complete stats and log).

First 10 minutes

Level 1 → 2, “Your Place In The World”, “Cutting Teeth” and “Etched Tablet” turned in, four quests in progress (scorpids, familiars, cactus apples), two gear pieces worn, no death, no stuck.