Analyse Commencer à développer un bot - Clarification

Inscrit
11 Aout 2017
Messages
2
Reactions
0
#1
Bonjour,

Je vais reposer cette question qui a l'air d'avoir été posée 100x mais aucune des réponses ne me semblait claire...

Comment commencer à programmer un bot (Dofus ou autre) ?

En fait, j'ai appris plusieurs langages de programmation (par moi même et en cours). Mais je n'ai encore jamais programmé réellement.
Il y a pour moi une grande différence entre savoir programmer et connaitre un langage de programmation. Ce qui fait que malgré que je connaisse quelques langages (C, JS, PHP,...). Je n'ai aucune idée de comment débuter un réel projet. J'ai l'impression que j'ai toutes les cartes en main (conditions, boucles, pointeurs, etc) mais je n'ai aucune idée de comment interagir avec un jeu par exemple

Et j'aimerais vraiment passer ce pas pour rendre mes connaissance utile et approfondir le reste. Du coup je me suis dit que j'allais commencer sur quelque chose qui me ferait vraiment plaisir; le développement d'un bot "simple" sur Dofus.

J'ai beaucoup cherché sur le forum (et d'autres site). Mais j'ai à chaque fois trouvé des éléments de réponses peu précis ou désordonnés (on parle de socket, protocole, ID,...). C'est pourquoi j'aurais aimé vous demander clairement et chronologiquement par où commencer ??

(Je suis en école de Technologie Informatique, finalité réseau. Donc côté TCP/IP, etc j'ai des bases ...)

Merci beaucoup (d'avoir tout lu premièrement et à ceux qui voudront bien m'éclairer) !!
 
Inscrit
16 Mars 2014
Messages
214
Reactions
30
#2
Bot = client (socket) qui interagit avec le serveur du jeu en question, une action dans le jeu = un packet (des données) envoyé au serveur reste plus qu'à analyser pour savoir comment et de quoi sont constitués les packets échanger et ensuite ton programme selon ce que tu veux lui faire t'aura qu'à lui envoyer le packet associé à l'action et ta-da ton programme va interagir avec le jeu

Ta de la chance sur dofus ta direct accès au source et au protocol (pour savoir comment interprété, écrire les packets), tu télécharge JPEXS et tu ouvre le DofusInvoker.swf avec

Tu peux commencer par aller sur dofus et t'amuser a sniffer les échanges client / serveur et tu peux aller lire ça pour t'aider comprendre les données https://cadernis.fr/index.php?threads/comprendre-le-protocole-de-dofus.115/ et lance toi
 
Inscrit
11 Aout 2017
Messages
2
Reactions
0
#3
Merci beaucoup pour ta réponse !! C'est beaucoup plus clair !
Càd que chaque objet, sort, action, va avoir une valeur binaire qu'il faudra trouver en sniffant pour ensuite l'utiliser dans le code ?
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
150
#4
Ce sont les paquets, qui ont des identificateurs fixes et qui correspondent à une action bien précise.
Quand tu envois un sort par exemple, le serveur va envoyer le paquet GameActionFightSpellCastMessage d'id 1010.
La valeur 1010 ne change jamais, après le contenu diffère selon le sort que tu envois, mais pour répondre en partie à ta question, les ids des sorts sont aussi fixes, tout comme les objets.
 
Haut Bas