[Classic] 1.13.2.32089 menu

User Tag List

Page 1 of 2 12 LastLast
Results 1 to 15 of 25
  1. #1
    SatyPardus's Avatar Active Member
    Reputation
    15
    Join Date
    Nov 2014
    Posts
    24
    Thanks G/R
    15/7
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    [Classic] 1.13.2.32089

    (I never done a post like this, so I hope I am not breaking any rules by posting updated values for a new game build)

    ObjMgrPtr: Wow.exe + 0x232DED8
    LocalPlayerGUID: Wow.exe + 0x26243D0
    LocalPlayerName: Wow.exe + 0x26243E8
    LastTargetGUID: Wow.exe + 0x218B8C0
    CurrentTargetGUID: Wow.exe + 0x218B8B0
    MouseoverGUID: Wow.exe + 0x2545878


    Offsets from ndrax still working Link here
    Descriptors from charles420 still working Link here

    Code:
    (Thanks to ejt for updated values)
    enum class ObjectTypeId : uint8_t
    {
    	Object = 0,
    	Item = 1,
    	Container = 2,
    	AzeriteEmpoweredItem = 3,
    	AzeriteItem = 4,
    	Unit = 5,
    	Player = 6,
    	ActivePlayer = 7,
    	GameObject = 8,
    	Dynamic = 9,
    	Corpse = 10,
    	AreaTrigger = 11,
    	Scene = 12,
    	Conversation = 13,
    	AiGroup = 14,
    	Scenario = 15,
    	Loot = 16,
    	Invalid = 17
    };
    Last edited by SatyPardus; 10-08-2019 at 08:11 AM. Reason: Wrong pointer for Target, fixed + last target added

    [Classic] 1.13.2.32089
  2. #2
    redcatH's Avatar Member
    Reputation
    2
    Join Date
    Sep 2012
    Posts
    29
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    wow! thks good guys

  3. #3
    ejt's Avatar Contributor
    Reputation
    209
    Join Date
    Mar 2008
    Posts
    166
    Thanks G/R
    3/111
    Trade Feedback
    0 (0%)
    Mentioned
    4 Post(s)
    Tagged
    0 Thread(s)
    Your enum is incorrect, both the name and the values. What you posted are the object type id's, not the type flags.

    Code:
    enum class ObjectTypeFlag
    {
    	Object = 0x1,
    	Item = 0x3,
    	Container = 0x7,
    	AzeriteEmpoweredItem = 0xB,
    	AzeriteItem = 0x13,
    	Unit = 0x21,
    	Player = 0x61,
    	ActivePlayer = 0xE1,
    	Game = 0x101,
    	Dynamic = 0x201,
    	Corpse = 0x401,
    	AreaTrigger = 0x801,
    	Scene = 0x1001,
    	Conversation = 0x2001,
    	AiGroup = 0x4001,
    	Scenario = 0x8001,
    	Loot = 0x10001,
    	Invalid = 0x20000
    };
    There is the actual flag values for objects

    Code:
    enum class ObjectTypeId : uint8_t
    {
    	Object = 0,
    	Item = 1,
    	Container = 2,
    	AzeriteEmpoweredItem = 3,
    	AzeriteItem = 4,
    	Unit = 5,
    	Player = 6,
    	ActivePlayer = 7,
    	GameObject = 8,
    	Dynamic = 9,
    	Corpse = 10,
    	AreaTrigger = 11,
    	Scene = 12,
    	Conversation = 13,
    	AiGroup = 14,
    	Scenario = 15,
    	Loot = 16,
    	Invalid = 17
    };
    And that is an updated enum for id's, should work for both classic and retail

  4. #4
    SatyPardus's Avatar Active Member
    Reputation
    15
    Join Date
    Nov 2014
    Posts
    24
    Thanks G/R
    15/7
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Ah thanks! Yeah the enum was the only one that matched up with what results I got, so I assumed it's correct. Gonna update my values.

  5. #5
    mazer's Avatar Member Authenticator enabled
    Reputation
    11
    Join Date
    Sep 2007
    Posts
    69
    Thanks G/R
    7/5
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    found with Ian Manners / WoWOffsetDumper . GitLab, untested:

    Code:
    #pragma once
    
    // 1.13.2 .32089 
    enum class Offsets
    {
    	ActionBarFirstSlot = 0x0,
    	ActiveTerrainSpell = 0x2289C00,
    	CameraBase = 0x2546398,
    	ClickToMoveTrigger = 0x1CB4C58,
    	CooldownPtr = 0x2178818,
    	GameBuild = 0x1BFD92C,
    	GameReleaseDate = 0x1BFD938,
    	GameVersion = 0x1BFD924,
    	InGameFlag = 0x2545870,
    	IsLoadingOrConnecting = 0x221D770,
    	IsTexting = 0x0,
    	LastHardwareAction = 0x226F8D0,
    	LocalPlayerGUID = 0x26243D0,
    	MouseOverGUID = 0x2545878,
    	NameCacheBase = 0x0,
    	ObjectMgrPtr = 0x232DED8,
    	RuneReady = 0x0,
    	ZoneID = 0x0,
    };
    
    
    enum class FunctionOffsets
    {
    	CheckSpellAttribute = 0x18EDA40,
    	FrameScript_ExecuteBuffer = 0x321710,
    	FrameScript_GetLocalizedText = 0x0,
    	FrameScript_GetText = 0x31E010,
    	FrameTime_GetCurTimeMs = 0x2A8820,
    	Item_GetSpellIdById = 0x0,
    	Item_GetSpellIdByObj = 0x0,
    	PartyInfo_GetActiveParty = 0xDFA8C0,
    	Party_FindMember = 0xDFA630,
    	PetInfo_FindSpellById = 0xF08AB0,
    	PetInfo_SendPetAction = 0xF0A8B0,
    	Specialization_IsTalentSelectedById = 0xE4BC20,
    	SpellBook_CastSpell = 0xDC2810,
    	SpellBook_FindSlotBySpellId = 0xDC4B00,
    	SpellBook_FindSpellOverrideById = 0xDC6550,
    	SpellBook_GetOverridenSpell = 0xDC5230,
    	SpellDB_GetRow = 0x18EDAA0,
    	Spell_ClickSpell = 0x76AB90,
    	Spell_GetMinMaxRange = 0x76EA60,
    	Spell_GetSomeSpellInfo = 0x18EC090,
    	Spell_GetSpellCharges = 0x771070,
    	Spell_GetSpellCooldown = 0x7714B0,
    	Spell_GetSpellType = 0x74F630,
    	Spell_HandleTerrainClick = 0x777000,
    	Spell_IsInRange = 0x7804B0,
    	Spell_IsPlayerSpell = 0xDCC990,
    	Spell_IsSpellKnown = 0x8A2290,
    	Spell_IsStealable = 0xDC25B0,
    	Unit_CanAttack = 0x883080,
    	Unit_GetAuraByIndex = 0x75F2B0,
    	Unit_GetFacing = 0x894ED0,
    	Unit_GetPosition = 0x1680E0,
    	Unit_GetPower = 0x0,
    	Unit_GetPowerMax = 0x1122C70,
    	Unit_Interact = 0xD6F060,
    	Unit_IsFriendly = 0x8A1550,
    	WorldFrame_GetCurrent = 0x0,
    	WorldFrame_Intersect = 0x0,
    	WorldFrame_Intersect_classic = 0x114D210,
    };
    Code:
    #pragma once
    
    #include "Define.hpp"
    
    
    const uint32 DescriptorMulti = 0x4;
    const uint32 DescriptorOffset = 0x10;
    
    
    enum CGObjectData
    {
    	CGObjectData_Guid = 0, // size 4
    	CGObjectData_EntryID = 4, // size 1
    	CGObjectData_DynamicFlags = 5, // size 1
    	CGObjectData_Scale = 6, // size 1
    	CGObjectDataEnd = 7
    };
    
    
    enum CGItemData
    {
    	CGItemData_Owner = CGObjectDataEnd + 0, // size 4 flags: MIRROR_ALL
    	CGItemData_ContainedIn = CGObjectDataEnd + 4, // size 4 flags: MIRROR_ALL
    	CGItemData_Creator = CGObjectDataEnd + 8, // size 4 flags: MIRROR_ALL
    	CGItemData_GiftCreator = CGObjectDataEnd + 12, // size 4 flags: MIRROR_ALL
    	CGItemData_StackCount = CGObjectDataEnd + 16, // size 1 flags: MIRROR_OWNER
    	CGItemData_Expiration = CGObjectDataEnd + 17, // size 1 flags: MIRROR_OWNER
    	CGItemData_SpellCharges = CGObjectDataEnd + 18, // size 5 flags: MIRROR_OWNER
    	CGItemData_DynamicFlags = CGObjectDataEnd + 23, // size 1 flags: MIRROR_ALL
    	CGItemData_Enchantment = CGObjectDataEnd + 24, // size 39 flags: MIRROR_ALL
    	CGItemData_PropertySeed = CGObjectDataEnd + 63, // size 1 flags: MIRROR_ALL
    	CGItemData_RandomPropertiesID = CGObjectDataEnd + 64, // size 1 flags: MIRROR_ALL
    	CGItemData_Durability = CGObjectDataEnd + 65, // size 1 flags: MIRROR_OWNER
    	CGItemData_MaxDurability = CGObjectDataEnd + 66, // size 1 flags: MIRROR_OWNER
    	CGItemData_CreatePlayedTime = CGObjectDataEnd + 67, // size 1 flags: MIRROR_ALL
    	CGItemData_ModifiersMask = CGObjectDataEnd + 68, // size 1 flags: MIRROR_OWNER
    	CGItemData_Context = CGObjectDataEnd + 69, // size 1 flags: MIRROR_ALL
    	CGItemData_ArtifactXP = CGObjectDataEnd + 70, // size 2 flags: MIRROR_OWNER
    	CGItemData_ItemAppearanceModID = CGObjectDataEnd + 72, // size 1 flags: MIRROR_OWNER
    	CGItemDataEnd = CGObjectDataEnd + 73
    };
    
    
    enum CGContainerData
    {
    	CGContainerData_Slots = CGItemDataEnd + 0, // size 144 flags: MIRROR_ALL
    	CGContainerData_NumSlots = CGItemDataEnd + 144, // size 1 flags: MIRROR_ALL
    	CGContainerDataEnd = CGItemDataEnd + 145
    };
    
    
    enum CGAzeriteEmpoweredItemData
    {
    	CGAzeriteEmpoweredItemData_Selections = 0, // size 4
    	CGAzeriteEmpoweredItemDataEnd = 4
    };
    
    
    enum CGAzeriteItemData
    {
    	CGAzeriteItemData_Xp = CGItemDataEnd + 0, // size 2 flags: MIRROR_ALL
    	CGAzeriteItemData_Level = CGItemDataEnd + 2, // size 1 flags: MIRROR_ALL
    	CGAzeriteItemData_AuraLevel = CGItemDataEnd + 3, // size 1 flags: MIRROR_ALL
    	CGAzeriteItemData_KnowledgeLevel = CGItemDataEnd + 4, // size 1 flags: MIRROR_OWNER
    	CGAzeriteItemData_DEBUGknowledgeWeek = CGItemDataEnd + 5, // size 1 flags: MIRROR_OWNER
    	CGAzeriteItemDataEnd = CGItemDataEnd + 6
    };
    
    
    enum CGUnitData
    {
    	CGUnitData_Charm = CGObjectDataEnd + 0, // size 4 flags: MIRROR_ALL
    	CGUnitData_Summon = CGObjectDataEnd + 4, // size 4 flags: MIRROR_ALL
    	CGUnitData_Critter = CGObjectDataEnd + 8, // size 4 flags: MIRROR_SELF
    	CGUnitData_CharmedBy = CGObjectDataEnd + 12, // size 4 flags: MIRROR_ALL
    	CGUnitData_SummonedBy = CGObjectDataEnd + 16, // size 4 flags: MIRROR_ALL
    	CGUnitData_CreatedBy = CGObjectDataEnd + 20, // size 4 flags: MIRROR_ALL
    	CGUnitData_DemonCreator = CGObjectDataEnd + 24, // size 4 flags: MIRROR_ALL
    	CGUnitData_LookAtControllerTarget = CGObjectDataEnd + 28, // size 4 flags: MIRROR_ALL
    	CGUnitData_Target = CGObjectDataEnd + 32, // size 4 flags: MIRROR_ALL
    	CGUnitData_BattlePetCompanionGUID = CGObjectDataEnd + 36, // size 4 flags: MIRROR_ALL
    	CGUnitData_BattlePetDBID = CGObjectDataEnd + 40, // size 2 flags: MIRROR_ALL
    	CGUnitData_ChannelData = CGObjectDataEnd + 42, // size 2 flags: 
    	CGUnitData_SummonedByHomeRealm = CGObjectDataEnd + 44, // size 1 flags: MIRROR_ALL
    	CGUnitData_Sex = CGObjectDataEnd + 45, // size 1 flags: MIRROR_ALL
    	CGUnitData_DisplayPower = CGObjectDataEnd + 46, // size 1 flags: MIRROR_ALL
    	CGUnitData_OverrideDisplayPowerID = CGObjectDataEnd + 47, // size 1 flags: MIRROR_ALL
    	CGUnitData_Health = CGObjectDataEnd + 48, // size 2 flags: MIRROR_VIEWER_DEPENDENT
    	CGUnitData_Power = CGObjectDataEnd + 50, // size 6 flags: 
    	CGUnitData_MaxHealth = CGObjectDataEnd + 56, // size 2 flags: MIRROR_VIEWER_DEPENDENT
    	CGUnitData_MaxPower = CGObjectDataEnd + 58, // size 6 flags: MIRROR_ALL
    	CGUnitData_ModPowerRegen = CGObjectDataEnd + 64, // size 6 flags: 
    	CGUnitData_Level = CGObjectDataEnd + 70, // size 1 flags: MIRROR_ALL
    	CGUnitData_EffectiveLevel = CGObjectDataEnd + 71, // size 1 flags: MIRROR_ALL
    	CGUnitData_ContentTuningID = CGObjectDataEnd + 72, // size 1 flags: MIRROR_ALL
    	CGUnitData_ScalingLevelMin = CGObjectDataEnd + 73, // size 1 flags: MIRROR_ALL
    	CGUnitData_ScalingLevelMax = CGObjectDataEnd + 74, // size 1 flags: MIRROR_ALL
    	CGUnitData_ScalingLevelDelta = CGObjectDataEnd + 75, // size 1 flags: MIRROR_ALL
    	CGUnitData_ScalingFactionGroup = CGObjectDataEnd + 76, // size 1 flags: MIRROR_ALL
    	CGUnitData_ScalingHealthItemLevelCurveID = CGObjectDataEnd + 77, // size 1 flags: MIRROR_ALL
    	CGUnitData_ScalingDamageItemLevelCurveID = CGObjectDataEnd + 78, // size 1 flags: MIRROR_ALL
    	CGUnitData_FactionTemplate = CGObjectDataEnd + 79, // size 1 flags: MIRROR_ALL
    	CGUnitData_VirtualItems = CGObjectDataEnd + 80, // size 6 flags: MIRROR_ALL
    	CGUnitData_Flags = CGObjectDataEnd + 86, // size 1 flags: 
    	CGUnitData_Flags2 = CGObjectDataEnd + 87, // size 1 flags: 
    	CGUnitData_Flags3 = CGObjectDataEnd + 88, // size 1 flags: 
    	CGUnitData_AuraState = CGObjectDataEnd + 89, // size 1 flags: MIRROR_ALL
    	CGUnitData_AttackRoundBaseTime = CGObjectDataEnd + 90, // size 2 flags: MIRROR_ALL
    	CGUnitData_RangedAttackRoundBaseTime = CGObjectDataEnd + 92, // size 1 flags: MIRROR_SELF
    	CGUnitData_BoundingRadius = CGObjectDataEnd + 93, // size 1 flags: MIRROR_ALL
    	CGUnitData_CombatReach = CGObjectDataEnd + 94, // size 1 flags: MIRROR_ALL
    	CGUnitData_DisplayID = CGObjectDataEnd + 95, // size 1 flags: 
    	CGUnitData_DisplayScale = CGObjectDataEnd + 96, // size 1 flags: 
    	CGUnitData_NativeDisplayID = CGObjectDataEnd + 97, // size 1 flags: 
    	CGUnitData_NativeXDisplayScale = CGObjectDataEnd + 98, // size 1 flags: 
    	CGUnitData_MountDisplayID = CGObjectDataEnd + 99, // size 1 flags: 
    	CGUnitData_MinDamage = CGObjectDataEnd + 100, // size 1 flags: 
    	CGUnitData_MaxDamage = CGObjectDataEnd + 101, // size 1 flags: 
    	CGUnitData_MinOffHandDamage = CGObjectDataEnd + 102, // size 1 flags: 
    	CGUnitData_MaxOffHandDamage = CGObjectDataEnd + 103, // size 1 flags: 
    	CGUnitData_AnimTier = CGObjectDataEnd + 104, // size 1 flags: MIRROR_ALL
    	CGUnitData_PetNumber = CGObjectDataEnd + 105, // size 1 flags: MIRROR_ALL
    	CGUnitData_PetNameTimestamp = CGObjectDataEnd + 106, // size 1 flags: MIRROR_ALL
    	CGUnitData_PetExperience = CGObjectDataEnd + 107, // size 1 flags: MIRROR_OWNER
    	CGUnitData_PetNextLevelExperience = CGObjectDataEnd + 108, // size 1 flags: MIRROR_OWNER
    	CGUnitData_ModCastingSpeed = CGObjectDataEnd + 109, // size 1 flags: MIRROR_ALL
    	CGUnitData_ModSpellHaste = CGObjectDataEnd + 110, // size 1 flags: MIRROR_ALL
    	CGUnitData_ModHaste = CGObjectDataEnd + 111, // size 1 flags: MIRROR_ALL
    	CGUnitData_ModRangedHaste = CGObjectDataEnd + 112, // size 1 flags: MIRROR_ALL
    	CGUnitData_ModHasteRegen = CGObjectDataEnd + 113, // size 1 flags: MIRROR_ALL
    	CGUnitData_ModTimeRate = CGObjectDataEnd + 114, // size 1 flags: MIRROR_ALL
    	CGUnitData_CreatedBySpell = CGObjectDataEnd + 115, // size 1 flags: MIRROR_ALL
    	CGUnitData_NpcFlags = CGObjectDataEnd + 116, // size 2 flags: 
    	CGUnitData_EmoteState = CGObjectDataEnd + 118, // size 1 flags: MIRROR_ALL
    	CGUnitData_TrainingPointsTotal = CGObjectDataEnd + 119, // size 1 flags: MIRROR_OWNER
    	CGUnitData_Stats = CGObjectDataEnd + 120, // size 5 flags: 
    	CGUnitData_StatPosBuff = CGObjectDataEnd + 125, // size 5 flags: 
    	CGUnitData_StatNegBuff = CGObjectDataEnd + 130, // size 5 flags: 
    	CGUnitData_Resistances = CGObjectDataEnd + 135, // size 7 flags: 
    	CGUnitData_ResistanceBuffModsPositive = CGObjectDataEnd + 142, // size 7 flags: 
    	CGUnitData_ResistanceBuffModsNegative = CGObjectDataEnd + 149, // size 7 flags: 
    	CGUnitData_BaseMana = CGObjectDataEnd + 156, // size 1 flags: MIRROR_ALL
    	CGUnitData_BaseHealth = CGObjectDataEnd + 157, // size 1 flags: 
    	CGUnitData_ShapeshiftForm = CGObjectDataEnd + 158, // size 1 flags: MIRROR_ALL
    	CGUnitData_AttackPower = CGObjectDataEnd + 159, // size 1 flags: 
    	CGUnitData_AttackPowerModPos = CGObjectDataEnd + 160, // size 1 flags: 
    	CGUnitData_AttackPowerModNeg = CGObjectDataEnd + 161, // size 1 flags: 
    	CGUnitData_AttackPowerMultiplier = CGObjectDataEnd + 162, // size 1 flags: 
    	CGUnitData_RangedAttackPower = CGObjectDataEnd + 163, // size 1 flags: 
    	CGUnitData_RangedAttackPowerModPos = CGObjectDataEnd + 164, // size 1 flags: 
    	CGUnitData_RangedAttackPowerModNeg = CGObjectDataEnd + 165, // size 1 flags: 
    	CGUnitData_RangedAttackPowerMultiplier = CGObjectDataEnd + 166, // size 1 flags: 
    	CGUnitData_MainHandWeaponAttackPower = CGObjectDataEnd + 167, // size 1 flags: 
    	CGUnitData_OffHandWeaponAttackPower = CGObjectDataEnd + 168, // size 1 flags: 
    	CGUnitData_RangedWeaponAttackPower = CGObjectDataEnd + 169, // size 1 flags: 
    	CGUnitData_SetAttackSpeedAura = CGObjectDataEnd + 170, // size 1 flags: 
    	CGUnitData_Lifesteal = CGObjectDataEnd + 171, // size 1 flags: 
    	CGUnitData_MinRangedDamage = CGObjectDataEnd + 172, // size 1 flags: 
    	CGUnitData_MaxRangedDamage = CGObjectDataEnd + 173, // size 1 flags: 
    	CGUnitData_PowerCostModifier = CGObjectDataEnd + 174, // size 7 flags: 
    	CGUnitData_PowerCostMultiplier = CGObjectDataEnd + 181, // size 7 flags: 
    	CGUnitData_MaxHealthModifier = CGObjectDataEnd + 188, // size 1 flags: 
    	CGUnitData_HoverHeight = CGObjectDataEnd + 189, // size 1 flags: MIRROR_ALL
    	CGUnitData_MinItemLevelCutoff = CGObjectDataEnd + 190, // size 1 flags: MIRROR_ALL
    	CGUnitData_MinItemLevel = CGObjectDataEnd + 191, // size 1 flags: MIRROR_ALL
    	CGUnitData_MaxItemLevel = CGObjectDataEnd + 192, // size 1 flags: MIRROR_ALL
    	CGUnitData_WildBattlePetLevel = CGObjectDataEnd + 193, // size 1 flags: MIRROR_ALL
    	CGUnitData_BattlePetCompanionNameTimestamp = CGObjectDataEnd + 194, // size 1 flags: MIRROR_ALL
    	CGUnitData_InteractSpellID = CGObjectDataEnd + 195, // size 1 flags: MIRROR_ALL
    	CGUnitData_StateSpellVisualID = CGObjectDataEnd + 196, // size 1 flags: 
    	CGUnitData_StateAnimID = CGObjectDataEnd + 197, // size 1 flags: 
    	CGUnitData_StateAnimKitID = CGObjectDataEnd + 198, // size 1 flags: 
    	CGUnitData_StateWorldEffectID = CGObjectDataEnd + 199, // size 4 flags: 
    	CGUnitData_ScaleDuration = CGObjectDataEnd + 203, // size 1 flags: MIRROR_ALL
    	CGUnitData_LooksLikeMountID = CGObjectDataEnd + 204, // size 1 flags: MIRROR_ALL
    	CGUnitData_LooksLikeCreatureID = CGObjectDataEnd + 205, // size 1 flags: MIRROR_ALL
    	CGUnitData_LookAtControllerID = CGObjectDataEnd + 206, // size 1 flags: MIRROR_ALL
    	CGUnitData_GuildGUID = CGObjectDataEnd + 207, // size 4 flags: MIRROR_ALL
    	CGUnitDataEnd = CGObjectDataEnd + 211
    };
    
    
    enum CGPlayerData
    {
    	CGPlayerData_DuelArbiter = CGUnitDataEnd + 0, // size 4 flags: MIRROR_ALL
    	CGPlayerData_WowAccount = CGUnitDataEnd + 4, // size 4 flags: MIRROR_ALL
    	CGPlayerData_LootTargetGUID = CGUnitDataEnd + 8, // size 4 flags: MIRROR_ALL
    	CGPlayerData_PlayerFlags = CGUnitDataEnd + 12, // size 1 flags: MIRROR_ALL
    	CGPlayerData_PlayerFlagsEx = CGUnitDataEnd + 13, // size 1 flags: MIRROR_ALL
    	CGPlayerData_GuildRankID = CGUnitDataEnd + 14, // size 1 flags: MIRROR_ALL
    	CGPlayerData_GuildDeleteDate = CGUnitDataEnd + 15, // size 1 flags: MIRROR_ALL
    	CGPlayerData_GuildLevel = CGUnitDataEnd + 16, // size 1 flags: MIRROR_ALL
    	CGPlayerData_HairColorID = CGUnitDataEnd + 17, // size 1 flags: MIRROR_ALL
    	CGPlayerData_CustomDisplayOption = CGUnitDataEnd + 18, // size 1 flags: MIRROR_ALL
    	CGPlayerData_Inebriation = CGUnitDataEnd + 19, // size 1 flags: MIRROR_ALL
    	CGPlayerData_PvpRank = CGUnitDataEnd + 20, // size 1 flags: MIRROR_ALL
    	CGPlayerData_DuelTeam = CGUnitDataEnd + 21, // size 1 flags: MIRROR_ALL
    	CGPlayerData_GuildTimeStamp = CGUnitDataEnd + 22, // size 1 flags: MIRROR_ALL
    	CGPlayerData_QuestLog = CGUnitDataEnd + 23, // size 320 flags: MIRROR_PARTY
    	CGPlayerData_VisibleItems = CGUnitDataEnd + 343, // size 38 flags: MIRROR_ALL
    	CGPlayerData_PlayerTitle = CGUnitDataEnd + 381, // size 1 flags: MIRROR_ALL
    	CGPlayerData_FakeInebriation = CGUnitDataEnd + 382, // size 1 flags: MIRROR_ALL
    	CGPlayerData_VirtualPlayerRealm = CGUnitDataEnd + 383, // size 1 flags: MIRROR_ALL
    	CGPlayerData_CurrentSpecID = CGUnitDataEnd + 384, // size 1 flags: MIRROR_ALL
    	CGPlayerData_TaxiMountAnimKitID = CGUnitDataEnd + 385, // size 1 flags: MIRROR_ALL
    	CGPlayerData_AvgItemLevel = CGUnitDataEnd + 386, // size 4 flags: MIRROR_ALL
    	CGPlayerData_CurrentBattlePetBreedQuality = CGUnitDataEnd + 390, // size 1 flags: MIRROR_ALL
    	CGPlayerData_HonorLevel = CGUnitDataEnd + 391, // size 1 flags: MIRROR_ALL
    	CGPlayerDataEnd = CGUnitDataEnd + 392
    };
    
    
    enum CGActivePlayerData
    {
    	CGActivePlayerData_InvSlots = CGPlayerDataEnd + 0, // size 368 flags: MIRROR_ALL
    	CGActivePlayerData_FarsightObject = CGPlayerDataEnd + 368, // size 4 flags: MIRROR_ALL
    	CGActivePlayerData_ComboTarget = CGPlayerDataEnd + 372, // size 4 flags: MIRROR_ALL
    	CGActivePlayerData_SummonedBattlePetGUID = CGPlayerDataEnd + 376, // size 4 flags: MIRROR_ALL
    	CGActivePlayerData_KnownTitles = CGPlayerDataEnd + 380, // size 12 flags: MIRROR_ALL
    	CGActivePlayerData_Coinage = CGPlayerDataEnd + 392, // size 2 flags: MIRROR_ALL
    	CGActivePlayerData_XP = CGPlayerDataEnd + 394, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_NextLevelXP = CGPlayerDataEnd + 395, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_TrialXP = CGPlayerDataEnd + 396, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_Skill = CGPlayerDataEnd + 397, // size 896 flags: MIRROR_ALL
    	CGActivePlayerData_CharacterPoints = CGPlayerDataEnd + 1293, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_MaxTalentTiers = CGPlayerDataEnd + 1294, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_TrackCreatureMask = CGPlayerDataEnd + 1295, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_TrackResourceMask = CGPlayerDataEnd + 1296, // size 2 flags: MIRROR_ALL
    	CGActivePlayerData_MainhandExpertise = CGPlayerDataEnd + 1298, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_OffhandExpertise = CGPlayerDataEnd + 1299, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_RangedExpertise = CGPlayerDataEnd + 1300, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_CombatRatingExpertise = CGPlayerDataEnd + 1301, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_BlockPercentage = CGPlayerDataEnd + 1302, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_DodgePercentage = CGPlayerDataEnd + 1303, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_DodgePercentageFromAttribute = CGPlayerDataEnd + 1304, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ParryPercentage = CGPlayerDataEnd + 1305, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ParryPercentageFromAttribute = CGPlayerDataEnd + 1306, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_CritPercentage = CGPlayerDataEnd + 1307, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_RangedCritPercentage = CGPlayerDataEnd + 1308, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_OffhandCritPercentage = CGPlayerDataEnd + 1309, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_SpellCritPercentage = CGPlayerDataEnd + 1310, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ShieldBlock = CGPlayerDataEnd + 1311, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_Mastery = CGPlayerDataEnd + 1312, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_Speed = CGPlayerDataEnd + 1313, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_Avoidance = CGPlayerDataEnd + 1314, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_Sturdiness = CGPlayerDataEnd + 1315, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_Versatility = CGPlayerDataEnd + 1316, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_VersatilityBonus = CGPlayerDataEnd + 1317, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_PvpPowerDamage = CGPlayerDataEnd + 1318, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_PvpPowerHealing = CGPlayerDataEnd + 1319, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ExploredZones = CGPlayerDataEnd + 1320, // size 320 flags: MIRROR_ALL
    	CGActivePlayerData_RestInfo = CGPlayerDataEnd + 1640, // size 4 flags: MIRROR_ALL
    	CGActivePlayerData_ModDamageDonePos = CGPlayerDataEnd + 1644, // size 7 flags: MIRROR_ALL
    	CGActivePlayerData_ModDamageDoneNeg = CGPlayerDataEnd + 1651, // size 7 flags: MIRROR_ALL
    	CGActivePlayerData_ModDamageDonePercent = CGPlayerDataEnd + 1658, // size 7 flags: MIRROR_ALL
    	CGActivePlayerData_ModHealingDonePos = CGPlayerDataEnd + 1665, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ModHealingPercent = CGPlayerDataEnd + 1666, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ModHealingDonePercent = CGPlayerDataEnd + 1667, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ModPeriodicHealingDonePercent = CGPlayerDataEnd + 1668, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_WeaponDmgMultipliers = CGPlayerDataEnd + 1669, // size 3 flags: MIRROR_ALL
    	CGActivePlayerData_WeaponAtkSpeedMultipliers = CGPlayerDataEnd + 1672, // size 3 flags: MIRROR_ALL
    	CGActivePlayerData_ModSpellPowerPercent = CGPlayerDataEnd + 1675, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ModResiliencePercent = CGPlayerDataEnd + 1676, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_OverrideSpellPowerByAPPercent = CGPlayerDataEnd + 1677, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_OverrideAPBySpellPowerPercent = CGPlayerDataEnd + 1678, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ModTargetResistance = CGPlayerDataEnd + 1679, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ModTargetPhysicalResistance = CGPlayerDataEnd + 1680, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_LocalFlags = CGPlayerDataEnd + 1681, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_PvpMedals = CGPlayerDataEnd + 1682, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_BuybackPrice = CGPlayerDataEnd + 1683, // size 12 flags: MIRROR_ALL
    	CGActivePlayerData_BuybackTimestamp = CGPlayerDataEnd + 1695, // size 12 flags: MIRROR_ALL
    	CGActivePlayerData_SessionDishonorableKills = CGPlayerDataEnd + 1707, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_YesterdayDishonorableKills = CGPlayerDataEnd + 1708, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_LastWeekDishonorableKills = CGPlayerDataEnd + 1709, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ThisWeekDishonorableKills = CGPlayerDataEnd + 1710, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ThisWeekContribution = CGPlayerDataEnd + 1711, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_LifetimeHonorableKills = CGPlayerDataEnd + 1712, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_LifetimeDishonorableKills = CGPlayerDataEnd + 1713, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_YesterdayContribution = CGPlayerDataEnd + 1714, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_LastWeekContribution = CGPlayerDataEnd + 1715, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_LastWeekRank = CGPlayerDataEnd + 1716, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_WatchedFactionIndex = CGPlayerDataEnd + 1717, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_CombatRatings = CGPlayerDataEnd + 1718, // size 32 flags: MIRROR_ALL
    	CGActivePlayerData_PvpInfo = CGPlayerDataEnd + 1750, // size 54 flags: MIRROR_ALL
    	CGActivePlayerData_MaxLevel = CGPlayerDataEnd + 1804, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ScalingPlayerLevelDelta = CGPlayerDataEnd + 1805, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_MaxCreatureScalingLevel = CGPlayerDataEnd + 1806, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_NoReagentCostMask = CGPlayerDataEnd + 1807, // size 4 flags: MIRROR_ALL
    	CGActivePlayerData_PetSpellPower = CGPlayerDataEnd + 1811, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ProfessionSkillLine = CGPlayerDataEnd + 1812, // size 2 flags: MIRROR_ALL
    	CGActivePlayerData_UiHitModifier = CGPlayerDataEnd + 1814, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_UiSpellHitModifier = CGPlayerDataEnd + 1815, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_HomeRealmTimeOffset = CGPlayerDataEnd + 1816, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_ModPetHaste = CGPlayerDataEnd + 1817, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_NumBackpackSlots = CGPlayerDataEnd + 1818, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_OverrideSpellsID = CGPlayerDataEnd + 1819, // size 1 flags: 
    	CGActivePlayerData_LfgBonusFactionID = CGPlayerDataEnd + 1820, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_LootSpecID = CGPlayerDataEnd + 1821, // size 1 flags: MIRROR_ALL
    	CGActivePlayerData_OverrideZonePVPType = CGPlayerDataEnd + 1822, // size 1 flags: 
    	CGActivePlayerData_BagSlotFlags = CGPlayerDataEnd + 1823, // size 4 flags: MIRROR_ALL
    	CGActivePlayerData_BankBagSlotFlags = CGPlayerDataEnd + 1827, // size 6 flags: MIRROR_ALL
    	CGActivePlayerData_PvpRankProgress = CGPlayerDataEnd + 1833, // size 1 flags: MIRROR_ALL
    	CGActivePlayerDataEnd = CGPlayerDataEnd + 1834
    };
    
    
    enum CGGameObjectData
    {
    	CGGameObjectData_CreatedBy = CGObjectDataEnd + 0, // size 4 flags: MIRROR_ALL
    	CGGameObjectData_GuildGUID = CGObjectDataEnd + 4, // size 4 flags: MIRROR_ALL
    	CGGameObjectData_DisplayID = CGObjectDataEnd + 8, // size 1 flags: 
    	CGGameObjectData_Flags = CGObjectDataEnd + 9, // size 1 flags: 
    	CGGameObjectData_ParentRotation = CGObjectDataEnd + 10, // size 4 flags: MIRROR_ALL
    	CGGameObjectData_FactionTemplate = CGObjectDataEnd + 14, // size 1 flags: MIRROR_ALL
    	CGGameObjectData_Level = CGObjectDataEnd + 15, // size 1 flags: MIRROR_ALL
    	CGGameObjectData_PercentHealth = CGObjectDataEnd + 16, // size 1 flags: 
    	CGGameObjectData_SpellVisualID = CGObjectDataEnd + 17, // size 1 flags: 
    	CGGameObjectData_StateSpellVisualID = CGObjectDataEnd + 18, // size 1 flags: 
    	CGGameObjectData_SpawnTrackingStateAnimID = CGObjectDataEnd + 19, // size 1 flags: 
    	CGGameObjectData_SpawnTrackingStateAnimKitID = CGObjectDataEnd + 20, // size 1 flags: 
    	CGGameObjectData_StateWorldEffectID = CGObjectDataEnd + 21, // size 4 flags: 
    	CGGameObjectData_CustomParam = CGObjectDataEnd + 25, // size 1 flags: 
    	CGGameObjectDataEnd = CGObjectDataEnd + 26
    };
    
    
    enum CGDynamicObjectData
    {
    	CGDynamicObjectData_Caster = CGObjectDataEnd + 0, // size 4 flags: MIRROR_ALL
    	CGDynamicObjectData_Type = CGObjectDataEnd + 4, // size 1 flags: MIRROR_ALL
    	CGDynamicObjectData_SpellXSpellVisualID = CGObjectDataEnd + 5, // size 1 flags: MIRROR_ALL
    	CGDynamicObjectData_SpellID = CGObjectDataEnd + 6, // size 1 flags: MIRROR_ALL
    	CGDynamicObjectData_Radius = CGObjectDataEnd + 7, // size 1 flags: MIRROR_ALL
    	CGDynamicObjectData_CastTime = CGObjectDataEnd + 8, // size 1 flags: MIRROR_ALL
    	CGDynamicObjectDataEnd = CGObjectDataEnd + 9
    };
    
    
    enum CGCorpseData
    {
    	CGCorpseData_Owner = CGObjectDataEnd + 0, // size 4 flags: MIRROR_ALL
    	CGCorpseData_PartyGUID = CGObjectDataEnd + 4, // size 4 flags: MIRROR_ALL
    	CGCorpseData_GuildGUID = CGObjectDataEnd + 8, // size 4 flags: MIRROR_ALL
    	CGCorpseData_DisplayID = CGObjectDataEnd + 12, // size 1 flags: MIRROR_ALL
    	CGCorpseData_Items = CGObjectDataEnd + 13, // size 19 flags: MIRROR_ALL
    	CGCorpseData_SkinID = CGObjectDataEnd + 32, // size 1 flags: MIRROR_ALL
    	CGCorpseData_FacialHairStyleID = CGObjectDataEnd + 33, // size 1 flags: MIRROR_ALL
    	CGCorpseData_Flags = CGObjectDataEnd + 34, // size 1 flags: MIRROR_ALL
    	CGCorpseData_DynamicFlags = CGObjectDataEnd + 35, // size 1 flags: MIRROR_VIEWER_DEPENDENT
    	CGCorpseData_FactionTemplate = CGObjectDataEnd + 36, // size 1 flags: MIRROR_ALL
    	CGCorpseData_CustomDisplayOption = CGObjectDataEnd + 37, // size 1 flags: MIRROR_ALL
    	CGCorpseDataEnd = CGObjectDataEnd + 38
    };
    
    
    enum CGAreaTriggerData
    {
    	CGAreaTriggerData_OverrideScaleCurve = CGObjectDataEnd + 0, // size 7 flags: 
    	CGAreaTriggerData_ExtraScaleCurve = CGObjectDataEnd + 7, // size 7 flags: 
    	CGAreaTriggerData_Caster = CGObjectDataEnd + 14, // size 4 flags: MIRROR_ALL
    	CGAreaTriggerData_Duration = CGObjectDataEnd + 18, // size 1 flags: MIRROR_ALL
    	CGAreaTriggerData_TimeToTarget = CGObjectDataEnd + 19, // size 1 flags: 
    	CGAreaTriggerData_TimeToTargetScale = CGObjectDataEnd + 20, // size 1 flags: 
    	CGAreaTriggerData_TimeToTargetExtraScale = CGObjectDataEnd + 21, // size 1 flags: 
    	CGAreaTriggerData_SpellID = CGObjectDataEnd + 22, // size 1 flags: MIRROR_ALL
    	CGAreaTriggerData_SpellForVisuals = CGObjectDataEnd + 23, // size 1 flags: MIRROR_ALL
    	CGAreaTriggerData_SpellXSpellVisualID = CGObjectDataEnd + 24, // size 1 flags: MIRROR_ALL
    	CGAreaTriggerData_BoundsRadius2D = CGObjectDataEnd + 25, // size 1 flags: 
    	CGAreaTriggerData_DecalPropertiesID = CGObjectDataEnd + 26, // size 1 flags: MIRROR_ALL
    	CGAreaTriggerData_CreatingEffectGUID = CGObjectDataEnd + 27, // size 4 flags: MIRROR_ALL
    	CGAreaTriggerDataEnd = CGObjectDataEnd + 31
    };
    
    
    enum CGSceneObjectData
    {
    	CGSceneObjectData_ScriptPackageID = CGObjectDataEnd + 0, // size 1 flags: MIRROR_ALL
    	CGSceneObjectData_RndSeedVal = CGObjectDataEnd + 1, // size 1 flags: MIRROR_ALL
    	CGSceneObjectData_CreatedBy = CGObjectDataEnd + 2, // size 4 flags: MIRROR_ALL
    	CGSceneObjectData_SceneType = CGObjectDataEnd + 6, // size 1 flags: MIRROR_ALL
    	CGSceneObjectDataEnd = CGObjectDataEnd + 7
    };
    
    
    enum CGConversationData
    {
    	CGConversationData_LastLineEndTime = CGObjectDataEnd + 0, // size 1 flags: MIRROR_VIEWER_DEPENDENT
    	CGConversationDataEnd = CGObjectDataEnd + 1
    };
    
    
    enum CGItemDynamicData
    {
    	CGItemDynamicData_Modifiers = CGObjectDataEnd + 0, // size 4 flags: MIRROR_NONE
    	CGItemDynamicData_BonusListIDs = CGObjectDataEnd + 1, // size 260 flags: MIRROR_NONE
    	CGItemDynamicData_ArtifactPowers = CGObjectDataEnd + 2, // size 4 flags: MIRROR_NONE
    	CGItemDynamicData_Gems = CGObjectDataEnd + 3, // size 4 flags: MIRROR_NONE
    	CGItemDynamicDataEnd = CGObjectDataEnd + 4
    };
    
    
    enum CGUnitDynamicData
    {
    	CGUnitDynamicData_PassiveSpells = CGObjectDataEnd + 0, // size 513 flags: MIRROR_NONE
    	CGUnitDynamicData_WorldEffects = CGObjectDataEnd + 1, // size 513 flags: MIRROR_NONE
    	CGUnitDynamicData_ChannelObjects = CGObjectDataEnd + 2, // size 513 flags: MIRROR_NONE
    	CGUnitDynamicDataEnd = CGObjectDataEnd + 3
    };
    
    
    enum CGPlayerDynamicData
    {
    	CGPlayerDynamicData_ArenaCooldowns = CGObjectDataEnd + 0, // size 1 flags: MIRROR_NONE
    	CGPlayerDynamicDataEnd = CGObjectDataEnd + 1
    };
    
    
    enum CGActivePlayerDynamicData
    {
    	CGActivePlayerDynamicData_ResearchSites = CGObjectDataEnd + 0, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_ResearchSiteProgress = CGObjectDataEnd + 1, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_DailyQuestsCompleted = CGObjectDataEnd + 2, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_AvailableQuestLineXQuestIDs = CGObjectDataEnd + 3, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_Heirlooms = CGObjectDataEnd + 4, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_HeirloomFlags = CGObjectDataEnd + 5, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_Toys = CGObjectDataEnd + 6, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_Transmog = CGObjectDataEnd + 7, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_ConditionalTransmog = CGObjectDataEnd + 8, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_SelfResSpells = CGObjectDataEnd + 9, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_CharacterRestrictions = CGObjectDataEnd + 10, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_SpellPctModByLabel = CGObjectDataEnd + 11, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_SpellFlatModByLabel = CGObjectDataEnd + 12, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicData_Research = CGObjectDataEnd + 13, // size 1 flags: MIRROR_NONE
    	CGActivePlayerDynamicDataEnd = CGObjectDataEnd + 14
    };
    
    
    enum CGGameObjectDynamicData
    {
    	CGGameObjectDynamicData_EnableDoodadSets = CGObjectDataEnd + 0, // size 1 flags: MIRROR_NONE
    	CGGameObjectDynamicDataEnd = CGObjectDataEnd + 1
    };
    
    
    enum CGConversationDynamicData
    {
    	CGConversationDynamicData_Actors = CGObjectDataEnd + 0, // size 1 flags: MIRROR_NONE
    	CGConversationDynamicData_Lines = CGObjectDataEnd + 1, // size 256 flags: MIRROR_NONE
    	CGConversationDynamicDataEnd = CGObjectDataEnd + 2
    };

  6. Thanks DanThePman (1 members gave Thanks to mazer for this useful post)
  7. #6
    xkyii's Avatar Member
    Reputation
    1
    Join Date
    Sep 2019
    Posts
    12
    Thanks G/R
    5/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    cool!
    anybody shows lua_xxxxx and FrameScript_xxxxx ?

  8. #7
    KKira's Avatar Active Member
    Reputation
    20
    Join Date
    Apr 2019
    Posts
    36
    Thanks G/R
    5/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by xkyii View Post
    cool!
    anybody shows lua_xxxxx and FrameScript_xxxxx ?
    No clue what you mean by lua_xxxxx but the FrameScript ones were linked in the post right above yours.

    FrameScript_ExecuteBuffer = 0x321710,
    FrameScript_GetLocalizedText = 0x0,
    FrameScript_GetText = 0x31E010,

  9. #8
    NoxiaZ's Avatar Active Member
    Reputation
    23
    Join Date
    May 2019
    Posts
    101
    Thanks G/R
    21/12
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Anyone found the offset for the Viewmatrix of the Camera ?

  10. #9
    KKira's Avatar Active Member
    Reputation
    20
    Join Date
    Apr 2019
    Posts
    36
    Thanks G/R
    5/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by NoxiaZ View Post
    Anyone found the offset for the Viewmatrix of the Camera ?
    I assume you mean the CameraBase? (0x2546398, as per posts above), since the offsets within it have not changed.

  11. #10
    NoxiaZ's Avatar Active Member
    Reputation
    23
    Join Date
    May 2019
    Posts
    101
    Thanks G/R
    21/12
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by KKira View Post
    I assume you mean the CameraBase? (0x2546398, as per posts above), since the offsets within it have not changed.
    I just started few days ago looking into classic, so i havent found that many offsets yet, that is including viewmatrix offsets.

  12. #11
    ChrisIsMe's Avatar Contributor
    Reputation
    164
    Join Date
    Apr 2017
    Posts
    210
    Thanks G/R
    67/100
    Trade Feedback
    0 (0%)
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by NoxiaZ View Post
    Anyone found the offset for the Viewmatrix of the Camera ?
    https://www.ownedcore.com/forums/wor...ml#post4073744 ([Classic] 1.13.2.32089)

    it's there, the struct hasn't changed in years.

  13. #12
    NoxiaZ's Avatar Active Member
    Reputation
    23
    Join Date
    May 2019
    Posts
    101
    Thanks G/R
    21/12
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by ChrisIsMe View Post
    I know that the base address is in this thread.
    But i haven't been creating a bot for WoW classic or retail - Only 1.12, so i do not have the structs or anything, and i'm looking for the camera offsets, so i can create the method WorldToScreenPoint, because my knowledge about FOV, viewmatrix and so on are very low.
    If the structs haven't changed i very long time, can you point to a thread where i can get this information, because i haven't been able to find it

  14. #13
    KKira's Avatar Active Member
    Reputation
    20
    Join Date
    Apr 2019
    Posts
    36
    Thanks G/R
    5/3
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Google "worldtoscreen site: ownedcore.com" has many guides on it, pick one, even github has many useful things on it, good old LazyBot has a function for it (just keep in mind it was written in the times of 4/3 aspect ratio.
    lazybot/Camera.cs at master . acidburn974/lazybot . GitHub to be precise
    Last edited by KKira; 10-11-2019 at 04:26 AM. Reason: Stupid Emoticons

  15. #14
    ChrisIsMe's Avatar Contributor
    Reputation
    164
    Join Date
    Apr 2017
    Posts
    210
    Thanks G/R
    67/100
    Trade Feedback
    0 (0%)
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by NoxiaZ View Post
    I know that the base address is in this thread.
    But i haven't been creating a bot for WoW classic or retail - Only 1.12, so i do not have the structs or anything, and i'm looking for the camera offsets, so i can create the method WorldToScreenPoint, because my knowledge about FOV, viewmatrix and so on are very low.
    If the structs haven't changed i very long time, can you point to a thread where i can get this information, because i haven't been able to find it
    Code:
    struct Vector3
    {
    	float x;
    	float y;
    	float z;
    };
    
    struct Vector2
    {
    	float x;
    	float y;
    };
    
    struct Matrix
    {
    	float _00; //a
    	float _01; //b
    	float _02; //c
    	float _10; //d
    	float _11; //e
    	float _12; //f
    	float _20; //g
    	float _21; //h
    	float _22; //i
    };
    
    struct CCamera {
    	char pad[0x10];
    	Vector3 camPos;//0x10-0x18
    	Matrix mat;//0x1C-0x3C
    	float fov;//0x40
    };
    Last edited by ChrisIsMe; 10-11-2019 at 06:24 AM.

  16. Thanks thateuler (1 members gave Thanks to ChrisIsMe for this useful post)
  17. #15
    ChrisIsMe's Avatar Contributor
    Reputation
    164
    Join Date
    Apr 2017
    Posts
    210
    Thanks G/R
    67/100
    Trade Feedback
    0 (0%)
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by KKira View Post
    Google "worldtoscreen site: ownedcore.com" has many guides on it, pick one, even github has many useful things on it, good old LazyBot has a function for it (just keep in mind it was written in the times of 4/3 aspect ratio.
    lazybot/Camera.cs at master . acidburn974/lazybot . GitHub to be precise
    Code:
    	Vector2 gameScreen{ (rc.right - rc.left) / 2.0f , (rc.bottom - rc.top) / 2.0f };
    	Vector2 aspect{ gameScreen.x / tan(((cam.fov * 55.0f) / 2.0f) * Deg2Rad) ,gameScreen.y / tan(((cam.fov * 35.0f) / 2.0f) * Deg2Rad) };
    
    should work fine to fix aspect ratio, but I'm not certain

Page 1 of 2 12 LastLast

Similar Threads

  1. WoW Classic 1.13.2 (30550) ObjMgr
    By serioux1337 in forum WoW Memory Editing
    Replies: 4
    Last Post: 05-31-2019, 05:38 PM
  2. [Classic] - 1.13.2.30112 - (Beta)
    By Icesythe7 in forum WoW Memory Editing
    Replies: 0
    Last Post: 04-18-2019, 12:26 AM
  3. [Question] Simple bot for right clicking at xyz position Wow classic 1.13/Arctium
    By Andrehoejmark in forum WoW Bots Questions & Requests
    Replies: 2
    Last Post: 02-11-2019, 04:50 AM
  4. WoW Classic 1.13 Sandbox
    By raido in forum World of Warcraft Emulator Servers
    Replies: 1
    Last Post: 10-24-2018, 06:23 PM
  5. [Selling] Level 60 Hunter. Classic Rank 13 Warlord
    By Tschaenter in forum WoW-EU Account Buy Sell Trade
    Replies: 1
    Last Post: 11-04-2013, 03:21 PM
All times are GMT -5. The time now is 11:33 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search