-
Originally Posted by
_CodeMonkey
Apparently there's no need to detour or modify anything. As PAGE_CHECK_A scans all pages for a certain pattern, i just allocated unmodified warden module and never get detected.
+5 rep for an innovative solution!
-
Private
Originally Posted by
namreeb
+5 rep for an innovative solution!
Haha, thanks I did something stupid?
-
Originally Posted by
_CodeMonkey
Haha, thanks
I did something stupid?
No, I was being serious. The Warden page scans report if they find the matching page. If a server is clever enough, they can make it so the standard removing of all patches before (and re-applying after) Warden is tick'd by the client is not enough.
-
Member
Active player's current class is at 00CECAAC (the ids are from CBDClass entry +0x3C)
public enum ClassType
{
None = 0,
Warrior = 4, //1,
Paladin = 10, //2,
Hunter = 9, //3,
Rogue = 8, //4,
Priest = 6, //5,
Shaman = 11, //7,
Mage = 3, //8,
Warlock = 5, //9,
Druid = 7, //11
}
-
Member
Anyone know how to get a Unit's height? I want to draw boxes around units in Direct X and I'm stuck trying to find a Unit's height. Looking through the named idb for alpha to see if I can find anything.
-
Contributor
It's inside CGPlayer_C (or maybe CGUnit_C i can't remember), but for most cases you can just use tauren's height.
Last edited by Vandra; 09-07-2016 at 06:48 AM.
"If it compiles, it works."
-
Banned
Does anyone know which packet opcode contains the player's gold?
-
Originally Posted by
luckruns0ut
Does anyone know which packet opcode contains the player's gold?
It is not its own packet. It's in the descriptors which come from SMSG_UPDATE_OBJECT
-
Banned
Originally Posted by
namreeb
It is not its own packet. It's in the descriptors which come from SMSG_UPDATE_OBJECT
Aha, I spent ages looking through Mangos for it yesterday, thanks.
-
Member
Hello guys! Please, tell me how to do the movement of the character in coordinates, as is done in vanillabotter? How to read and write the coordinates into a file I know. I am interested in the implementation MoveToClick mechanism - how to make a mouse click on coordinates of which will move the character and without the participation of the mouse? Thank you very much in advance!
P.S.
Sorry for my english
P.S.P.S.
I found how to send a character to a marker: mov [00C4D888], 0000000C/00000004.
Now another question - how to put a marker on the desired coordinates?
Last edited by djanius; 10-12-2016 at 11:14 PM.
-
Originally Posted by
djanius
Hello guys! Please, tell me how to do the movement of the character in coordinates, as is done in vanillabotter? How to read and write the coordinates into a file I know. I am interested in the implementation MoveToClick mechanism - how to make a mouse click on coordinates of which will move the character and without the participation of the mouse? Thank you very much in advance!
P.S.
Sorry for my english
P.S.P.S.
I found how to send a character to a marker: mov [00C4D888], 0000000C/00000004.
Now another question - how to put a marker on the desired coordinates?
Trigger CTM manually. Scan for changed address followed by unchanged a few time while the toon moves.
Do another manual CTM click. Scan for changed once. Scan for unchanged few times while toon is moving.
Rinse and repeat til you got them.
Last edited by Corthezz; 10-23-2016 at 02:48 PM.
Check my blog: https://zzuks.blogspot.com
-
Post Thanks / Like - 1 Thanks
djanius (1 members gave Thanks to Corthezz for this useful post)
-
Member
Originally Posted by
Corthezz
Trigger CTM manually. Scan for changed address followed by unchanged a few time while the toon moves.
Do another manual CTM click. Scan for changed once. Scan for unchanged few times while toon is moving.
Rinse and repeat til you got them.
Thank you very much for help! All perfectly turned out.
-
Post Thanks / Like - 1 Thanks
Corthezz (1 members gave Thanks to djanius for this useful post)
-
Banned
How do I smooth CTM, in vanilla the toon seems to move 1 "block" forward not to the point you clicked is there a way to fix this?
my CTM method is
PHP Code:
public void ClickToMove(float x, float y, float z, ulong guid, int action, float precision, IntPtr playerBaseAddress)
{
// Offset:
IntPtr CGPlayer_C__ClickToMove = new IntPtr(0x00611130);
// Allocate Memory:
var GetNameVMT_Codecave = _wowHook.Memory.AllocateMemory(0x3332);
var Pos_Codecave = _wowHook.Memory.AllocateMemory(0x4 * 3);
var GUID_Codecave = _wowHook.Memory.AllocateMemory(0x8);
var Angle_Codecave = _wowHook.Memory.AllocateMemory(0x4);
// Write value:
_wowHook.Memory.Write(GUID_Codecave, guid);
_wowHook.Memory.Write(Angle_Codecave, precision);
_wowHook.Memory.Write(Pos_Codecave, x);
_wowHook.Memory.Write(Pos_Codecave + 0x4, y);
_wowHook.Memory.Write(Pos_Codecave + 0x8, z);
try
{
_wowHook.Memory.Asm.Clear();
_wowHook.Memory.Asm.AddLine("mov edx, [" + Angle_Codecave + "]");
_wowHook.Memory.Asm.AddLine("push edx");
_wowHook.Memory.Asm.AddLine("push " + Pos_Codecave);
_wowHook.Memory.Asm.AddLine("push " + GUID_Codecave);
_wowHook.Memory.Asm.AddLine("push " + action);
_wowHook.Memory.Asm.AddLine("mov ecx, " + playerBaseAddress);
_wowHook.Memory.Asm.AddLine("call " + CGPlayer_C__ClickToMove);
_wowHook.Memory.Asm.AddLine("retn");
_wowHook.Memory.Asm.InjectAndExecute((uint)GetNameVMT_Codecave);
}
catch
{
// ignored
}
_wowHook.Memory.FreeMemory(GetNameVMT_Codecave);
_wowHook.Memory.FreeMemory(Pos_Codecave);
_wowHook.Memory.FreeMemory(GUID_Codecave);
_wowHook.Memory.FreeMemory(Angle_Codecave);
}
It is then called with,
PHP Code:
lua.ClickToMove(Player.x + 15, Player.y, Player.z, 0, 4, 0, Player.BaseAddress);
I saw the post by DarkLinux as below, but I don't know how to go about replacing the mov, please can someone point me in the right direction.
Found a quick fix! If you go to 0x0060FC30 you will see,
Code:
mov [00C4D888],0000000C
If you NOP it out or change it to 0x4 click to move will not go away, even when you are on top of your target. But you can click on any location / surface, no more stutter! But you then need to add your own distance check, but I think thats better then it stuttering. Or you could just leave it on, have not tested.
Code:
mov [00C4D888],0000000C
to
mov [00C4D888],00000004
I can see the value
he mentions but how to i replace it via assembler / C#
Edit: Figured it out - however, movement still looks odd - but it moves to where i clicked.
PHP Code:
byte[] fixCTM = new byte[] { 199, 5, 136, 216, 196, 0, 4, 0 };
wowHook.Memory.WriteBytes(new IntPtr(0x0060FC30), fixCTM, false);
Last edited by WiNiFiX; 11-10-2016 at 03:13 PM.
-
Be careful using this. Most 1.12.1 servers are scanning the address.
Check my blog: https://zzuks.blogspot.com
-
Banned
Originally Posted by
Corthezz
Be careful using this. Most 1.12.1 servers are scanning the address.
Thanks for the heads up, I tested on Kronos last night safely, or do private servers also only ban in waves?
How do you manage your movement if CTM is detected?