[Classic] [1.13.7.38475] menu

User Tag List

Results 1 to 13 of 13
  1. #1
    charles420's Avatar Contributor
    Reputation
    315
    Join Date
    Jun 2009
    Posts
    329
    Thanks G/R
    25/119
    Trade Feedback
    0 (0%)
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)

    [Classic] [1.13.7.38475]

    Code:
    using System.Reflection;
    
    
    namespace LazyLib.Wow
    {
        public class PublicPointers
        {
            /// <summary>
            /// Globals
            /// </summary>
            public enum Globals
            {
                PlayerName = 0x29F78F8,
            }
    
            /// <summary>
            /// InGame
            /// </summary>
            public enum InGame
            {
                InGame = 0x29186C4,
                LoadingScreen = 0x25E3630,
                RealmName = 0x2864650,
            }
    
        }
    
        internal class Pointers
        {
            /// <summary>
            /// ActionBar
            /// </summary>
            internal enum ActionBar
            {
                ActionBarFirstSlot = 0x2924550,
                ActionBarBonus = ActionBarFirstSlot + 0x240,
                CurrentActionBar = 0x2924BA4,
            }
    
            /// <summary>
            /// Battleground
            /// </summary>
            internal enum Battleground
            {
                BattlegroundStartTickcount = 0x2922994,
                Timestamp = 0x2635B7C, //todo fix pattern all these bg ones
                IsBattlegroundFinished = 0x2922C3C,
                BattlegroundWinner = 0x2922C40,
                BattlegroundInfo = 0x2552220,
                UISelectedBattlegroundId = 0x296638B, // dont use this 
            }
    
            /// <summary>
            /// Corpse
            /// </summary>
            internal enum Corpse
            {
                X = 0x2548800,
                Y = X + 0x4,
                Z = X + 0x8,
            }
    
            /// <summary>
            /// Party
            /// </summary>
            internal enum Party
            {
                PartyOffset = 0x29227F0,
                IsInGroupHome = 0x29227F0,
                IsInGroupInstance = 0x29227F8,
                NumOfPlayers = 0x178,
                NumOfPlayers_SuBGroup = 0x17C,
                PlayerGuid = 0x10,
            }
    
            /// <summary>
            /// AutoLoot
            /// </summary>
            internal enum AutoLoot
            {
                Pointer = 0x2918348,
                Offset = 0x5C,
            }
    
            /// <summary>
            /// ClickToMove
            /// </summary>
            internal enum ClickToMove
            {
                Pointer = 0x2918328,
                Offset = 0x5C,
            }
    
            /// <summary>
            /// Reversed from CGUnit_C__GetCreatureRank 
            /// </summary>
            internal enum CgUnitCGetCreatureRank
            {
                Offset1 = 0x17B8,
                Offset2 = 0x34,
            }
    
            /// <summary>
            /// reversed from CGUnit_C__GetCreatureType 
            /// </summary>
            internal enum CgUnitCGetCreatureType
            {
                Offset1 = 0x17B8,
                Offset2 = 0x30,
            }
    
            /// <summary>
            /// reversed from CGWorldFrame__GetActiveCamera
            /// </summary>
            internal enum CgWorldFrameGetActiveCamera
            {
                CameraPointer = 0x2919230, //todo fix pattern
                CameraOffset = 0x3330,
                CameraX = 0x8,
                CameraY = 0xC,
                CameraZ = 0x10,
                CameraMatrix = 0x14,
            }
    
            /// <summary>
            /// Search for CGUnit_C::GetSkinnableType_Checked 
            /// </summary>
            internal enum Skinning
            {
                SkinnableFlags1 = 0x17B8,
                SkinnableFlags2 = 0x0CC,
            }
    
            /// <summary>
            /// AuctionHouse
            /// </summary>
            internal enum AuctionHouse
            {
                AuctionListCount = 0x2964368,
                AuctionList = 0x2964370,
                AuctionOwnerCount = 0x2964388,
                AuctionOwnerList = 0x2964390,
                AuctionBidderCount = 0x29643A8, // todo fix pattern
                AuctionBidderList = 0x29643B0,
            }
    
            /// <summary>
            /// reversed from CGActionBar__IsCurrentAction
            /// </summary>
            internal enum AutoAttack
            {
                IsAutoRepeatingSpell = 0x2650990,
                IsInMelee = 0xAF6C,
                IsInMelee1 = 0x18A8,
                AutoAttackFlag = 0xEE8,
                AutoAttackMask = 0xEEC,
                ///Address seems to show the GUID of the Auto Attack target
                AutoAttackGUID = 0xAF6C,
                ///Shows 0x06 when not wanding, 0x0C or 0x0E when wanding
                ///Wanding = 0xEF8
            }
    
            /// <summary>
            /// CastingInfo 
            /// </summary>
            internal enum CastingInfo
            {
                IsCasting = 0x1990,
                ChanneledCasting = 0x670,
            }
    
            /// <summary>
            /// reversed from CGWorldFrame__GetActiveCamera
            /// </summary>
            internal enum Chat : uint
            {
                ChatStart = 0x28E6220,
                chatBufferPos = 0x2915D40,
                OffsetToNextMsg = 0xCB8,
                MsgSenderGuid = 0x00,
                MsgSenderName = 0x34,
                MsgFullMessage = 0xE6,
                MsgChatType = 0xCA0,
                MsgChannelNum = 0xCA4,
                MsgTimeStamp = 0xCB0,
                ChatQueueDepth = 0x3C,
            }
    
            /// <summary>
            /// BlueChat
            /// </summary>
            internal enum Messages
            {
                EventMessage = 0x2917610,
            }
    
            /// <summary>
            /// Container
            /// </summary>
            internal enum Container
            {
                EquippedBagGUID = 0x29227E0,
            }
    
            /// <summary>
            /// Globals
            /// </summary>
            internal enum Globals
            {
                RedMessage = 0x2917610,
                MouseOverGUID = 0x29186E8,
                LootWindow = 0x29280A0,
                ChatboxIsOpen = 0x265B0A4,
                CursorType = 0x29B0AF0, // todo fix pattern
                CursorType2 = CursorType + 0x04,
                SelectedSpellId = 0x2936A08,
                CGGameUI__m_cursorItem = 0x2917598,
                CGGameUI__m_cursorSpell = 0x29175C0,
                IsMouseButtonPressed = 0x2635BCC,
                Indoors = 0x2639BB9,
                IsBobbing = 0x14C,
                ArchFacing = 0x198,
                ArchFacingOffset2 = 0x30,
            }
    
            /// <summary>
            /// KeyBinding
            /// </summary>
            internal enum KeyBinding
            {
                NumKeyBindings = 0x2926388,
                First = 0x188,
                Next = 0x178,
                Key = 0x30,
                Command = 0x58,
            }
    
            /// <summary>
            /// Quest
            /// </summary>
            internal enum Quest
            {
                m_quests = 0x2926AF0,
                m_numQuests = 0x2926980,
                m_currentQuest = 0x294AFE4,
                m_questTitle = 0x2956130,
                m_gossipQuests = 0x291D398,
                QuestsCompleted = 0x261BB7C,
                GetNumQuestChoices = 0x295A530,
                GetQuestReward = 0x295A538,
                CGQuestInfo_Available__Quest = 0x2959C30,
                CGQuestInfo_Available__Num = 0x294AFFC,
                CGQuestInfo_Active__Num = 0x294B000,
                CGQuestInfo_Active__Quest = 0x2950484,
            }
    
            /// <summary>
            /// ObjectManager
            /// </summary>
            internal enum ObjectManager
            {
                CurMgrPointer = 0x26F64B8,
                LocalPlayerGUID = 0x29F78E0,
                TargetGUID = 0x2550900,
                PetGUID = 0x292766C,
                StorageField = 0x10,
                ObjectType = 0x20,
                NextObject = 0x70,
                FirstObject = 0x18,
                LocalGUID = 0x58,
            }
    
            /// <summary>
            /// Script_UnitAffectingCombat 
            ///v4 = v2 && (*(_DWORD *)(*(_DWORD *)(v2 + 284) + 316) >> 19) & 1; 
            /// </summary>
            internal enum InCombat
            {
                Mask = 19,
                Offset2 = 0x158,
                Offset1 = 0x188,
            }
    
            /// <summary>
            /// Runes 
            /// </summary>
            internal enum Runes
            {
                RuneTypes = 0x0,
                RunesOffset = 0x0,
                //Offset is usually RuneTypes + 0x64
            }
    
            /// <summary>
            /// CGUnit_C__GetShapeshiftFormId 
            /// </summary>
            internal enum ShapeshiftForm
            {
                BaseAddressOffset1 = 0x188,
                BaseAddressOffset2 = 0x27B,
            }
    
            /// <summary>
            /// SpellCooldown
            /// </summary>
            internal enum SpellCooldown : uint
            {
                CooldPown = 0x253D840,
            }
    
            /// <summary>
            /// Search for PowerTypePointer  
            /// </summary>
            internal enum PowerIndex
            {
                PowerIndexArrays = 0x269CD90,
                Multiplicator = 13,
            }
    
            /// <summary>
            /// Swimming 
            /// </summary>
            internal enum Swimming
            {
                Pointer = 0x198,
                Offset = 0x58,
                Mask = 0x100000,
            }
    
            /// <summary>
            /// IsFlying 
            /// </summary>
            internal enum IsFlying
            {
                Pointer = 0x198,
                Offset = 0x58,
                Mask = 0x1000000,
            }
    
            /// <summary>
            /// IsFalling 
            /// </summary>
            internal enum IsFalling
            {
                Pointer = 0x198,
                Offset = 0x58,
                Mask = 0x1000000,
            }
    
            /// <summary>
            /// reversed from CGUnit_C__GetAura 
            /// </summary>
            internal enum UnitAuras : uint
            {
                AuraCount1 = 0x1AC8,
                AuraCount2 = 0x1AD0,
                AuraTable1 = 0x1AD0,
                AuraTable2 = 0x1AC8,
                AuraSize = 0xA8,
                AuraSpellId = 0x88,
                AuraStack = 0x39,
                TimeLeft = 0x40,
                OwnerGUID = 0x20,
                AuraTableOffset = 0x00,
                AuraFlags = 0x90,
                AuraLevel = 0x92,
            }
    
            /// <summary>
            /// UnitName 
            /// </summary>
            internal enum UnitName : uint
            {
                ObjectName1 = 0x478,
                ObjectName2 = 0xE0,
                PlayerNameGUIDOffset = 0x20,
                PlayerNameStringOffset = 0x31,
                PlayerNameCacheNext = 0x0,
                PlayerNameCachePointer = 0x231EB18,
                UnitName1 = 0x17B8,
                UnitName2 = 0xE0,
            }
    
            /// <summary>
            /// UnitSpeed 
            /// </summary>
            internal enum UnitSpeed
            {
                Pointer1 = 0x198,
                Pointer2 = 164,
            }
    
            /// <summary>
            /// WowObject 
            /// </summary>
            internal enum WowObject
            {
                X = 0x1600,
                Y = X + 0x4,
                Z = X + 0x8,
                RotationOffset = X + 0x10,
                Pitch = X + 0x14,
                GameObjectX = 0x1B0,
                GameObjectY = GameObjectX + 0x4,
                GameObjectZ = GameObjectX + 0x8,
                GameObjectRotation = GameObjectX + 0x10,
                TransportGUID = 0x15F0,
            }
    
            /// <summary>
            /// Zone 
            /// </summary>
            internal enum Zone : uint
            {
                ZoneText = 0x2917560,
                ZoneID = 0x291760C,
                SubZoneText = 0x2917568,
                ContinentId = 0x233997C,
                GetContinentIDOffset = 0xE0,
            }
    
            /// <summary>
            /// UiFrame 
            /// </summary>
            internal enum UiFrame
            {
                ScrWidth = 0x231D8B4,
                ScrHeight = 0x231D8B8,
                FrameBase = 0x26365C8,
                CurrentFramePtr = 0x26365C8,
                CurrentFrameOffset = 0x1A0,
                FirstFrame = 0xCD0,
                NextFrame = 0xCC0,
                LastFrame = 0x0CC8,
                RegionsFirst = 0x1A8,
                RegionsNext = 0x198,
                Visible = 0xC8,
                Visible1 = 0xA,
                Visible2 = 1,
                LabelText = 0x188,
                Name = 0x20,
                FrameBottom = 0x90,
                FrameLeft = 0x94,
                FrameTop = 0x98,
                FrameRight = 0x9C,
                EffectiveScale = 0xC0,
                ParentFrame = 0xD0,
                IconNumber = 0xF0,
                ButtonEnabledPointer = 0x210,
                ButtonEnabledMask = 0xF,
                ButtonChecked = 0x268,
                EditBoxText = 0x238,
            }
    
        }
    
    }

    [Classic] [1.13.7.38475]
  2. Thanks maikel233, GlittPrizes, aeo, Aoooooooo (4 members gave Thanks to charles420 for this useful post)
  3. #2
    maikel233's Avatar Contributor
    Reputation
    137
    Join Date
    Sep 2010
    Posts
    110
    Thanks G/R
    38/64
    Trade Feedback
    0 (0%)
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)
    Bindiffed to 38475
    Code:
    #pragma once
    #include  "stdafx.h"
    #include  "Constants.h"
    namespace Offsets
    {
    	////////////////////////
    	//     1.13.7.38475  //
    	////////////////////////
    
    	// base address
    	static inline uintptr_t Base = reinterpret_cast<uintptr_t>(GetModuleHandle(NULL));
    
    	// framescript
    	static inline uintptr_t FrameScriptExecute = 0x3B5920; // Unsure of this one  
    	static inline uintptr_t FrameScriptGetText = 0x3AD5D0;	// 
    	static inline uintptr_t FrameScriptRegister = 0x3B5920;	// 
    
    	
    	// State
    	static inline uintptr_t InGame = 0x29186C4;
    	static inline uintptr_t LoadingScreen = 0x25E3630;
    
    	// object manager
    	static inline uintptr_t ClntObjMgrEnumVisibleObjectsPtr = 0xD9C2E0;
    	static inline uintptr_t ClntObjMgrGetMapId =  0xD9CAC0;
    	static inline uintptr_t J_ClntObjMgrGetMapId = 0xA96230;
    	static inline uintptr_t ClntObjMgrIsValid = 0xD9D180;
    	static inline uintptr_t ClntObjMgrLocalPlayerGUID = 0x29F78E0;
    	static inline uintptr_t ClntObjMgrTargetGUID = 0x2550900;
    	static inline uintptr_t ClntObjMgrPetGUID = 0x292766C;
    	 
    	//CTM
    	static inline uintptr_t ClickToMove = 0xFD32D0;
    
    	// pointers
    	static inline uintptr_t InvalidPtrCheckMin = 0x265DD78;
    	static inline uintptr_t InvalidPtrCheckMax = 0x265DD80;
    	static inline uintptr_t CanPerformAction = 0x00; 
    	static inline uintptr_t HardwareEventPtr = 0x26365D0;
    
    	static inline uintptr_t Int3 = 0xFEADC;		// CC CC CC CC
    
    	// Unit struct
    	static inline uint16_t Guid = 0x58;
    	static inline uint16_t AnimationStatus = 0x14C;
    	static inline uint16_t Owner = 0x534;
    	static inline uint8_t Type = 0x20;
    	static inline uint8_t FirstObject = 0x18;
    	static inline uint8_t NextObject = 0x70;
    
    	//cast  
    	static inline uintptr_t castSpell = 0x1037440;
    	static inline uintptr_t isSpellKnown = 0x1041630;
    	static inline uintptr_t iscurrentspell = 0x1025BD0;
    	static inline uintptr_t findSlotBySpellId = 0x01039750;
    	static inline uintptr_t isSpellInRange = 0x1026400;
    
    	//Globals
    	static inline uintptr_t LootWindow = 0x11E9AA0;
    	static inline uintptr_t GetPlayerName = 0x1691410 ;
    	static inline uintptr_t GetRealmName = 0xE054E0;
    
    	//Corpse 
    	static inline uintptr_t Corpsex = 0x2548800;
    	static inline uintptr_t Corpsey = Corpsex + 0x4;
    	static inline uintptr_t Corpsez = Corpsex + 0x8;
    
    	//Camera 
    	static inline  uintptr_t CameraMgr = 0x2919230;
    	static inline  uintptr_t CameraPtr = 0x3330;		
    
    };
    Last edited by maikel233; 04-29-2021 at 02:03 PM.

  4. #3
    oiramario's Avatar Established Member
    Reputation
    85
    Join Date
    Mar 2021
    Posts
    133
    Thanks G/R
    36/51
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    @charles420
    I can found most of the addresses of UIFrame with IDA python. However, the offset of FrameName was not found.
    How can I find the offset of FrameName? Can you give the address of this function? I searched all over CSimpleFrame and CScriptRegion, but found no relevant address.
    Thanks for your sharing!
    Last edited by oiramario; 05-04-2021 at 11:22 AM.

  5. #4
    charles420's Avatar Contributor
    Reputation
    315
    Join Date
    Jun 2009
    Posts
    329
    Thanks G/R
    25/119
    Trade Feedback
    0 (0%)
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)
    Should be all of them i could be wrong tho
    //CSimpleSlider_IsEnabled
    //CSimpleSlider_GetChecked
    //CSimpleSlider_GetEffectiveScale
    //Script_SetParent
    //CSimpleSlider_GetText
    //CSimpleSlider_IsShown_1 // Script_IsVisible_class2
    //GetMouseFocus

  6. #5
    oiramario's Avatar Established Member
    Reputation
    85
    Join Date
    Mar 2021
    Posts
    133
    Thanks G/R
    36/51
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks for reply.
    However I just want to know how to find this: name = 0x20
    Last edited by oiramario; 05-04-2021 at 02:49 PM.

  7. #6
    charles420's Avatar Contributor
    Reputation
    315
    Join Date
    Jun 2009
    Posts
    329
    Thanks G/R
    25/119
    Trade Feedback
    0 (0%)
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)
    im not digging in ida right now but its one of thos functions
    Last edited by charles420; 05-04-2021 at 02:53 PM.

  8. #7
    GlittPrizes's Avatar Active Member CoreCoins Purchaser Authenticator enabled
    Reputation
    58
    Join Date
    Nov 2019
    Posts
    104
    Thanks G/R
    53/33
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'm trying to get Classic working. My position stuff is returning nil. Are these incorrect? (VTable)

    Code:
    GetName = 0x61
    GetNameplatePosition = 0x36
    GetPosition = 0x38
    RightClick = 0x58
    edit: they seem to be correct, but there is some diffrence I don't understand in executing lua between retail and classic. None of my lua_push functions put a return value on the stack.
    Last edited by GlittPrizes; 05-08-2021 at 04:59 AM.

  9. #8
    xalcon's Avatar Contributor ふたなり
    Authenticator enabled
    Reputation
    198
    Join Date
    Oct 2008
    Posts
    291
    Thanks G/R
    20/58
    Trade Feedback
    0 (0%)
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by GlittPrizes View Post
    I'm trying to get Classic working. My position stuff is returning nil. Are these incorrect? (VTable)

    Code:
    GetName = 0x61
    GetNameplatePosition = 0x36
    GetPosition = 0x38
    RightClick = 0x58
    edit: they seem to be correct, but there is some diffrence I don't understand in executing lua between retail and classic. None of my lua_push functions put a return value on the stack.
    Not sure about your vtable indices, considering there are multiple variances that lead to the same result somewhat, but here are mine:
    Code:
        [StructLayout(LayoutKind.Explicit)]
        internal unsafe struct CGObjectClassicVTable
        {
            [FieldOffset(14 * 8)]
            public delegate* unmanaged[Thiscall]<CGObjectClassic*, float> pfnGetObjectDisplayHeight; // idx 14
            [FieldOffset(15 * 8)]
            public delegate* unmanaged[Thiscall]<CGObjectClassic*, byte*> pfnGetObjectName; // idx 15
            [FieldOffset(16 * 8)]
            public delegate* unmanaged[Thiscall]<CGObjectClassic*, int> pfnGetLevel; // idx 16
            [FieldOffset(56 * 8)]
            public delegate* unmanaged[Thiscall]<CGObjectClassic*, Vector3> pfnGetPosition; // idx 56
            [FieldOffset(57 * 8)]
            public delegate* unmanaged[Thiscall]<CGObjectClassic*, Vector3> pfnGetRawPosition; // idx 57
            [FieldOffset(58 * 8)]
            public delegate* unmanaged[Thiscall]<CGObjectClassic*, float> pfnGetFacing; // idx 58
            [FieldOffset(59 * 8)]
            public delegate* unmanaged[Thiscall]<CGObjectClassic*, float> pfnGetRawFacing; // idx 59
            [FieldOffset(88 * 8)]
            public delegate* unmanaged[Thiscall]<CGObjectClassic*, int> pfnOnLeftClick; // idx 88
            [FieldOffset(89 * 8)]
            public delegate* unmanaged[Thiscall]<CGObjectClassic*, int> pfnOnRightClick; // idx 89
        }
    Didn't check lua since I'm not using it.
    "Threads should always commit suicide - they should never be murdered" - DirectX SDK

  10. Thanks GlittPrizes (1 members gave Thanks to xalcon for this useful post)
  11. #9
    _chase's Avatar Established Member
    Reputation
    95
    Join Date
    Dec 2019
    Posts
    58
    Thanks G/R
    17/49
    Trade Feedback
    0 (0%)
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)
    Anyone have some tips on checking spell ranges?
    Been trying to use, Spell_C_GetMinMaxRange at 0x9B6250 to no avail

    Below is an example of how I'm calling the function. I either just get min range 0 and max range 0 , or an access violation where the function is trying to read some 0x20D offset


    Spell Id 133 is Fireball Rank 1, and I'm targeting one of the boars in Durotar starting zone so it's a valid attackable unit
    Code:
    auto getMinMax = reinterpret_cast<int64_t(__fastcall*)(uint32_t, CGObject*, float_t*, float_t*, WowGuid*, int64_t, uint32_t)>(Module::BaseAddress() + 0x9B6250);
    
    uint32_t spellId = 133;
    float_t min = 0;
    float_t max = 0;
    
    if (Core::Target()) {
    	getMinMax(spellId, Core::LocalPlayer(), &min, &max, &Core::Target()->guid, 0i64, 0);
    	ImGui::Text("%f", min);
    	ImGui::Text("%f", max);
    }
    else {
            ImGui::Text("No Target");
    }
    Last edited by _chase; 05-10-2021 at 12:35 PM. Reason: formatting

  12. #10
    oiramario's Avatar Established Member
    Reputation
    85
    Join Date
    Mar 2021
    Posts
    133
    Thanks G/R
    36/51
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Spell_C_GetMinMaxRange
    0x9B61F0
    Code:
    bool (CGUnit* unit, const SpellRec* spellRec, float* minRange, float* maxRange, CGObject* assist/*=0*/)
    Last edited by oiramario; 05-10-2021 at 12:58 PM.

  13. Thanks _chase (1 members gave Thanks to oiramario for this useful post)
  14. #11
    oiramario's Avatar Established Member
    Reputation
    85
    Join Date
    Mar 2021
    Posts
    133
    Thanks G/R
    36/51
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Anyone knows how to locate the PlayerNameCachePointer? No xrefs with it, it's hard to write a idapython to find it.

  15. #12
    _chase's Avatar Established Member
    Reputation
    95
    Join Date
    Dec 2019
    Posts
    58
    Thanks G/R
    17/49
    Trade Feedback
    0 (0%)
    Mentioned
    5 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by oiramario View Post
    Anyone knows how to locate the PlayerNameCachePointer? No xrefs with it, it's hard to write a idapython to find it.
    You can use the getName function in the CGObject's vmt, don't bother with the name caches because this works for literally all objects. GameObjects, Units, Players, Items, etc..
    So reduces the offsets you need for reading object names down to one

    Code:
    class CGObject
    {
    public:
    	uintptr_t vmt; // Now at 0x08
    
    	char padding_0x0010[0x08]; // Now at 0x10
    	uintptr_t descriptor; // Now at 0x18
    
    	char padding_0x0020[0x08]; // Now at 0x20
    	uint8_t type; // Now at 0x21
    
    	char padding_0x0058[0x37]; // Now at 0x58 
    	WowGuid guid; // Now at 0x68
    };
    
    
    const char* CGObjects::GetName(CGObject* object) {
    	return (*reinterpret_cast<const char* (__fastcall**)(CGObject*)>((uintptr_t)object->vmt + (0x08 * 15)))(object);
    }

  16. #13
    oiramario's Avatar Established Member
    Reputation
    85
    Join Date
    Mar 2021
    Posts
    133
    Thanks G/R
    36/51
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks for reply.
    I just want to know how to figer them out, and then get player names by using memory reading. At this moment, i dont want to use vmt.
    Do you know the function name or addr or pattern or some else tips?
    Code:
    class eUnitName:
        PlayerNameGUIDOffset = 0x20,
        PlayerNameStringOffset = 0x31,
        PlayerNameCacheNext = 0x0,
        PlayerNameCachePointer = 0x231EB18,
    Last edited by oiramario; 05-10-2021 at 02:05 PM.

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 12:52 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