CTM Attack Problems (1.12.1) menu

User Tag List

Results 1 to 7 of 7
  1. #1
    killmeplease's Avatar Member
    Reputation
    1
    Join Date
    Jul 2017
    Posts
    10
    Thanks G/R
    3/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    CTM Attack Problems (1.12.1)

    Hi all,

    Thus far, I can use CTM to move from point A to point B, and I can also use it to interact with an NPC. At the moment, I am struggling with attacking a target. In regard to the target, I have the following data from the object manager:
    • name
    • guid
    • coordinates
    • type

    and a few others that are, in my opinion, of no importance here. What I would like to do is pass the coordinates to CTM, GUID to CTM, and attack the target in such a way. Please allow me to first state that I did indeed read the posts written by other people on this forum. Unfortunately, what worked for them did not work out for me as I do not wish to hook any of the LUA functions or anything like that. I am attempting to make my bot as passive as possible.

    Thank you all for your time and effort.

    CTM Attack Problems (1.12.1)
  2. #2
    Erke's Avatar Member
    Reputation
    2
    Join Date
    Apr 2012
    Posts
    17
    Thanks G/R
    2/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Calling OnRightClick on the Unit while CTM is active will both CTM walk to the target and toggle on Auto Attack. Alternative if you don't get it to work the "proper" way!

  3. #3
    namreeb's Avatar Legendary

    Reputation
    668
    Join Date
    Sep 2008
    Posts
    1,029
    Thanks G/R
    8/222
    Trade Feedback
    0 (0%)
    Mentioned
    9 Post(s)
    Tagged
    0 Thread(s)
    I'm not sure if what you want is possible from CTM alone. If it is, the way to find out how to do it would be to attach your favorite debugger to WoW, manually right-click a mob to attack (with CTM enabled), and use the debugger to examine the CTM data structure. If I recall correctly, there are different CTM types. There might be that will trigger attacking. If there is, doing this should identify the number you have to use.

    Note that CTM is not the same as follow. It will not update your target destination based on the movement of your target. If you are traveling even a moderate distance to the target, keep in mind that it may have patrolled far enough to be out of melee range upon arriving at your destination.

  4. #4
    DarkLinux's Avatar Former Staff
    CoreCoins Purchaser Authenticator enabled
    Reputation
    1627
    Join Date
    May 2010
    Posts
    1,846
    Thanks G/R
    193/539
    Trade Feedback
    16 (100%)
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)
    I do not wish to hook any of the LUA functions or anything like that.
    I would just inject shell code, the 1.12.1 warden cant really detect function calls. No hooks are needed.

  5. #5
    killmeplease's Avatar Member
    Reputation
    1
    Join Date
    Jul 2017
    Posts
    10
    Thanks G/R
    3/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    @namreeb
    "Note that CTM is not the same as follow. It will not update your target destination based on the movement of your target. If you are traveling even a moderate distance to the target, keep in mind that it may have patrolled far enough to be out of melee range upon arriving at your destination. "
    This should not be a problem. I have a seperate thread of the program that monitors the changes in the object manager, and of a particular target as well, if the coordinates change, they are updated and detour will give the new calculations for the path if needed, so even if the target is in a continuous state of motion, program will just update the coordinates and is capable of chasing any given target as long as that target is in the object manager. I made it so that there are multiple threads in C++ for stats monitoring and action taking. Anyway this should not be an issue.

    On the other hand I did examine the CTM and simply moving the player to given coordinates is not really a problem. You write to memory locations for X Y C and set ctmState to 4 which is for moving. Also NPC interaction is done in a similar way with ctm, X Y Z are written then at a different location GUID of the NPC is written, GUID that is acquired from the object manager and interact flag is passed, I am not sure which number it is now, I am on my laptop but anyway you get the idea.

    Now the problem comes when I wish to attack a target the flag is 10 as far as I can see. And there are some other values that are written in CTM, I know what most of them are, but I seam to be unable to reproduce CTM click to attack. Even after going through what was written in RAM, it seam to be dependent on either the right click or the actual target acquisition.
    So I as you said namreeb am not even sure if this is possible, my assumption that this can be done via CTM is based on the fact that there indeed is a flag attack for CTM.

    I am not an expert in these matters but I have tried to keep the program non intrusive and as passive as possible.
    I just open up the thread handle in C++ with proper permissions and mostly just read from ram aside from CTM move and CTM interract, I know that most people opted for C# but I just never really got around to liking it that much and I went ahead with C++.

    My alternative approach for this was to target a mob come in range and then either cast a spell or just attack.

    Do you know how would I go about targeting a mob?

    There is a dirty workaround of putting the GUID into the lasttarget and then just press targetlast target, but I would like to avoid this approach and be able to acquire a target by GUID if possible, so long as I can acquire it I can then attack it easily or that is the idea anyway.

    @DarkLinux

    Could I ask you to explain a bit more in regard to
    I would just inject shell code, the 1.12.1 warden cant really detect function calls. No hooks are needed.
    Are you referring to me calling a LUA function from its address or giving inline assembly instructions or something else? I did not really understand this part very well. Could I by any chance ask you to provide an example.

    Again thank you all so much I have went over the posts on this forum a lot of times and it contains some awesome info.
    Last edited by killmeplease; 10-28-2017 at 07:07 AM.

  6. #6
    Erke's Avatar Member
    Reputation
    2
    Join Date
    Apr 2012
    Posts
    17
    Thanks G/R
    2/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by killmeplease View Post

    Do you know how would I go about targeting a mob?

    There is a dirty workaround of putting the GUID into the lasttarget and then just press targetlast target, but I would like to avoid this approach and be able to acquire a target by GUID if possible, so long as I can acquire it I can then attack it easily or that is the idea anyway.
    Afaik simply calling OnRightClick on the Unit in question would solve all three of your problems, it'll both target, walk-to and toggle on Auto Attack.

    I'm using
    Originally Posted by Valediction View Post
    I don't recall having any problems:

    Code:
    Declare: 
    public delegate int D_CGGameUI__Target(ref ulong guid);
    
    Use:
    fn.CGGameUI__Target__Hooked(guid);
    If you're going to use DLL Injection, use that function (CGGameUI::Target) which is designed to take GUIDs.
    At the moment for targeting and it works very well. Function located at 0x489A40 and you'll find OnRightClickUnit at 0x60BEA0. It's a thiscall so OnRightClickUnit(int UnitPtr, int Autoloot)

  7. #7
    killmeplease's Avatar Member
    Reputation
    1
    Join Date
    Jul 2017
    Posts
    10
    Thanks G/R
    3/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I can give it a shoot, but I would so much rather just write the GUID somewhere in RAM and have the target locked which is what I did, I basically wrote to Lock Target GUID in RAM the GUID of the mob I wished to target from object manager. And for the most part it seams to work but it is not really the same as targeting with the right click in a sense that mob icon health bar and so on show next to mine on the screen. It would seam that I do have a target lock when I write the GUID to Lock Target GUID as I can attack and cast spells but the GUI in game does not seam to respond well. Any thoughts?

Similar Threads

  1. Attacking problem{Help}
    By mikeyoung in forum Diablo 3 Memory Editing
    Replies: 18
    Last Post: 02-28-2013, 01:38 AM
  2. [Bot] Click to move problem (1.12.1)
    By Corthezz in forum WoW Memory Editing
    Replies: 4
    Last Post: 02-09-2013, 12:35 AM
  3. CTM action problem
    By Mr.Sergey in forum WoW Memory Editing
    Replies: 4
    Last Post: 03-10-2010, 12:57 PM
  4. ManGOS Platinum MySQL Problems (1.12.X Emulator)
    By methos0072001 in forum WoW EMU Questions & Requests
    Replies: 0
    Last Post: 06-16-2009, 05:42 PM
  5. [Problem] Town people in Queldanas attacking eachother
    By *Alexz* in forum WoW EMU Questions & Requests
    Replies: 4
    Last Post: 08-12-2008, 03:33 PM
All times are GMT -5. The time now is 04:56 AM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search