Quelles bases/languages afin de coder un bot socket?

Inscrit
4 Septembre 2022
Messages
5
Reactions
1
#1
Bonjour a tous, tout nouveau sur ce forum je viens juste de le découvrir.
J'ai actuellement codé en python un bot sur Dofus qui permet de farm pêcheur mais c'est assez amateur car j'utilise pyautogui.
Le bot marche pas trop mal je peux definir des routes via des fichier texte qui répertorie chaque pixel sur lequel cliquer, mais ça a ses limites notamment les clicks sur les monstres certaines fois, et également pour les combat, dans ce cas la il fais la même action en boucle et attend que le monstre se rapproche en passant les tours en boucle, enfin bref il marche mais je ne peux pas le faire tourner plus de 3h/4h car j'ai souvent des "issues" ingérables..

Du coup je viens de découvrir ici même que l'on peut faire des "bot socket" c'est a dire ne plus avoir a ouvrir l'interface de Dofus, et j'adorerai pouvoir coder cela.
Car un des inconvénient de mon bot c'est qu'il "monopolise" mon pc x)

Pour le moment je code quasiment qu'en Python même si j'ai des bases dans d'autres languages, alors j'ai plusieurs questions :
Est-ce que l'on peut coder un bot socket en Python ?
Si oui, quels sont les outils qui peuvent m'aider ?

Merci de votre aide.
 
Inscrit
16 Octobre 2019
Messages
27
Reactions
14
#2
Salut , oui il est possible de coder un bot python.

2. Apprend le Python , car je ne crois pas que tu disposes les bases fondamentaux.
 
Inscrit
27 Septembre 2019
Messages
47
Reactions
250
#3
Pour un bot socket je te conseille C# et .NET 6 c'est hyper confortable comme langage, le framework contient tout ce dont tu as besoin et supporte la programmation asyncrone et en plus la doc MSDN est bien fournie. Il faudra aussi que tu émules le launcher Ankama (pour la récupération du token), si tu as besoin d'une base je peux t'aider.
 
Inscrit
4 Septembre 2022
Messages
5
Reactions
1
#4
Salut , oui il est possible de coder un bot python.

2. Apprend le Python , car je ne crois pas que tu disposes les bases fondamentaux.
Salut,

D'accord, et qu'est ce que tu entend par les "bases fondamentaux" je pense déjà les avoir mais si tu peux détailler ça serait cool !
Merci

ECG
 
Inscrit
27 Septembre 2019
Messages
47
Reactions
250
#5
Salut,

D'accord, et qu'est ce que tu entend par les "bases fondamentaux" je pense déjà les avoir mais si tu peux détailler ça serait cool !
Merci

ECG
Je pense qu'il voulait parler de la programmation réseau en python, comment utiliser les sockets etc
 
Inscrit
4 Septembre 2022
Messages
5
Reactions
1
#6
Pour un bot socket je te conseille C# et .NET 6 c'est hyper confortable comme langage, le framework contient tout ce dont tu as besoin et supporte la programmation asyncrone et en plus la doc MSDN est bien fournie. Il faudra aussi que tu émules le launcher Ankama (pour la récupération du token), si tu as besoin d'une base je peux t'aider.
Salut,

désolé j’ai complètement oublié de te répondre tout à l’heure.
D’accord C# je connais, j’ai qq bases simple faut que je m’y replonge dedans.
NET6 c’est un language aussi? (Je connais pas)
En tout cas merci de ta réponse, et je raffolerai sûrement de ton aide par la suite pour le « token ».

Je pense qu'il voulait parler de la programmation réseau en python, comment utiliser les sockets etc
Pour le coup en effet je n’ai jamais utilisé de la programmation « réseau » réellement j’ai déjà utilisé en entreprise python afin de formuler des requêtes en base de donnée (notemment SQL) mais rien de bien compliqué.

je vais me renseigner sur NET6 et revoir un peu de C# afin de voir quel language je choisirai même si je suis très familier avec Python. Après c’est pas plus mal de voir un autre language si c’est vraiment plus approprié d’utiliser C# pour un bot socket.
 
Inscrit
28 Février 2014
Messages
99
Reactions
35
#7
Tu peux faire un bot avec n'importe quel langage. Il faut prendre celui avec lequel tu es le plus à l'aise. Même si pour le C#, il y a plus de code source d'autres bots.
Je te conseille de commencer par faire un simple sniffer en MITM avant de te lancer dans ton bot (Regarde Frida pour la redirection). Cela te permet d'avoir le protocole fonctionnel.
Good luck
 
Inscrit
4 Septembre 2022
Messages
5
Reactions
1
#8
Tu peux faire un bot avec n'importe quel langage. Il faut prendre celui avec lequel tu es le plus à l'aise. Même si pour le C#, il y a plus de code source d'autres bots.
Je te conseille de commencer par faire un simple sniffer en MITM avant de te lancer dans ton bot (Regarde Frida pour la redirection). Cela te permet d'avoir le protocole fonctionnel.
Good luck
Salut,

D'accord alors dans ce cas la je pense que je le coderai en Py car c'est le language que je maitrise le mieux et de loin.
Si j'ai bien compris le principe de "sniffer" le but est de voir ce que le client envoie comme paquet au serveur durant le jeu ?
Je commence a m'y plonger dedans la c'est pas simple donc c'est peut être une question bête mais c'est pour être sur.

Merci de l'aide.

ECG
 
Inscrit
27 Septembre 2019
Messages
47
Reactions
250
#9
Salut,

D'accord alors dans ce cas la je pense que je le coderai en Py car c'est le language que je maitrise le mieux et de loin.
Si j'ai bien compris le principe de "sniffer" le but est de voir ce que le client envoie comme paquet au serveur durant le jeu ?
Je commence a m'y plonger dedans la c'est pas simple donc c'est peut être une question bête mais c'est pour être sur.

Merci de l'aide.

ECG
Oui tu peux voir les messages que s'envoient le client et le serveur pour comprendre le protocole (texte) et toi aussi envoyer tes propres messages (principe du bot). Tu peux le faire de plein de manière, tu peux même regarder le traffic avec wireshark par exemple, sinon le plus courant est de hook les fonctions recv/send/connect qui permettent de rediriger la lecture/ecriture du flux TCP. Soit en injectant une dll ou bien en utilisant des outils d'instrumentation tels que Frida comme l'a dit quelqu'un plus haut. Oublie pas que le processus qui gère le réseau est le deuxième processus enfant, c'est celui qui a comme argument "--utility-sub-type=network.mojom.NetworkService"

1662392301535.png
 
Dernière édition:
Inscrit
4 Septembre 2022
Messages
5
Reactions
1
#10
Oui tu peux voir les messages que s'envoient le client et le serveur pour comprendre le protocole (texte) et toi aussi envoyer tes propres messages (principe du bot). Tu peux le faire de plein de manière, tu peux même regarder le traffic avec wireshark par exemple, sinon le plus courant est de hook les fonctions recv/send/connect qui permettent de rediriger la lecture/ecriture du flux TCP. Soit en injectant une dll ou bien en utilisant des outils d'instrumentation tels que Frida comme l'a dit quelqu'un plus haut. Oublie pas que le processus qui gère le réseau est le deuxième processus enfant, c'est celui qui a comme argument "--utility-sub-type=network.mojom.NetworkService"

Afficher la pièce jointe 853
D'accord du coup Frida est une application qui sniffe directement ?
Sur Python je crois avoir trouver une librairie qui me permet de sniffer elle s'appelle "scapy" mais la documentation est vraiment pas simple.
Ca veut dire quoi "hook" les fonctions ?
D'accord merci je comprend j'imagine qu'il y'a d'autre processus en permanence, la capture d'écran du coup c'est un interface système style gestionnaire des tâches qui te permet de voir tout ça ou c'est autre chose ?
 
Haut Bas