2.0 Où sont stockés les chaînes de caractères ?

Inscrit
1 Février 2017
Messages
9
J'aime
1
#1
Bonjour,

Je travail sur un petit projet relié à l'écoute des packets Dofus2, et je me demandais comment le client peut interpréter les IDs reçues, et en afficher des chaînes de caractères et des images? Est-ce qu'il y a un fichier contenant ces données, ou je me suis planté, et ces données sont envoyées en clairs via les paquets ?

Ex: L'ID 14076 est reçu par le client; il affiche la Coiffe du Comte Harebourg et son image. Ou encore, le jeu nous donne un ID d'un étape d'une chasse au trésor, et le client nous donne le nom de cet indice.

Merci d'avance!
 
Inscrit
10 Juillet 2018
Messages
19
J'aime
15
#2
Hello, le client contient toutes les informations nécessaires à son fonctionnement : Que ce soit les formules des dégâts, boucliers, tacle qui sont utilisés pour la prévisualisation en combat par exemple, ou encore les informations que tu cites comme les textes, les données utiles des items... Qui se situent dans les fichiers du jeu. Ces fichiers ont un format particulier mais à l'aide d'outils et de compréhension de leurs structure, on peux les lire et même les modifier.

Textes : Dofus\data\i18n\
Données : Dofus\data\common\
 
Dernière édition:
Inscrit
1 Février 2017
Messages
9
J'aime
1
#3
Je vois!

J'ai réussi "décompiler" les fichiers dans Dofus\data\i18n\, mais ceux dans Dofus\data\common\ me semble encryptés, ou stockés différemment (bref, les .d2i s'ouvrent, pas les .d2o)

Avons-nous de ces outils sur ce forum, spécialement pour les .d2o ? Ou avons-nous des indices de comment les décompiler ?

Merci :)
 
Inscrit
12 Avril 2014
Messages
12
J'aime
1
#4
J'ai trouvé ça sur GitHub, je sais pas ce que ça vaut.
A l'époque j'avais un script JS qui faisait ça en fonctionnant sur le même principe.
Je l'ai encore mais flemme d'upload d'autant que y a pas mal de sources sur le net.

EDIT : Bon j'ai cloné le repo, ça compile pas. Mais suffit de remettre quelques références (DLL Newtonsoft & cie).
 
Dernière édition:
Inscrit
1 Février 2017
Messages
9
J'aime
1
#5
J'ai réussis à le compiler avec la dernière version de la DLL Newtonsoft pour le JSON (la 12 en ce moment), et mon output fait du sens! Je vais travailler davantage là-dessus demain, je vous tient au courant s'il y a quoi que ce soit!

Merci! :D
 
Inscrit
12 Avril 2014
Messages
12
J'aime
1
#6
Après si tu voulais plus un exemple de code pour lire directement les informations depuis les .d2o y a ça.

Le truc que j'ai linké juste avant c'est un unpacker qui convertit en .json mais c'est tordu. Faut remettre la référence à la DLL Newtonsoft, passer le projet dans la même version du framework que la DLL (4.5 pour ma part), changer le chemin d'accès args = new[] { @"C:\Users\{user}\AppData\Local\Ankama\Dofus\app\data\common\{file}.d2o" }; ligne 13 du Program.cs et créer le dossier output dans bin\Debug.

Mais sinon ça marche :p
 
Dernière édition:
Inscrit
10 Juillet 2018
Messages
19
J'aime
15
#7
Les classes qui permettent la lecture des fichiers dans DofusInvoker >

Textes : I18nFileAccessor.as
Données : GameDataFileAccessor.as
 
Haut Bas