Home / Electronique / World of Warcraft , Fabriquez vous un programme de pêche automatique avec AutoHotKey !

World of Warcraft , Fabriquez vous un programme de pêche automatique avec AutoHotKey !

Avant-propos 

Sachez qu’utiliser un Bot de pêche pour automatiser le jeu ne respecte pas les règles du jeu , aussi je vous conseille de ne pas l’utiliser sur un compte officiel ou compte privé ( en fonction des règles du serveur ) sans quoi vous risquez de voir votre compte BANNI .Cet article à un but pédagogique et est la pour vous montrer que la programmation est une matière abordable par tous et qu’elle peut vous être utile dans beaucoup de domaines .Si vous choisissez d’utiliser ce programme en jeu vous le faites a vos risques et périls et je ne peux être tenu pour responsable des sanctions que l’on prendrait contre vous. 

AutoHotKey

Si vous ne connaissez pas AutoHotKey , c’est peut être le moment de le découvrir .Il s’agit d’un langage de programmation Script qui permet de faire une multitude de choses sous Windows et entre autres l’automatisation de certaines taches .Ce logiciel est totalement gratuit , il possède une documentation assez fournie et facile a lire si vous programmez un peu (ou beaucoup!).Voici le lien pour le télécharger.

La pêche de World of Warcraft.

Si comme moi vous avez été ou vous êtes joueur de World of Warcraft ,vous aurez alors probablement pratiqué la pêche dans ce jeu. Le seul problème est que le pêche dans World of Warcraft est rapidement saoulante voir une torture si vous y passez plusieurs heures … imaginez maintenant que vous pourriez faire autre chose pendant que votre ordinateur pêche pour vous .Et bien sachez que c’est totalement possible avec AutoHotKey !

Les étapes

Téléchargez AutoHotkey , créez un fichier texte que vous enregistrerez au nom que vous voulez mais avec l’extension “.AHK” –> “nom_de_fichier.ahk”, puis “clic droit” ,”editez”.

Il faut détecter le bouchon :

Le bouchon ci-contre est un des bouchons standards du jeu , il va nous falloir positionner la souris sur le bouchon pour préparer l’action de relever la ligne.Ce que nous allons faire pour détecter le bouchon est de détecter la couleur d’une des plume dessus . Comme vous le voyez sur l’image une des plumes se détache bien du fond c’est la plume rouge, c’est elle que je vais détecter.

 

 

 

Il y a justement une fonction permettant de détecter la couleur sur laquelle notre souris est pointée. Je vais donc demander à  l’appui de la touche “F9” par exemple de récupérer la couleur sous la souris. J’utilise “F9” car il me semble qu’elle n’est pas assigné dans le jeu pour autre chose. Ça sera l’étape de configuration , elle sera indispensable car la lumière dans le jeu change en fonction de l’heure de la journée et des zones dans lesquelles vous voudrez pêcher et les couleurs du bouchon change avec l’environnement.

Voici le code pour la configuration:

F9::
MouseGetPos,bx,by
PixelGetColor,bouchon,bx,by
MsgBox La couleur est %bouchon%, la position x est %bx% la position en y est %by%.
return

A l’appui de la touche F9 il effectuera  l’opération entre le “F9” et le “return”

La première chose à faire est de récupérer la position de la souris avec le “MouseGetPos,bx,by” la valeur des coordonnées X et Y est stockée dans les variables “bx” et “by”.

Lorsque vous allez appuyer sur “F9” l’ordinateur va regarder ou se trouve votre souris et stocker la position de celle ci dans nos variables.Une fois que nous connaissons la position de ce que nous voulons détecter nous allons chercher la couleur de ce qu’il y a l’écran à ces coordonnées avec une autre fonction .

PixelGetColor,bouchon,bx,by

Cette fonction ci-dessus permet de récupérer la couleur au coordonnées “bx”et “by” et de les stocker dans la variable “bouchon”

Ensuite une “message box” est ouverte vous donnant les valeurs que vous avez récupéré , ainsi vous savez que ça a bien été pris en compte.

La recherche du bouchon

F12::
loop
{
sleep 2000
Send {&}
sleep 2000

PixelSearch,Px,Py,200,200,1600,800,bouchon,10,fast
if errorlevel=0
{

MouseMove,Px,Py,10

}

 

A l’appui sur la touche “F12” on lance la canne a pêche , en utilisant “Send {&}” l’action de pêche a été préalablement posée à la première position de la barre de sort, et son raccourci clavier est “&” , j’ai intercalé des “sleep 2000” qui ne sont ni plus ni moins que des pauses de 2000 millisecondes ou 2 secondes .Elles ont pour objet de palier à la latence que peut avoir le serveur si , l’action n’est pas assez rapide il ne lance pas la recherche tout de suite.

nous utilisons ensuite la fonction “PixelSearch”

PixelSearch,Px,Py,200,200,1600,800,bouchon,10,fast

Nous lui demandons donc de chercher un pixel de la couleur de “bouchon” dans le cadre 200,200,1600,800 (ces valeurs peuvent être ajustées suivant la taille de votre écran l’idée ici étant d’éliminer le tour). Le 10 qui suit est une tolérance ( plus ou moins 10 sur le Rouge,le Vert et le Bleu) il faudra l’ajuster si la détection ne se fait pas ou si elle se fait n’importe ou. J’ai eu de bons résultats avec 10 donc je l’ai laissé.

Une fois trouvé les valeurs sont stockés dans “Px”et “Py”, nous déclenchons l’action du mouvement avec “if errorlevel=0” et nous demandons le mouvement de la souris au positions de détections “Px” et “Py” a une vitesse de 10.

Relever la ligne

C’est la que les choses se complique, parce que AutoHotKey n’a pas de système de détection de volume audio ( du moins pas a ma connaissance). Mais ce n’est pas un gros problème nous allons pouvoir mettre un petit Vumètre et détecter l’aiguille. Vous pouvez chercher une autre solution si vous êtes courageux, n’hésitez surtout pas à la partager! Pour ce qui nous concerne voici le Vumètre que j’ai utilisé. Je crois que c’est une version Windows 7 mais elle fonctionne parfaitement sous Windows 10.

Vous allez devoir également passé en mode fenêtré afin que le Vumètre soit visible avec la fenêtre du jeu nous allons devoir détecter une position de l’aiguille et sa couleur, voici ce que ça donne:

loop{
PixelGetColor,color,1830,430
if(color > 0xa0a0a0)
{
MouseClick,left
sleep 3000
Send {Echap}
break

Une fois que la souris est au dessus du bouchon , il boucle en attendant que l’aiguille passe en 1830;430 ( pour mon écran ) le fond du Vumètre est blanc (0x000000) si elle est supérieur a une valeur un peu grise que j’ai choisi arbitrairement alors c’est que l’aiguille et là et par conséquent c’est que le bouchon à bougé .Ensuite clic gauche pour remonter la ligne attente de 3 seconde le temps du ramassage automatique ( il faut bien évidement activer fouille auto dans les réglages du jeu) puis le programme envoi un “Echap” pour fermer la fenêtre et recommencer.

les positions de démarrage

Pour que ça ne soit pas la galère il faut que tout se positionne automatiquement , si vous avez à le faire à la main ça va très très vite être galère .

CoordMode, Pixel,Screen
CoordMode, Mouse,Screen

run c:\VUMeter.exe

sleep 1000
WinMove,VUMeter,,1354,267,,

ifWinExist,World of Warcraft
WinActivate
WinMove,World of Warcraft,,0,0,1800,1040

On lance le Vumètre ( que j’ai mis a C:\) et on le bouge pour le positionner , il faut  rajouter un “sleep 1000” entre les deux pour qu’il ai le temps de l’afficher ,il bouge la fenêtre avec WinMove à la bonne position ,il fait de même avec la fenêtre de WOW qu’il redimensionne pour que tout soit visible.

Au dessus , c’est seulement pour que les coordonnées correspondent entre l’écran et la souris.

Voici que que ça donne sur le jeu :

Pour finir voici le programme complet a coller dans un fichier texte et a renommer en “.ahk“:

 

CoordMode, Pixel,Screen
CoordMode, Mouse,Screen
run c:\VUMeter.exe
sleep 1000
WinMove,VUMeter,,1354,267,,

ifWinExist,World of Warcraft
WinActivate
WinMove,World of Warcraft,,0,0,1800,1040

F10::
Reload
return

F11::
ExitApp
return

F9::
MouseGetPos,bx,by
PixelGetColor,bouchon,bx,by
MsgBox La couleur est %bouchon%, la position x est %bx% la position en y est %by%.
return

F12::
loop
{
sleep 2000
Send {&}
sleep 2000

PixelSearch,Px,Py,200,200,1600,800,bouchon,10,fast
if errorlevel=0
{

MouseMove,Px,Py,10

}
sleep 1000

loop{
PixelGetColor,color,1830,430
if(color > 0xa0a0a0)
{
MouseClick,left
sleep 3000
Send {Echap}
break
}

}

}

 

La procédure :

  1. Copiez / collez le programme ci dessus dans un fichier texte
  2. Enregistrez le en lui donnant un nom avec l’extension “.ahk” Exemple “nom.ahk”
  3. Téléchargez Autohotkey ici
  4. Téléchargez le VUmetre ici
  5. Copiez le Vumètre sur la racine (C:\)
  6. Lancez le jeu et passez le en mode fenêtré
  7. Mettez le sort de pêche en 1 dans la barre de sort
  8. Vérifiez que la fouille auto est activée
  9. Lancez le programme
  10. —>Les fenêtres doivent se mettre en place à la bonne position
  11. Lancez votre bouchon , positionnez votre souris sur le bouchon en préférant une couleur qui se détache du fond (la plume rouge fonctionne généralement bien)
  12. Une fois au bon endroit appuyez sur “F9” , une fenêtre s’ouvre et vous indique que la couleur a bien été prise
  13. Appuyez sur “F12”
  14. Et miracle ! Ça pêche tout seul 🙂 !
  15. Il y a deux autre fonctions , “F10” qui relance votre script vous aurez alors a reprendre la couleur et “F11” il stop le script .

 

Amusez vous bien avec ce programme et pensez à vous inscrire !

 

Sylvain Altmayer

 

 

 

 

 

 

 

7 thoughts on “World of Warcraft , Fabriquez vous un programme de pêche automatique avec AutoHotKey !

  1. Bonjour , oui il fonctionne sur la version officielle actuelle et sur toutes les autres , il est basé sur la détection de couleur du bouchon donc tant que la couleur du bouchon est différente de celle de l’environnement ( ou que Blizzard ne passe pas le jeu en noir et blanc 🙂 ) ça fonctionne .Il faut toute fois placer l’action de pêche sur le raccourci “1” dans la barre d’action et ne garder que les bruitages dans le son pour ne pas est parasité par la musique.
    Pour ce qui est de la détection je ne sais pas trop ce que Blizzard recherche et je ne peux pas vous conseiller de l’utiliser dans le but par exemple d’attraper la monture a Boralus, Vous savez que vous prenez un risque en l’utilisant puisque ça enfreint les règles du jeu , je ne peux vous conseiller que la plus grande prudence sachant que pour cet article , il est surtout fait dans un but éducatif l’idée dans mon esprit est d’intéresser les gens a la programmation .

    Sylvain

    1. Merci de la réponse rapide, je m’amuse a la programmation pour le moment sur serveur privé, j’arrive juste pas a relever la canne à pêche. Je pense que le bruit ambiant “cascade etc” fait défaut.
      je n’ai aucun clique au moment de relever, une idée ?

  2. En fait si le bruit était gênant il aurait tendance a relever la canne trop souvent . En revanche il se peut que le vumetre ne soit pas au bon endroit est ce qu’il se charge au démarrage ? Wow doit également etre en mode fenetré pour que le vumetre soit visible est ce que c’est le cas ?

    1. Bonjour Philippe , vérifiez que le script est bien exécuté , et que vous avez bien collé tout le texte en vert ( avec les accolades a la fin ). Lorsque vous appuyez sur “F9” une Message box doit s’ouvrir vous indiquant que la couleur est prise avec le code de la couleur et la position de la souri au moment ou vous appuyez sur “F9”

Laisser un commentaire

Top