Hooking WoW menu

User Tag List

Thread: Hooking WoW

Results 1 to 8 of 8
  1. #1
    loll__loll__'s Avatar Member
    Reputation
    -6
    Join Date
    Nov 2008
    Posts
    9
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Hooking WoW

    Hi all,

    what is the best way to hook into WoW to execute some functions like LUA_doString and others? Is the CreateRemoteThread detectable? Or can I protect my hook via Warden hooks?

    Has somebody an idea how to hook some functions to make WoW load only 1 Pixel-Pictures as textures, so that the RAM usage of WoW reduces strongly?
    (Not for the eye, but to create something similar to a clientless bot)
    I guess I need to do this via a wrapper kernel32.dll to apply the hook at app start, does anybody have any other idea?

    MfG,
    loll__loll__

    Hooking WoW
  2. #2
    Valediction's Avatar Active Member
    Reputation
    37
    Join Date
    Jul 2012
    Posts
    48
    Thanks G/R
    8/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by loll__loll__ View Post
    Hi all,

    what is the best way to hook into WoW to execute some functions like LUA_doString and others?
    loll__loll__
    Did you try searching?

  3. #3
    loll__loll__'s Avatar Member
    Reputation
    -6
    Join Date
    Nov 2008
    Posts
    9
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Yes I did, some say it is best to inject, some say it is better to use a remote thread, I wanted know what you guys think / do.

  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)
    Your talking about 2 different things. You can inject and create your own thread, I dont think thats detected. You can also hook some DirectX function. If you want to call protected LUA functions you will need to call it from the main thread, so creating your own thread will not work. I hope that helps you out a little more. Also I dont think Warden has ever scanned the DirectX lib.

  5. #5
    migtron's Avatar Corporal
    Reputation
    18
    Join Date
    Jun 2010
    Posts
    22
    Thanks G/R
    0/1
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by loll__loll__ View Post
    Is the CreateRemoteThread detectable?
    Yes, but WoW doesn't try to do it.
    Originally Posted by loll__loll__ View Post
    Or can I protect my hook via Warden hooks?
    You can, but unless you want to patch the client, it's wasted time.
    Originally Posted by loll__loll__ View Post
    Has somebody an idea how to hook some functions to make WoW load only 1 Pixel-Pictures as textures, so that the RAM usage of WoW reduces strongly?
    Maybe try hooking ID3D11Device::CreateTexture2D? But I would wager that will only affect GPU RAM usage, not system RAM.
    Originally Posted by loll__loll__ View Post
    I guess I need to do this via a wrapper kernel32.dll to apply the hook at app start, does anybody have any other idea?
    That's a pretty roundabout way to do it. Why not start WoW with your own loader?
    Originally Posted by loll__loll__
    Yes I did, some say it is best to inject, some say it is better to use a remote thread, I wanted know what you guys think / do.
    Both are the same thing. Or what do you intend to start the remote thread with if not injected code? Make sure the main thread is suspended in a safe state when introducing the new thread! WoW functions are not inherently thread-safe, so calling them outside the main thread or taking sensible precautions is asking for trouble.

  6. #6
    loll__loll__'s Avatar Member
    Reputation
    -6
    Join Date
    Nov 2008
    Posts
    9
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thx DarkLinux and migtron for the answers.

    All I want to achieve with Lua is to cast spells by id or name and to not force the player to create settings for key bindings like Pirox did. Maybe I am just a little bit too fast with that, I don't even get the players health ATM...

    I thought about a hook or injection, which returns the 1 pixel picture on WoW's asset loading instead of the real requested picture.
    That should drive down the used RAM a lot.

  7. #7
    Valediction's Avatar Active Member
    Reputation
    37
    Join Date
    Jul 2012
    Posts
    48
    Thanks G/R
    8/4
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by loll__loll__ View Post
    All I want to achieve with Lua is to cast spells by id or name and to not force the player to create settings for key bindings like Pirox did. Maybe I am just a little bit too fast with that, I don't even get the players health ATM...
    While you can inject and use FrameScript__Execute to call some LUA to do what you wan't (CastSpellByName most likely) you can also use SendMessage (or PostMessage if you want background functionality) and direct keystrokes towards the WoW window to actually type those commands. It can be done reasonably fast, even faster if you use the clipboard. I suggest this since if that's your only reason to go in-process you may want to avoid the hassle all together, especially reading your current progress.

    Of course, being in process opens many more options...

  8. #8
    rens's Avatar Sergeant
    Reputation
    36
    Join Date
    Sep 2012
    Posts
    38
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by loll__loll__ View Post
    Thx DarkLinux and migtron for the answers.

    All I want to achieve with Lua is to cast spells by id or name and to not force the player to create settings for key bindings like Pirox did. Maybe I am just a little bit too fast with that, I don't even get the players health ATM...

    I thought about a hook or injection, which returns the 1 pixel picture on WoW's asset loading instead of the real requested picture.
    That should drive down the used RAM a lot.
    Use LUA not SendMessage/PostMessage, LUA is powerful and allows you to do so much more.

    On another note, you should try memory reading before jumping in and attempting to hook wow.

Similar Threads

  1. [Code] How to hook wow events!
    By -Ryuk- in forum WoW Memory Editing
    Replies: 10
    Last Post: 10-12-2016, 12:42 AM
  2. Need to hook WoW exit/quit
    By alex_v in forum WoW Memory Editing
    Replies: 3
    Last Post: 08-24-2015, 01:46 PM
  3. [Question] What makes hooking WoW unsafe
    By mathix in forum WoW Memory Editing
    Replies: 12
    Last Post: 07-24-2014, 06:48 AM
  4. Hooking WoW Events without LUA-Handler Proc?
    By berlinermauer in forum WoW Memory Editing
    Replies: 1
    Last Post: 01-03-2014, 08:46 PM
  5. If i hook Wow Crash
    By hamburger12 in forum WoW Memory Editing
    Replies: 2
    Last Post: 03-06-2010, 04:54 AM
All times are GMT -5. The time now is 10:41 PM. 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