Murloc Cult

Retour aux archives

Pilote automatique : le client ne « reprend » plus la main tout seul

Premier palier atteint en autonomie (niveau 2, deux quêtes rendues, gants équipés). Le pilote se coupait pourtant à chaque combat : le client renvoyait de lui-même le tir automatique et l'attaque lancés par le serveur. Ces échos sont désormais ignorés ; les statistiques comptent aussi en pilote automatique.

Commit
da2a90d
Build
Build réussi (1 min) · Cible worldserver

Constat

Le journal de reprise de main indiquait CMSG_CAST_SPELL ou CMSG_ATTACKSWING quelques secondes après chaque engagement. Le client 3.3.5a répète le tir automatique (sort à répétition) et l'attaque de la cible que le serveur vient d'engager : ce ne sont pas des gestes humains.

Correctif

  • CMSG_CAST_SPELL d'un sort à répétition (IsAutoRepeatRangedSpell) : ignoré.
  • CMSG_ATTACKSWING sur la cible déjà attaquée : ignoré.
  • Tout le reste (déplacement clavier, saut, autre sort, autre cible, clic sur un PNJ ou un objet) rend immédiatement la main à l'humain.
  • L'opcode responsable est noté à chaque reprise de main.
  • Les hooks de mise à mort, de mort et de montée de niveau reconnaissent aussi le cerveau en pilote automatique (statistiques et journal complets).

Bilan des 10 premières minutes

Niveau 1 → 2, « Your Place In The World », « Cutting Teeth » et « Etched Tablet » rendues, quatre quêtes en cours (scorpides, familiers, pommes de cactus), deux pièces d'équipement portées, aucune mort, aucun blocage.