Pour apprendre à faire un bot je me suis dis que ça pourrait être plus amusant de faire un bot facile à faire pour un jeux simple.
Le jeux en question est un jeux online tribalwars.net.
Voici une image du lieu d'envoi des troupes étant la tâche la plus répétitive du jeux.

Il faut que j'entre:
1. Les troupes à envoyer (dans ce cas-ci disons 5 - c'est tout ce que j'ai
2. les coordonnées en X et Y
3. On répète mais avec d'autres coordonnés.
4. Le bot s'arrête quand il n'y a plus de troupes (donc au final c'est le numéro trois et ce point c'est la condition d'arrêt de la boucle).
Jusqu'ici voici mon bout de code:
;Local $pos = MouseGetPos()
;MsgBox(0, "Mouse x,y:", $pos[0] & "," & $pos[1])
Const $xcoord=388
Const $ycoord=759
Mousemove(1225,374,0)
mouseclick("left")
send(22)
Mousemove(1221,543,3)
mouseclick("left")
send($xcoord)
;Mousemove(1295,560,5)
;mouseclick("left")
sleep(300)
send($ycoord)
;Mousemove(1530,557,5)
Send("{TAB}")
send("{ENTER}")
Ne marche que pour une coordonné. Je n'ai pas trouvé comment faire pour demander au programme de lire une liste que je peux éditer (et donc rajouter au fur et à mesure des coordonnés).
Pour que le bot sache combien de fois il doit envoyer un certain nombre de troupes avant de s'arrêter j'ai pensé à un truc du style:
const $5unit=InputBox("","Combien d'hommes de pique?")
const $unit=$5unit/=5Ça ne marchera que pour des multiples de 5 (puisque dans le code ci-haut on envoi des paquets de 5 hommes par attaques).
La valeur $unit servira à mettre fin à la boucle (je ne sais pas laquelle? Do/Until peut-être?).
Bon bref, premiers 24h d'autoit, je sais que j'en demande beaucoup. Pas besoin de me répondre en entier; une toute petite aide est la bienvenue!
En passant vous remarquerez que il y a des ;, les actions ont été remplacé par soit Tab ou simplement parce que dans le cas des coordonnés en Y, une fois la case en X remplie on passe à celle en Y.

Aide











