Tip
Bom galera, eu nunca montei uma object struct então seguir o tuto do marin e fui analisando com outras, enfim consegui montar minha object struct, veja bem eu consegui montar e não fazer funfa kkkkkkk', ai vim pedi uma ajuda pros proprios imperyanos viciados que sei que vão me ajudar:


NOTA

#pragma pack(push, 1)

struct ITEMSTRUCT
{
/*<thisrel this+0x0>*/ /*|0x4|*/ unsigned long m_Number;
/*<thisrel this+0x4>*/ /*|0x1|*/ char m_Serial;
/*<thisrel this+0x4>*/ /*|0x2|*/ unsigned short m_Type;
/*<thisrel this+0x6>*/ /*|0x2|*/ unsigned short m_Level;
/*<thisrel this+0x9>*/ /*|0x1|*/ unsigned char m_Part;
/*<thisrel this+0xA>*/ /*|0x1|*/ unsigned char m_Class;
/*<thisrel this+0xB>*/ /*|0x1|*/ bool m_TwoHand;
/*<thisrel this+0xC>*/ /*|0x1|*/ unsigned char m_AttackSpeed;
/*<thisrel this+0xD>*/ /*|0x1|*/ unsigned char m_WalkSpeed;
/*<thisrel this+0xE>*/ /*|0x2|*/ unsigned short m_DamageMin;
/*<thisrel this+0x10>*/ /*|0x2|*/ unsigned short m_DamagaMax;
/*<thisrel this+0x12>*/ /*|0x1|*/ unsigned char m_SuccessfulBlocking;
/*<thisrel this+0x13>*/ /*|0x2|*/ unsigned short m_Defense;
/*<thisrel this+0x15>*/ /*|0x2|*/ unsigned short m_MagicDefense;
/*<thisrel this+0x17>*/ /*|0x1|*/ unsigned char m_Speed;
/*<thisrel this+0x18>*/ /*|0x6C|*/ unsigned char m_Filler0x18[0x6C];
};

struct OBJECTSTRUCT
{
/*<thisrel this+0x0>*/ /*|0x4|*/ int Index;
/*<thisrel this+0x4>*/ /*|0x4|*/ int Connected;
/*<thisrel this+0x8>*/ /*|0x24|*/ unsigned char m_Filler0x8[0x24];
/*<thisrel this+0x2C>*/ /*|0x1|*/ unsigned char Magumsa;
/*<thisrel this+0x2D>*/ /*|0x30|*/ unsigned char m_Filler0x2D[0x30];
/*<thisrel this+0x5D>*/ /*|0x1|*/ unsigned char Live;
/*<thisrel this+0x5E>*/ /*|0x1|*/ unsigned char Type;
/*<thisrel this+0x5F>*/ /*|0xB|*/ char AccountID[0xB];
/*<thisrel this+0x6A>*/ /*|0xB|*/ char Name[0xB];
/*<thisrel this+0x75>*/ /*|0xE|*/ unsigned char m_Filler0x75[0xE];
/*<thisrel this+0x83>*/ /*|0x1|*/ unsigned char Class;
/*<thisrel this+0x84>*/ /*|0x1|*/ unsigned char DbClass;
/*<thisrel this+0x85>*/ /*|0x1|*/ unsigned char Skin;
/*<thisrel this+0x86>*/ /*|0x2|*/ unsigned short Level;
/*<thisrel this+0x88>*/ /*|0x4|*/ unsigned int LevelUpPoint;
/*<thisrel this+0x8C>*/ /*|0x4|*/ unsigned long Experience;
/*<thisrel this+0x90>*/ /*|0x4|*/ unsigned long ExperienceMax;
/*<thisrel this+0x94>*/ /*|0x4|*/ unsigned int Money;
/*<thisrel this+0x98>*/ /*|0x2|*/ short Strength;
/*<thisrel this+0x9A>*/ /*|0x2|*/ short Dexterity;
/*<thisrel this+0x9C>*/ /*|0x2|*/ short Vitality;
/*<thisrel this+0x9E>*/ /*|0x2|*/ short Energy;
/*<thisrel this+0xA0>*/ /*|0x4|*/ float Life;
/*<thisrel this+0xA4>*/ /*|0x4|*/ float LifeMax;
/*<thisrel this+0xA8>*/ /*|0x4|*/ int AddLife;
/*<thisrel this+0xAC>*/ /*|0x4|*/ float FillLife;
/*<thisrel this+0xB0>*/ /*|0x4|*/ float FillLifeMax;
/*<thisrel this+0xB4>*/ /*|0x18|*/ unsigned char m_Filler0xB4[0x18];
/*<thisrel this+0xCC>*/ /*|0x1|*/ char PkCount;
/*<thisrel this+0xCD>*/ /*|0x1|*/ char PkLevel;
/*<thisrel this+0xCE>*/ /*|0x4|*/ int PkTime;
/*<thisrel this+0xD2>*/ /*|0x2|*/ unsigned char m_Filler0xD2[0x2];
/*<thisrel this+0xD4>*/ /*|0x2|*/ unsigned short X;
/*<thisrel this+0xD6>*/ /*|0x2|*/ unsigned short Y;
/*<thisrel this+0xD8>*/ /*|0x1|*/ unsigned char Dir;
/*<thisrel this+0xD9>*/ /*|0x1|*/ unsigned char MapNumber;
/*<thisrel this+0xDA>*/ /*|0x1AA|*/ unsigned char m_Filler0xDA[0x1AA];
/*<thisrel this+0x284>*//*|0x2|*/ short ShopNumber;
/*<thisrel this+0x286>*//*|0x99E|*/ unsigned char m_Filler0x286[0x99E];
/*<thisrel this+0xC24>*//*|0x4|*/ ITEMSTRUCT* pInventory;
/*<thisrel this+0xC28>*//*|0x4|*/ unsigned char* pInventoryMap;
/*<thisrel this+0xC2C>*//*|0x4|*/ char* pInventoryCount;
/*<thisrel this+0xC30>*//*|0x1|*/ char pTransaction;
/*<thisrel this+0xC31>*//*|0x4|*/ ITEMSTRUCT* Inventory1;
/*<thisrel this+0xC35>*//*|0x4|*/ unsigned char* InventoryMap1;
/*<thisrel this+0xC39>*//*|0x1|*/ char InventoryCount1;
/*<thisrel this+0xC3A>*//*|0x4|*/ ITEMSTRUCT* Inventory2;
/*<thisrel this+0xC3E>*//*|0x4|*/ unsigned char* InventoryMap2;
/*<thisrel this+0xC42>*//*|0x1|*/ char InventoryCount2;
/*<thisrel this+0xC43>*//*|0x4|*/ ITEMSTRUCT* Trade;
/*<thisrel this+0xC47>*//*|0x4|*/ unsigned char TradeMap;
/*<thisrel this+0xC4B>*//*|0x4|*/ int TradeMoney;
/*<thisrel this+0xC4F>*//*|0x1|*/ unsigned char TradeOk;
/*<thisrel this+0xC50>*//*|0xBC|*/ unsigned char m_Filler0xC50[0xBC];
};

#pragma pack(pop)


Aviso

O valor da object struct da 97d é 0x0D0C, a minha está dando 0x0D1C, mais não sei onde eu errei pois meus calculos parecem esta corretos:
"/*<thisrel this+0xC50>*//*|0xBC|*/ unsigned char m_Filler0xC50[0xBC];" == 0x0D0C.