-
Member
Lazybot Pointer/Offset question
Hello,
I've developed an ObjectManager based on the Lazy Bot source code (patch 6.1.0 19702).
I can read all basic information for all objects in wow memory (GUID,object type, health, power etc.) and I've understood how the Lazy bot ObjectManager works.
Up to now I'm not able to reverse the wow.exe on my own to get pointer/offset information.
So I have to use the information from the dump thread.
My problem is that I need the following pointer/offset to read the alternative power of my char (eclipse,holy power etc.):
Source code from LazyBot:
internal enum PowerIndex
{
PowerIndexArrays = 0xDCC744,
Multiplicator = 0x10
}
I can't find any information in the current dump thread (patch 6.2.2.20574).
Can anyone help me to find the current values?
Thx
-
Elite User
.data:00E476AC PowerIndexArrays
-
Post Thanks / Like - 1 Thanks
Krypthos (1 members gave Thanks to charles420 for this useful post)
-
Member
Originally Posted by
charles420
.data:00E476AC PowerIndexArrays
Thank you charles.
I changed the address but it doesn't work.
I don't understand how lazy bot works here. Maybe it's too complicated for me yet - so I have to analyze it step by step.
Do you know how the eclipse value is stored in wow memory? -100 up to 100? I can find the holy power value (holy pala) with cheat engine (scanning for 0->1->2->3) but if I scan for 0 (eclipse middle position value) and then for 100 or -100 (eclipse bar max position value) I don't get any results.
Thank you
By the way this is the lazy bot code:
internal enum PowerIndex
{
PowerIndexArrays = 0xE476AC,
Multiplicator = 0x10
}
public int Eclipse
{
get
{
return (int)this.GetPowerByPowerType(Constants.PowerType.Eclipse);
}
}
public uint GetPowerByPowerType(Constants.PowerType PowerType)
{
uint num = this.GetPowerIndexByPowerType(PowerType);
uint num2 = Memory.Read<uint>(base.BaseAddress + Descriptors.StartDescriptors);
return Memory.Read<uint>(num2 + (0xF0 + num * 4));
}
private uint GetPowerIndexByPowerType(Constants.PowerType PowerType)
{
uint num = Memory.Read<uint>(base.BaseAddress + Descriptors.StartDescriptors);
uint num2 = num + 0xE0;
uint num3 = (uint)((int)Memory.Read<Byte>(num2 + 1) + PowerType + (int)((uint)Pointers.PowerIndex.Multiplicator * Memory.Read<Byte>(num2 + 1)));
return Memory.Read<uint>(Memory.BaseAddress + (uint)Pointers.PowerIndex.PowerIndexArrays + num3 * 4);
}
Last edited by Krypthos; 10-28-2015 at 05:52 PM.