Bonjour à tous,
Je suis heureux de partager l'avancement d'un bot pour Dofus Retro. Le bot est développé en C# et repose sur l'utilisation de la bibliothèque user32.dll pour envoyer des évènements de clic et de clavier directement à la fenêtre du jeu Dofus (pour ne pas avoir a signe les packets). Après le reste est assez standard avec un hook sur le client pour recevoir les paquets et les interpréter (aucun paquet n'est forgé).
Dernière up: je partage les sources (pas la dernière version) : https://github.com/Azzary/NebulaR-Bot
Fonctionnalités actuelles :
Actuellement, le bot est récupère la plus pars des informations la connexion au jeu, les données de la carte, les détails du personnage et les informations relatives aux combats.
Scripting :
La partie script est actuellement en Lua. À l'avenir, j'aimerais également migrer d'autres parties du bot vers Lua pour pouvoir le personnaliser un maximum (En premier les IA). Le système d'IA est également en Lua. La seule chose qui reste vraiment à faire est de pouvoir lancer un sort en utilisant directement son nom, au lieu de devoir spécifier la touche correspondante. J'ai également ajouté une fonction pour créer des gestionnaires de paquets directement dans le script en Lua.
exemple:
Récolte :
Le bot mache déjà vraiment bien pour les Récoltes , il ne reste que quelques ajustements mineurs à effectuer pour peaufiner un peu tout ca (bien cliquer les la popup quand elle est dans un coins par exemple).
Combat :
En ce qui concerne les combats, le bot est fonctionnel. mais je travaille actuellement sur son amélioration. Il reste quelques petits problèmes avec les sorts qui ne se lancent pas correctement, mais ca avance.
N'hésitez pas à me contacter si vous avez des questions ou des retours (discord: tedythebear).
Je suis heureux de partager l'avancement d'un bot pour Dofus Retro. Le bot est développé en C# et repose sur l'utilisation de la bibliothèque user32.dll pour envoyer des évènements de clic et de clavier directement à la fenêtre du jeu Dofus (pour ne pas avoir a signe les packets). Après le reste est assez standard avec un hook sur le client pour recevoir les paquets et les interpréter (aucun paquet n'est forgé).
Dernière up: je partage les sources (pas la dernière version) : https://github.com/Azzary/NebulaR-Bot
Fonctionnalités actuelles :
Actuellement, le bot est récupère la plus pars des informations la connexion au jeu, les données de la carte, les détails du personnage et les informations relatives aux combats.
Scripting :
La partie script est actuellement en Lua. À l'avenir, j'aimerais également migrer d'autres parties du bot vers Lua pour pouvoir le personnaliser un maximum (En premier les IA). Le système d'IA est également en Lua. La seule chose qui reste vraiment à faire est de pouvoir lancer un sort en utilisant directement son nom, au lieu de devoir spécifier la touche correspondante. J'ai également ajouté une fonction pour créer des gestionnaires de paquets directement dans le script en Lua.
exemple:
Script:
function start()
PacketHandler:Add("GA0;1;" .. tostring(Character.ID), "PrintHello")
end
function PrintHello(packet)
Wait(100)
WindowManager:Click(100, 545)
WindowManager:Press(H)
WindowManager:Press(E)
WindowManager:Press(L)
WindowManager:Press(L)
WindowManager:Press(O)
Wait(100)
WindowManager:PressEnter()
end
function move()
return {
{ map = "10317" , changeMap = "top" },
{ map = "10314" , changeMap = "top" }
,
{ map = "10309" , changeMap = "left" },
{ map = "10310" , changeMap = "bot" },
{ map = "10313" , changeMap = "bot" },
{ map = "10332", changeMap = "right" },
{ map = "10319", changeMap = "bot" },
{ map = "10334", changeMap = "left" },
{ map = "10333", changeMap = "top" },
}
end
IA:
function Fight()
if botInstance:GetTurn() % 5 == 0 or botInstance:GetTurn() == 1 then
botInstance:LauchSpell(NUM_3, PlayerFighter.Cell)
end
local closerEnemy = botInstance:GetClosestEnemy()
local closerEnemyDistance = botInstance:Move(closerEnemy)
if PlayerFighter.ActionPoints >= 4 and closerEnemyDistance <= 1 then
botInstance:LauchSpell(NUM_2, closerEnemy.Cell)
end
botInstance:EndTurn();
end
Le bot mache déjà vraiment bien pour les Récoltes , il ne reste que quelques ajustements mineurs à effectuer pour peaufiner un peu tout ca (bien cliquer les la popup quand elle est dans un coins par exemple).
Combat :
En ce qui concerne les combats, le bot est fonctionnel. mais je travaille actuellement sur son amélioration. Il reste quelques petits problèmes avec les sorts qui ne se lancent pas correctement, mais ca avance.
N'hésitez pas à me contacter si vous avez des questions ou des retours (discord: tedythebear).
Dernière édition:
- 6
- Show all