AKM Project : Tools for Dofus 2.x development
Je ne suis pas très actif sur Cadernis, mais ce n'est pas pour autant que je ne continue pas sur Dofus.
J'ai débuté un projet qui regroupe plusieurs outils dédié au développement sur Dofus ainsi que de PoC.
Le projet est en cours, le code n'est pas parfait, mais les outils disponibles sont fonctionnels.
Le code est en C++ et j'utilise la librairie boost ainsi que la STL avec la norme C++11, le projet peut donc être compiler avec les dernière versions de gcc, clang et également VC12.
Tous ses outils sont open source sous licence GPLv3 à cette adresse : https://github.com/LuaxY/AKM/
AKM Core :
AKM Core est une librairie (statique) qui regroupe les codes communs a tous les projets comme le binary reader/write, les classes mère serveur, client et session, un loggeur et quelques autres fonctions/classes utile.
AKM Master Sound :
AKM Master Sound est un PoC permettant d'obtenir le son de Dofus en jeu sans passer par l'uplauncher officiel.
3 sockets en écoute sont nécessaires :
- Informations : Launcher <-> Client
- Audio : Launcher <-> Client
- Audio : Launcher <-> Reg (programme jouant le son de Dofus)
Le launcher fait office de pont entre le client et le reg, il transmet juste les données sans les analyser.
Vidéo d'exemple : https://www.youtube.com/watch?v=ouq0cpudVgw
AKM Proxy :
AKM Proxy est un proxy MTITM entre le client et le serveur officiel permettant d'altérer les données.
La première fonctionnalité codé est le GotoAdmin qui permet de passer le hasRights à true pour accéder aux commandes admin du client en jeu.
No.Ankama.dll :
Pour l'occasion j'ai mis à jour la lib de hook No.Ankama.dll permettant de se connecter un serveur privé ou proxy MITM, j'ai ajouté le support des adresses IP des serveurs d'identification de la beta.
https://github.com/LuaxY/No.Ankama/releases/tag/1.1
Config Développeur :
Voici maintenant une extension de configuration permettant l'activation de module de développement (sans être admin)
Fichier a placer au même endroit que le fichier config.xml :
config-custom.xml
la ligne <entry key="boo">true</entry> permet d'activer la console de debug en jeu
DofusUI :
DofusUI est un utilitaire d'Ankama pour modifier les modules du jeu (Dofus/app/ui) (les fichier .dm) (screen)
http://vodka.voidmx.net/Dofus/DofusUI-2.18.0.air
Ankama_Admin :
Ankama_Admin est le module pour les administrateur, gérant principalement le menuadmin.xml (que je n'est malheureusement pas :() (à placer dans Dofus/app/ui)
http://vodka.voidmx.net/Dofus/Ankama_Admin.rar
SDK lua :
Le SDK lua permet de créer des scripts en lua depuis le jeu permettant d'automatiser certaines tâches (beaucoup de possibilités)
L'archive qui suit contient la documentation (screen) ainsi que quelques images/tableaux utile.
Les scripts lua sont chargablent depuis la console ou depuis l'interface activé depuis le fichier de config développeur.
http://vodka.voidmx.net/Dofus/sdk-lua.zip
Uplauncher :
Dernier petit tricks, en ajoutant la variable d'environnement "AK_LOG_CONSOLE" (mettez "1" comme valeur par exemple) cela active la console de debug du nouvel uplauncher (screen).
Pour terminer voilà un petit screen de à quoi ressemble le jeu avec toutes les informations de debug : screen