Thank you.
However, I just don't get it.
I have found XYZ coordinates and they work perfectly well, but when I try to change the mapID, the value changes, but.. logicly.. the character possition in the world should also change, but it does not.
Where my logic went into the wrong direction?
And may be WoW is a smart azz and if my XYZ coordinates 'doesn't fit' into mapID coordinate range it simply doesen't change my mapID possition?
Maaaay be mapID is not a static adress and it also has an offset to playerbase.. because when I was trying to find out the pointer to adreses you gave me, it always lead me to adress that Apoc have found.
Last edited by Marikafka; 02-20-2010 at 06:05 AM.
That's very easy to understand. XYZR that are stored into any unit base is used by wow to always update (clientside) position (then you update it server side on move).
I suppose you understand that MapID is the id of the map you are on. When you change map, you don't do it client-side. You will be switched by the server, and thats how the client work (However, you could make yourself teleport to another map client-side with some more memory editing, but that's another story because you will still be at the same server-side pos).
So the MapID will be changed when you change map, but isn't used by the client in a "loop" to always update your character position.
I hope you understood.
Last edited by DrakeFish; 02-20-2010 at 09:12 AM.
I've searched and searched, and looked through previous info dump threads but cannot figure out what I'm doing wrong in getting the XYZ values of gameobjects.
Taken from 3.2 offsets, I've tried to use http://www.mmowned.com/forums/wow-me...s-3-2-0-a.html
Reading the DisplayID from DescriptorFields+displayID works, so I'm assuming that this isn't a problem with my descriptorfields and that it is really an issue with my offsets.Code:protected const uint gameObject_XPosition = 0xE8, gameObject_YPosition = 0xEC, gameObject_ZPosition = 0xF0, displayId = 0x8 * 4; public override float XPosition { get { return ObjectManager.Mem.ReadFloat((DescriptorFields + gameObject_XPosition)); } }
read it from baseaddress + offset instead of descriptor fields
I would not suggest going that direction... You will most likely hit a quick dead end.
LootFrame status: D584B8 (0 no lootframe, 1 lootframe opend)
Current Zone: B69624 (return the id of the zone)
Bg status: B6F020 (0 not queued, 1 queued, 2 pop, 3 in bg, 4 unknown)
Chatbox status: D61B00 (0 closed, 1 opend)
Is Inside: C3780C (0 inside, 1 outside)
Last edited by natt_; 02-25-2010 at 11:53 AM.
Hey All,
Just a few questions about this.
I always get stuff working thanks to the hundreds of posts here but...
I was wondering:
For example:
what's the "// Descriptors: 0x00A67C20" for?// Descriptors: 0x00A67C20
enum ObjectFields
{
OBJECT_FIELD_GUID = 0x0,
OBJECT_FIELD_TYPE = 0x2,
OBJECT_FIELD_ENTRY = 0x3,
OBJECT_FIELD_SCALE_X = 0x4,
OBJECT_FIELD_PADDING = 0x5,
//TOTAL_OBJECT_FIELDS = 0x5
};
also...
for my bot I tend to have to add something to the offsets (as i last recall i had to add 0x30 for the GUID)
just to try and get my code on the "same" level...
I've got a base address and i want to know the GUID
I use: (GuidOffset = 0x30) (CurObject = object address)
Code:private UInt64 GetObjectGuid(uint curObject) { try { ProcessMemoryReader Preader = ProcessMemoryReader.GetProcessMemoryReader(); return Preader.ReadUInt64(curObject + GuidOffset); } catch { return 0; } }
but "OBJECT_FIELD_GUID = 0x0" suggests i already did the 0x30 somewhere....
Also i was wondering, why doesn't the dump not involve X,Y,Z,F offsets, I'm always able to find them because they are always posted here by others, was just wondering.
Thanks to everybody for helping me create and improve my bot
XYZ and rotation are in a different struct than descriptors. Use search.
XYZ, rotation, transport GUID, among other things are in a separate struct.
There's a pointer at [unit+0x68] that will give you the entire movement struct. (There's also the 'inline' version further down the CGUnit_C class. Somewhere around the 0x700 range or something.)
Hello what is the Battelground starts in xxx seconds address!? Thank you
Does somebody know what function converts enemy speech? I want to do something like "Rosetta Stone" in WEH.