Aura

Inscrit
25 Juin 2016
Messages
27
Reactions
2
#1
Bonsoir j'écris se sujet pour vous demandez de l'aide en effet je cherche ou se trouve els aura dans le client dofus 2.0 est-ce que quelqu'un saurais ou elles sont ? merci a vous
 

BlueDream

Administrateur
Membre du personnel
Inscrit
8 Decembre 2012
Messages
2 010
Reactions
149
#2
Bonjour et Bienvenue Ydainna,

Tu cherches les auras sous forme de fichier image ?
Cela se trouve très certainement dans les D2P.

EDIT:
Voila je t'ai retrouvé cette classe ImageManager.cs provenant du projet Rebirth 2.0. (http://cadernis.fr/index.php?threads/rebirth.1151/#post-13275 )
Elle permet de lire les fichier D2P et d'en extraire une image.

C#:
using System;
using System.Collections.Generic;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;

namespace RebirthAPI.Data.D2p
{
  public class ImageManager
  {
  private static FileStream mystream { get; set; }
  private static object mDofusPath { get; set; }

  public static Dictionary<string, int[]> DictionnaryItemGFX = new Dictionary<string, int[]>();
  public static void Init(string DofusPath)
  {
  mDofusPath = DofusPath;
  foreach (string File in Directory.GetFiles(mDofusPath + "\\app\\content\\gfx\\items\\"))
  {
  if (File.Contains("bitmap"))
  {
  mystream = new FileStream(File, FileMode.Open, FileAccess.Read);
  byte num = Convert.ToByte(mystream.ReadByte() + mystream.ReadByte());
  if (num == 3)
  {
  mystream.Position = mystream.Length - 0x18L;
  int num2 = Convert.ToInt32(readUInt());
  readUInt();
  int num3 = Convert.ToInt32(readUInt());
  int num4 = Convert.ToInt32(readUInt());
  int num1 = Convert.ToInt32(readUInt());
  int num10 = Convert.ToInt32(readUInt());
  mystream.Position = num3;
  int num5 = num4;
  for (int i = 1; i <= num5; i++)
  {
  string key = readString();
  int num7 = (int)(readUInt() + num2);
  int num8 = (int)(readUInt());
  DictionnaryItemGFX.Add(key, new int[] {
                 num7,
                 num8
               });
  }
  mystream.Close();
  }
  }
  }
  }

  private static short readShort()
  {
  return BitConverter.ToInt16(ImageManager._InverseArray(ImageManager.readBytes(2)), 0);
  }

  private static string readString()
  {
  int lenght = ImageManager.readShort();
  byte[] bytes = ImageManager.readBytes(lenght);
  return Encoding.UTF8.GetString(bytes);
  }

  private static byte[] readBytes(int lenght)
  {
  byte[] destinationArray = new byte[lenght];
  for (int i = 0; i <= lenght - 1; i++)
  {
  destinationArray[i] = (byte)mystream.ReadByte();
  }
  return destinationArray;
  }

  private static UInt32 readUInt()
  {
  return BitConverter.ToUInt32(ImageManager._InverseArray(ImageManager.readBytes(4)), 0);
  }

  private static byte[] _InverseArray(byte[] source)
  {
  byte[] buffer = new byte[source.Length];
  int i = 0;
  for (i = 0; i <= source.Length - 1; i++)
  {
  buffer[i] = source[((source.Length - 1) - i)];
  }
  return buffer;
  }

  public static Image GetImage(int IconId)
  {
  for (int i = 0; i <= 1; i++)
  {
  try
  {
  Image GFXItem = null;
  mystream = new FileStream(mDofusPath + "\\app\\content\\gfx\\items\\bitmap" + i + ".d2p", FileMode.Open, FileAccess.Read);
  int[] numArray = DictionnaryItemGFX[IconId.ToString() + ".png"];
  mystream.Position = numArray[0];
  byte[] buffer = readBytes(numArray[1]);
  MemoryStream stream = new MemoryStream(buffer, 0, buffer.Length);
  mystream.Close();
  GFXItem = Image.FromStream(stream);
  return GFXItem;
  }
  catch
  {
  }
  }
  return null;
  }
  }
}
 
Dernière édition:
Inscrit
25 Juin 2016
Messages
27
Reactions
2
#3
merci
edit; au risque d'être chiant quelqu'un pourrais me dire comment ça fonctionne / ou me le compiler ? car je touche pas vraiment a dofus 2 ^^ je suis axer sur la 1.29 (client & map) du coup j'y connait rien a se 'bout de code''
merci ^^
 
Dernière édition:

neross

Membre Actif
Inscrit
20 Decembre 2014
Messages
150
Reactions
0
#5
Hey alex, tu viens de lui donner ton ancienne version que j'ai améliorer et corriger. (regarde coter shadowEmu tu aura la version que j'ai fait)

Du coup les auras tu en a dans le fichier : bones0_2.d2p + bones0_6.d2p + bones0_8.d2p + bones0_9.d2p + bones1_6.d2p
Voila maintenant te reste a tranformer les d2p en swl et les swl en swf. :)
 
Inscrit
25 Juin 2016
Messages
27
Reactions
2
#6
Niquel ! merci neross
 
Inscrit
6 Avril 2016
Messages
85
Reactions
40
#7
BonesId : 169 > Aura de Puissance
BonesId : 170 > Aura Vampyrique
BonesId : 1509 > Aura bleuté de .. ?
 
Inscrit
25 Juin 2016
Messages
27
Reactions
2
#8
l'aura bleu c'est celle de wakfu of island (xbox) quand ont équipe un ou tout les item d'une pano
 
Inscrit
10 Mai 2015
Messages
357
Reactions
55
#9
Avec un peu de chance tu l'aura. :)

Excusez moi mais c'était tentant.
 
Inscrit
25 Juin 2016
Messages
27
Reactions
2
#10
(désoler du up) mais mon sujet est résolue
 
Haut Bas