Salut a tous,
Voila, je suis dans la voie de la decompression des cartes D2P, et m'inspirant des sources de EUUBOT j'ai découvert que l'on utilisait un DeflateStream en #.NET. Après m'être renseigné, j'ai découvert qu'en AS3 il semble que Dofus compresse ses cartes avec l'algorithme deflate, de Zlib, mais sans inclure de header. Par ailleurs, EUUBOT supprime les 2 premieres bytes avant d'utiliser son DeflateStream.
J'ai donc utilisé ZLIB et son algorithme inverse inflate, puis j'ai tente ses autres algorithmes, en vain. Peut-être est-ce parceque je ne connais pas la taille de sortie (j'ai essaye de lire les 2 ou 4 premieres bytes en vain) ? J'en défini donc une très grande pour ne pas en manquer d'espace. Lorsque je fais le bilan, je n'ai aucune erreur de la part de Zlib (tous Z_OK), mais à chaque decompression, la sortie semble aléatoire, et n'ai jamais la meme (alors que j'initialise tout mon espace en 0 avant).
Quelqu'un sait-il comment je peux faire en c++, car je désespère....
Voila, je suis dans la voie de la decompression des cartes D2P, et m'inspirant des sources de EUUBOT j'ai découvert que l'on utilisait un DeflateStream en #.NET. Après m'être renseigné, j'ai découvert qu'en AS3 il semble que Dofus compresse ses cartes avec l'algorithme deflate, de Zlib, mais sans inclure de header. Par ailleurs, EUUBOT supprime les 2 premieres bytes avant d'utiliser son DeflateStream.
J'ai donc utilisé ZLIB et son algorithme inverse inflate, puis j'ai tente ses autres algorithmes, en vain. Peut-être est-ce parceque je ne connais pas la taille de sortie (j'ai essaye de lire les 2 ou 4 premieres bytes en vain) ? J'en défini donc une très grande pour ne pas en manquer d'espace. Lorsque je fais le bilan, je n'ai aucune erreur de la part de Zlib (tous Z_OK), mais à chaque decompression, la sortie semble aléatoire, et n'ai jamais la meme (alors que j'initialise tout mon espace en 0 avant).
Quelqu'un sait-il comment je peux faire en c++, car je désespère....