Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- struct Point2
- {
- float x; // 0x000
- float y; // 0x004
- };
- // sizeof = 0xC
- struct Point3
- {
- float x; // 0x000
- float y; // 0x004
- float z; // 0x008
- };
- // sizeof = 0x14
- struct Point4
- {
- Point3 pos; // 0x000
- uint32_t unk; // 0x00C
- float r; // 0x010
- };
- struct AABB
- {
- Point3 min;
- Point3 max;
- };
- // sizeof = 0x40 | 0x60
- struct WoWAura
- {
- size_t pad_000[5]; // 0x000 0x000
- size_t NbVariableEffects; // 0x014 0x028
- size_t VariableEffectsPtr; // 0x018 0x030
- uint32_t Unk12; // 0x01C 0x038
- uint64_t creatorGUID; // 0x020 0x040
- int AuraId; // 0x028 0x048
- uint8_t Unk28; // 0x02C 0x04C
- uint8_t StackCount; // 0x02D 0x04D
- uint16_t Level; // 0x02E 0x04E
- int Duration; // 0x030 0x050
- int EndTime; // 0x034 0x054
- uint32_t varEffect[2]; // 0x038 0x058
- };
- // sizeof = 0x404 | 0x608
- struct AuraStorage
- {
- union
- {
- WoWAura auraTable[16]; // 0xE38 0x1790
- struct
- {
- int aura_count2; // 0xE38 0x1790
- WoWAura* pAuraTbl; // 0xE3C 0x1794
- } auraEx;
- };
- int aura_count1; // 0x1238 0x1D90
- };
- // sizeof = 0x30 | 0x40
- class CPassenger
- {
- public:
- size_t pad_000[2]; // 0x000 0x000
- uint64_t TransportGuid; // 0x008 0x010
- Point4 Position; // 0x010 0x018
- float Pitch; // 0x024 0x02C
- uint64_t* pGuid; // 0x028 0x030
- void *GroundNormal; // 0x02C 0x038
- };
- // sizeof = 0x150 | 0x188
- class CMovement : public CPassenger
- {
- public:
- size_t pad_030[2]; // 0x030 0x040
- uint32_t Flags; // 0x038 0x050
- uint16_t MovementFlags2; // 0x03C 0x054
- char SeatPosition; // 0x03E 0x056
- char gap_4b[1]; // 0x03F 0x057
- Point3 AnchorPosition; // 0x040 0x058
- float AnchorFacing; // 0x04C 0x064
- float AnchorPitch; // 0x050 0x068
- int MoveStartTime; // 0x054 0x06C
- Point3 Direction3d; // 0x058 0x070
- Point2 Direction2d; // 0x064 0x07C
- float AnchorCosPitch; // 0x06C 0x084
- float AnchorSinPitch; // 0x070 0x088
- int TimeFallen; // 0x074 0x08C
- float FallStartElev; // 0x078 0x090
- float field_74; // 0x07C 0x094
- float CurrentSpeed; // 0x080 0x098
- float WalkSpeed; // 0x084 0x09C
- float RunSpeed; // 0x088 0x0A0
- float RunBackSpeed; // 0x08C 0x0A4
- float SwimSpeed; // 0x090 0x0A8
- float SwimBackSpeed; // 0x094 0x0AC
- float FlightSpeed; // 0x098 0x0B0
- float FlightBackSpeed; // 0x09C 0x0B4
- float TurnRate; // 0x0A0 0x0B8
- float PitchRate; // 0x0A4 0x0BC
- float Elev_field_A0; // 0x0A8 0x0C0
- float JumpVelocity; // 0x0AC 0x0C4
- void* Spline; // 0x0B0 0x0C8
- size_t UpdateTimeMs_field; // 0x0B4 0x0D0
- int LastEventTime; // 0x0B8 0x0D8
- float field_B4[4]; // 0x0BC 0x0DC
- float radius; // 0x0CC 0x0EC
- float height; // 0x0D0 0x0F0
- Point3 PositionDiff; // 0x0D4 0x0F4
- int FacingDiff; // 0x0E0 0x100
- int PitchDiff; // 0x0E4 0x104
- uint32_t field_E8[16]; // 0x0E8 0x108
- int field_128; // 0x128 0x148
- int MSTime_field_12C; // 0x12C 0x14C
- int TimeSinceLastEvent; // 0x130 0x150
- int MSTime_field_134; // 0x134 0x154
- size_t field_138; // 0x138 0x158
- size_t field_13C; // 0x13C 0x160
- void *MoveEvetList_Head; // 0x140 0x168
- int field_144; // 0x144 0x170
- class CGUnit_C *pUnit; // 0x148 0x178
- size_t padding; // 0x14C 0x180
- };
- // sizeof = 0xC |0x18
- class dummy0
- {
- public:
- uint32_t unk0; // 0x000 0x000
- void* unk1[2]; // 0x004 0x008
- };
- // sizeof = 0x14 | 0x28
- class CGBaseObject_C
- {
- public:
- size_t **vtable; // 0x000 0x000
- ObjectFields *pObjFields; // 0x004 0x008
- void *unk_008; // 0x008 0x010
- WowObjType type; // 0x00C 0x018
- size_t unk_010; // 0x010 0x020
- };
- // sizeof = 0xD4
- class CGObject_C : public CGBaseObject_C
- {
- public:
- size_t unk_014[3]; // 0x014 0x028
- CGObject_C *pNext; // 0x020 0x040
- uint64_t guid; // 0x028 0x048
- size_t unk_040[3]; // 0x030 0x050
- dummy0 unk_03C[8]; // 0x03C 0x068
- uint32_t unk_09C; // 0x09C 0x128
- uint8_t unk_0A0; // 0x0A0 0x12C
- size_t unk_0A4[4]; // 0x0A4 0x130
- uint32_t unk_0B4; // 0x0B4 0x150
- uint32_t unk_0B8; // 0x0B8 0x154
- float unk_0BC; // 0x0BC 0x158
- void *pObjDisplay; // 0x0C0 0x160
- uint8_t anim_state; // 0x0C4 0x168
- size_t unk_0C8[3]; // 0x0C8 0x170
- };
- // sizeof = 0x1520 | 0x2108
- class CGUnit_C : public CGObject_C
- {
- public:
- size_t **vtable_unit_disp; // 0x0D8 0x188
- UnitFields *pUnitFields; // 0x0DC 0x190
- void *pUnk1; // 0x0E0 0x198
- CMovement* pMov; // 0x0E4 0x1A0
- dummy0 pad_0E8[154]; // 0x0E8 0x1A8
- CMovement Mov; // 0x820 0x1018
- uint32_t unk_970[4]; // 0x970 0x11A0
- int minus_one; // 0x980 0x11B0
- int unk_984; // 0x984 0x11B4
- size_t pad_988[70]; // 0x988 0x11B8
- uint32_t pad_AD0[113]; // 0xAA0 0x13E8
- uint8_t canInterruptCast; // 0xC64 0x15AC
- uint8_t pad_C65[3]; // 0xC65 0x15AE
- uint32_t pad_C68[18]; // 0xC68 0x15B0
- int castingID; // 0xCB0 0x15F8
- uint32_t pad_CB4; // 0xCB4 0x15FC
- uint64_t cast_target; // 0xCB8 0x1600
- int cast_start_time; // 0xCC0 0x1608
- int cast_end_time; // 0xCC4 0x160C
- int channelID; // 0xCC8 0x1610
- int channel_start_time; // 0xCCC 0x1614
- int channel_end_time; // 0xCD0 0x1618
- int unk_CD4; // 0xCD4 0x161C
- size_t pad_CD4[4]; // 0xCD8 0x1620
- uint32_t pad_CDC[84]; // 0xCE4 0x1640
- AuraStorage aura_storage; // 0xE38 0x1790
- size_t pad_1240[36]; // 0x1240 0x1D98
- uint32_t pad_12D0[148]; // 0x12D0 0x1EB8
- };
- class CGPlayer_C : public CGUnit_C
- {
- public:
- size_t **vtable_p; // 0x1520 0x2108
- PlayerFields *pPlayerFields; // 0x1524 0x2110
- };
- class CGGameObject_C : public CGObject_C
- {
- public:
- GameObjectFields *pGOFields;// 0x0D8 0x188
- size_t unk0; // 0x0DC 0x190
- CPassenger passenger; // 0x0E0 0x198
- dummy0 pad_110[13]; // 0x110 0x1D8
- size_t pad_1E8[4]; // 0x1AC 0x310
- float one0; // 0x1BC 0x330
- uint32_t unk_1C0[4]; // 0x1C0 0x334
- float one1; // 0x1D0 0x344
- uint32_t unk_1D4[4]; // 0x1D4 0x348
- float one2; // 0x1E4 0x358
- uint32_t unk_1E8; // 0x1E8 0x35C
- Point3 pos; // 0x1EC 0x360
- float one3; // 0x1F8 0x36C
- AABB bbox; // 0x1FC 0x370
- uint32_t unk4; // 0x214 0x388
- int unk5; // 0x218 0x38C GameObjectFields::Bytes::unk0
- uint16_t collisionData; // 0x21C 0x390
- uint8_t unk6; // 0x21E 0x392
- };
- class CGDynamicObject_C : public CGObject_C
- {
- public:
- DynamicObjectFields *pDynObjFields; // 0x0D8
- };
- class CGAreaTrigger_C : public CGObject_C
- {
- public:
- AreaTriggerFields *pAreaTrigFields; // 0x0D8 0x188
- size_t unk_0DC; // 0x0DC 0x190
- CPassenger passenger; // 0x0E0 0x198
- dummy0 pad_110[6]; // 0x110 0x1D8
- uint32_t pad_158[36]; // 0x158 0x268
- size_t pad_1E8[20]; // 0x1E8 0x2F8
- float radius[2]; // 0x238 0x398
- };
- // sizeof = 0x8 | 0x10
- struct TSLink
- {
- TSLink* m_prevlink; // 0x000 0x000
- CGObject_C* m_next; // 0x004 0x008
- };
- // sizeof = 0xC | 0x18
- struct TSList
- {
- int m_linkoffset; // 0x000 0x000
- TSLink m_terminator; // 0x004 0x008
- };
- // sizeof = 0xC | 0x18
- struct TSExplicitList : public TSList
- {
- };
- //sizeof = 0x10 | 0x18
- struct TSBaseArray
- {
- size_t** vtable; // 0x000 0x000
- uint32_t m_alloc; // 0x004 0x008
- uint32_t m_count; // 0x008 0x00C
- TSExplicitList* m_data; // 0x00C 0x010
- };
- //sizeof = 0x10 | 0x18
- struct TSFixedArray : public TSBaseArray
- {
- };
- //sizeof = 0x14 | 0x20
- struct TSGrowableArray : public TSFixedArray
- {
- uint32_t m_chunk; // 0x000
- };
- //sizeof = 0x2C | 0x50
- struct TSHashTable
- {
- size_t** vtable; // 0x000 0x000
- TSExplicitList m_fulllist; // 0x004 0x008
- int m_fullnessIndicator; // 0x010 0x020
- TSGrowableArray m_slotlistarray; // 0x014 0x028
- int m_slotmask; // 0x028 0x048
- };
- class CObjMgr
- {
- public:
- TSHashTable VisibleObjects; // 0x000 0x000
- TSHashTable LazyCleanupObjects; // 0x02C 0x050
- TSExplicitList Links[11]; // 0x058 0x0A0
- #if _M_IX86
- int align8; // 0x0DC 8-byte boundary alignment
- #endif
- uint64_t ActivePlayer; // 0x0E0 0x1A8
- int PlayerType; // 0x0E8 0x1B0
- int MapId; // 0x0EC 0x1B4
- void* ClientConnection; // 0x0F0 0x1B8
- void* MovementGlobals; // 0x0F4 0x1C0
- };
Advertisement
Add Comment
Please, Sign In to add comment