[Classic] 1.13.2.31882 menu

User Tag List

Page 2 of 2 FirstFirst 12
Results 16 to 26 of 26
  1. #16
    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)
    Originally Posted by Icesythe7 View Post
    simple code to increase nameplate range if anyone was curious
    Code:
    *reinterpret_cast<float*>(Base + 0x2534BF0) = 60.0f;
    That's amazing. Works great.

    I do have a question though.
    The ObjectGUID should be unique, right? (I mean the name implies that), though when I read out the GUIDs of all objects together with their positions and other info, I get a lot of duplicates.
    Also, the target and mouseover target have the same behavior. Am I doing anything wrong or am I misinterpreting the GUID.

    Also, I found the current players name at "Wow.exe+0x26133E8" (It's my first time trying to find offsets, hope this is useable and right lol)

    [Classic] 1.13.2.31882
  2. #17
    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)
    wow's GUIDs are unique. Keep in mind they are 128 bit numbers. If you only read 64 bit, then you might run into duplicates, especially since they are not randomly generated but have an actual structure encoded into them.
    "Threads should always commit suicide - they should never be murdered" - DirectX SDK

  3. #18
    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)
    Originally Posted by xalcon View Post
    wow's GUIDs are unique. Keep in mind they are 128 bit numbers. If you only read 64 bit, then you might run into duplicates, especially since they are not randomly generated but have an actual structure encoded into them.
    Aaaaah... Yeah I really have trouble finding resources for the proper types of fields. I was thinking it's a 64bit value as it returned the most promising results. 128bits works perfectly now and got no duplicates anymore (as far as I see).
    Thank you a lot.

    Another thing: The Object Types are single bytes, right? I found in the Constant Data Thread it's announced as "uint", though the values don't line up at all. I currently get 7 for myself, 6 for other player, 5 for NPCs and 8 for Objects like couldrons, foodcrates etc. But I can not line that up with any information I could find. Any search terms for these kind of things would be greatly appreciated! I just try to google for example "wow classic memory reading unit types" but that doesn't get the results I come up with. (No matter what variable type I use)

  4. #19
    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 xalcon View Post
    wow's GUIDs are unique. Keep in mind they are 128 bit numbers. If you only read 64 bit, then you might run into duplicates, especially since they are not randomly generated but have an actual structure encoded into them.
    Can you explain how a size of 4 stores 128 bits? assuming 4 is in bytes 4*8 = 32 bits, or am I misunderstanding the size in the descriptors?
    also what does flags and MIRROR_ALL mean?

  5. #20
    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
    Can you explain how a size of 4 stores 128 bits? assuming 4 is in bytes 4*8 = 32 bits, or am I misunderstanding the size in the descriptors?
    also what does flags and MIRROR_ALL mean?
    I'm not sure I get what you're saying, but I feel like you're trying to think of the whole GUID being in one single address, which it's not.

    Code:
    struct ObjectGUID {
        int guid1;
        int guid2;
        int guid3;
        int guid4;
    };

  6. Thanks KKira (1 members gave Thanks to ChrisIsMe for this useful post)
  7. #21
    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 KKira View Post
    Can you explain how a size of 4 stores 128 bits? assuming 4 is in bytes 4*8 = 32 bits, or am I misunderstanding the size in the descriptors?
    also what does flags and MIRROR_ALL mean?
    /* EDIT: Descriptor field sizes are actually not given in bytes but DWORDs and therefore need to be multiplied by 4 */
    Generally, yes, Descriptor Fields are given with their size in bytes (even though the values arent 100% correct, i recall seeing some comments on the MoP descriptor dumper tomrus has on his github). I'm not fully informed on this topic since the last time I actually played around with the object manager was back in cata.
    See, the GUID is structured as it contains several information like object type, server, npc id and so on.
    Originally Posted by wowpedia
    For creatures, pets, objects, and vehicles: [Unit type]-0-[server ID]-[instance ID]-[zone UID]-[ID]-[spawn UID] (Example: "Creature-0-970-0-11-31146-000136DF91")
    I assume that the "GUID" in the object descriptor is what wowpedia calls the "spawn id". The full guid is stored elsewhere.
    On the topic of mirror flags, i have no clue. Might have something to do with server synchronization. Maybe someone else can enlighten us.

    Another thing: The Object Types are single bytes, right? I found in the Constant Data Thread it's announced as "uint", though the values don't line up at all. I currently get 7 for myself, 6 for other player, 5 for NPCs and 8 for Objects like couldrons, foodcrates etc. But I can not line that up with any information I could find. Any search terms for these kind of things would be greatly appreciated! I just try to google for example "wow classic memory reading unit types" but that doesn't get the results I come up with. (No matter what variable type I use)
    It depends, what type are we talking about? There are actually 2:
    A 4 byte bit mask in the object manager linked list entries and a 1 byte type value in the object descriptor.
    The bitmask has a bit set for each descriptor type this object has while the type value in the object descriptor itself is the actual object type.
    The values in the constant data thread are probably severely outdated and I'm not in the position to verify the current ones since I'm only working on the 1.12.1 client at the moment - but I recall seeing some updated ones in one of the bin dump threads of legion.. or WoD, not sure. (I know there are quite a few, so this will be a bit of work, but i cant spoon feed you everything, right? )
    Last edited by xalcon; 10-09-2019 at 03:24 AM. Reason: Updated mistake. Descriptor size values need to be multiplied by 4
    "Threads should always commit suicide - they should never be murdered" - DirectX SDK

  8. Thanks KKira (1 members gave Thanks to xalcon for this useful post)
  9. #22
    shauren's Avatar Established Member
    Reputation
    65
    Join Date
    Feb 2009
    Posts
    60
    Thanks G/R
    2/28
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by xalcon View Post
    Generally, yes, Descriptor Fields are given with their size in bytes (even though the values arent 100% correct, i recall seeing some comments on the MoP descriptor dumper tomrus has on his github). I'm not fully informed on this topic since the last time I actually played around with the object manager was back in cata.
    See, the GUID is structured as it contains several information like object type, server, npc id and so on.

    I assume that the "GUID" in the object descriptor is what wowpedia calls the "spawn id". The full guid is stored elsewhere.
    Your assumption would be incorrect, that is in fact the full guid, each "field" in the format described on wowpedia does not take up a full int/byte/whatever, they are packed more densely
    See TrinityCore ObjectGuid class for an example (accurate for Creature guids but not all 40+ types) TrinityCore/ObjectGuid.h at c674a3a18843c79b133600667f0b2bfc4c3d6594 . TrinityCore/TrinityCore . GitHub

    Originally Posted by xalcon View Post
    On the topic of mirror flags, i have no clue. Might have something to do with server synchronization. Maybe someone else can enlighten us.
    These determine what fields you are allowed to see on client (checked serverside)

    Originally Posted by xalcon View Post
    It depends, what type are we talking about? There are actually 2:
    A 4 byte bit mask in the object manager linked list entries and a 1 byte type value in the object descriptor.
    The bitmask has a bit set for each descriptor type this object has while the type value in the object descriptor itself is the actual object type.
    The values in the constant data thread are probably severely outdated and I'm not in the position to verify the current ones since I'm only working on the 1.12.1 client at the moment - but I recall seeing some updated ones in one of the bin dump threads of legion.. or WoD, not sure. (I know there are quite a few, so this will be a bit of work, but i cant spoon feed you everything, right? )
    Constants data is indeed outdated, object types changed in 8.0 with addition of ActivePlayer and AzeriteItem stuff - applies to classic as well since its based on 8.0 client

  10. Thanks xalcon (1 members gave Thanks to shauren for this useful post)
  11. #23
    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 shauren View Post
    Your assumption would be incorrect, that is in fact the full guid, each "field" in the format described on wowpedia does not take up a full int/byte/whatever, they are packed more densely
    See TrinityCore ObjectGuid class for an example (accurate for Creature guids but not all 40+ types) TrinityCore/ObjectGuid.h at c674a3a18843c79b133600667f0b2bfc4c3d6594 . TrinityCore/TrinityCore . GitHub
    /* EDIT: A misunderstood the size in the descriptor fields. Size is indeed multiplied by 4 bytes, so the descriptor contains the full 128 bit GUID. Sorry! The following paragraph contains bullshit and is only retained to show how bad i am. */
    The code you are refering to uses the 64 bit _high part of the guid to encode additional data. I was talking about the lower 32 bit of the _low part. I think we are talking about different things here. I dare to say the ObjectDescriptor.GUID field does not contain the full GUID but only the lower 32 bit and the full GUID is actually stored in the object manager linked list entry. But - as always - take my information with a grain of salt :P There might be a way to encode 128 bit worth of data into a 32 bit space that I don't know about - but Trinity's ObjectGuid isnt doing that.


    Originally Posted by shauren View Post
    Constants data is indeed outdated, object types changed in 8.0 with addition of ActivePlayer and AzeriteItem stuff - applies to classic as well since its based on 8.0 client
    I see a lot of conflicting information about this, but 8.0 would make the most sense to me. Thanks for your input.
    Last edited by xalcon; 10-09-2019 at 03:20 AM.
    "Threads should always commit suicide - they should never be murdered" - DirectX SDK

  12. #24
    shauren's Avatar Established Member
    Reputation
    65
    Join Date
    Feb 2009
    Posts
    60
    Thanks G/R
    2/28
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I should have extended the hilighted lines to include one more function, my bad

    Adding to that, pay close attention to what ida shows you, client can compare/read/store entire guid at once using xmm registers
    Last edited by shauren; 10-09-2019 at 06:35 AM.

  13. #25
    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)
    Hi,

    Anyone found the offset for the Viewmatrix of the Camera?

  14. #26
    georgeon's Avatar Member
    Reputation
    1
    Join Date
    Oct 2019
    Posts
    2
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    please,how to get the unit name?
    ObjectName1 = ObjMgrPtr + 0x478,
    ObjectName2 = ObjMgrPtr + 0xE0,
    UnitName1 = ObjMgrPtr + 0x17B8,
    UnitName2 = ObjMgrPtr + 0xE0,
    the offset i can not get any more...thx

Page 2 of 2 FirstFirst 12

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 08:27 AM. 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