Auto Hot Key Tutorial

I have managed to do it now and thank you, although one of the keys wouldn’t turn off when I logged out lol I have to reboot my comp.
Thank you for script and help in getting it to work :slight_smile:

Where do i change the MS please Rosdav? I have treid to find it but script in not my thing, cheers :slight_smile:

Sorry, I’m not sure what you mean by “MS”… could you be a bit more specific?
You can Suspend any hotkeys firing by using Ctrl+Alt+S key combination (Suspend is built into my script).
Hotkeys can be made Active again by pressing Ctrl+Alt+S a 2nd time.
You can also stop the script running entirely by right clicking the “H” icon in the system tray and then left clicking on “Exit” in the context menu that is displayed.

I’ve modified the original AHK script above to only spam a hotkey if the current active window is the same one when your hotkey was first activated.

This means that your hotkey will only run in the World of Warcraft window it was first toggled on in and will prevent the hotkey from continuing to fire repeatedly if focus changes to another window or if World of Warcraft window was closed while hotkey loop was firing.

You’ll want to make a backup copy of your previous AHK script and then copy and paste the newly modified script above and use that script from now on to spam your macro keys.

For wow add

#IfWinActive, World of Warcraft

at the top and to stop the AHK add


at the end Esc = escape button

By MS I mean the speed of the macro?
Will try the new script, thank you fo are this :slight_smile:

Should I add what Toni suggest to and if so where exactly please

Thank you for all the changes Rosdav, working brilliant now. Helping me in game big time :slight_smile:

Making like the game a bit more again lol

To control the speed of the macro, change the number following the Sleep command in the Loop near the bottom of the script.
The current number 30 means 30 ms (milliseconds).
A larger number means slower clicks, smaller means faster clicks.
I wouldn’t go below 17 (would probably outpace windows event mgr itself).
If you want to slow the clicks down to a half second or a full second, use 500 or 1000, respectively.

Toni’s suggestion to use a hotkey to immediately end the script is a good one, though I would not use the ESC key as it is used inside WoW to either summon the game menu or to close any open dialog windows such as Bank, Inventory, Mail, etc.

I’ve added a single line of code to the script above that makes Ctrl+Win+X a hotkey that invokes ExitApp which will Immediately terminate this script and unload it from memory.
But you would need to press the hotkey before you closed or exited WoW as it will only work inside the game client window.

Thank you for that information & help you have give me, If I want to change the MS can I just changed and save the document or do a new one, what is no problem anyway ?

No need to create a new one, you can simply modify the existing .ahk script file.

After saving your changes, if the script was already running in the system tray, simply right-click on the “H” icon and then left click on “Reload This Script” in the context menu. This will cause the script to be reloaded and should include your new changes.

Hi Rosdav is this scripting allowed by blizzard?

This post is directed @Everyone, not just moobie.

The question “Will GSE and/or AHK get my WoW account banned?” has been asked and debated numerous times on these forums, as well as other forums on the web (including Blizzard’s forums).

Regarding this topic that has been hotly debated over the years, I have two recommendations:

  1. Search the WowLazyMacros forums as well as Blizzard forums, read those conversations and decide for yourself.
    I would NOT recommend searching reddit or other non-WoW forums as you are not as likely to get a balance of players arguing both sides of the issue.

  2. Do NOT behave in-game in such a way as to give another player a reason to report that your toon is acting suspiciously (i.e. possibly using a bot of some kind).
    For the most part, this means DO NOT EVER walk away from your keyboard and leave an AHK script (or a keyboard/mouse hardware macro) running… especially if you’re PVP’g in battle grounds, arena, South Shore, or just generally being around a large number of other players.

Here are some of my own observations and thoughts regarding this:

  • Blizzard does NOT treat World of Warcraft the same as Overwatch.

  • WoW has it’s own built in macro system. Using the macro commands and APIs provided, it simply isn’t possible to create an in-game macro that will get you banned.

  • Overwatch is largely player vs player and as such, has NO built in macro system.
    It’s EULA specifically states that using macros of any kind (mouse, keyboard or script) will get you an instant and permanent ban.

  • Even a cursory search of the web will turn up a number of players reporting that AHK got their blizzard account banned. Look more closely and you’ll notice that a lot of them were playing Overwatch, not World of Warcraft.

  • In a number of cases where the banned player was playing WoW, they mention having stepped away from their keyboard (was AFK) for a few or more minutes and left AHK (or their hardware macro) running while they were gone.

  • Botting in World of Warcraft will get you banned. There are lots of bots for grinding XP, PvP and Gold. Using any of these bots is against WoW’s EULA and will definitely get you the ban hammer.

  • The GSE2 addon combined with AHK is NOT botting. You’re not firing multiple spells or keys with a single key press, AHK is NOT moving your toon or making any in-game decisions for you. All that it’s doing is pressing a single key repeatedly and that key has a macro attached to it which only fires one spell with each key press. All of this is permitted and perfectly fine in WoW.

  • As long as your AHK script is only spamming a single key that has an in-game macro attached to it, you shouldn’t have any issues.
    That being said, the minute you start using AHK to fire multiple keys from a single key press, fire off spell(s) based off of a pixel search, have it make in-game decisions for you, or doing anything that could be considered “botting”, you’ve crossed a line and have greatly increased the likely hood of getting your account banned.

  • There’s still a small chance you could get into trouble…
    IF you happen to be AFK,
    and IF you left your AHK script (or hardware macro) running,
    and IF your toon does anything slightly suspicious while you are obviously AFK,
    and IF one or more player(s) happen to notice that suspicious behavior,
    and IF said player(s) decides to report it to Blizzard,
    instead of just simply blowing it off.

  • Personally, I’ve been playing WoW for over 15 years and have used GSE2 (or similar addon) and AHK (or keyboard macro) for more that half that time and have never had any warnings or ban issues. However, I always make sure that I don’t leave my macro running while I’m AFK. In fact, if my toon doesn’t have a target or I don’t want it to acquire a new target, I make sure my macro is toggled OFF.

You can check if your macro is still running by just opening your chat line window. If it’s still running, that hotkey character will start zipping across the chat line. At that point, simply press the ESC key to close the chat window, then press the hotkey that was firing to toggle it off.


Hi Rosdav,

Thank you for your reply, I am still not sure I should use but thank you for all your help and advice over the last week :slight_smile:

I got this script to work. But I can’t figure out how to change the button it’s spamming. I know how to change the toggle button, per the original post, but no matter what, it seems to spam the macro only in my Action Button 1, when I’d like it to be 2 or some other spot, that I don’t save for things I usually press manually.

Edit: realized how to change it, but how specifically do I change it from 1-0, to numpad5? I tried ‘numpad5’ and it spammed N and U instead.

Been playing around with some scripts an there’s a question that is always lingering in my mind. Why do we need it to spam at such low ms numbers? I mean, GCD can’t be lower than 0,75s isn’t it?

And yet I see macros posted with suggestions about using 20ms. That’s spamming a macro 50 times a second. Is that really necessary? Shouldn’t 500ms be enough for all macros?

@ampersandwich I have fixed the issue with Numpad hotkeys not being spammed correctly.
Please recopy the entire script and change the hotkeys to whatever you wish and the script should now spam them correctly.

Hi @m0rf0,
The reason you want the script to be fast is that you have more than one spell that is on Cool Down, many of which will will come off cool down at some fraction of a second and while GCD is still up…
So your macro speed needs to spam your hotkey faster than just 5 or 7 times a second (which is about how fast a human could do it) so that your spell rotation is firing off those spells that just came off of cool down as quickly as possible.

But you’re also correct that the MS shouldn’t be too fast. Otherwise, you won’t be able to manually fire off a spell (such as an interrupt) because you won’t be able to squeeze in a keystroke in between the spamming of the hotkey.

I think a good “sweet spot” for the MS would be somewhere around 50 to 79 milliseconds. This means your macro is pressing your hotkey 12 to 20 times a second (which should be sufficient), but should still let you fire off a spell manually using a different action key on your mouse or keyboard.

1 Like

Thanks so much @rosdav. That is exactly what I thought indeed. So, essentially, you want a relatively high keystroke repetition, so once each ability is available there’s a key press in place. On the other hand, over a certain point, it might become overkill as it might not let you interfere with other “out-of-macro” key presses like long recast CDs, interrupts and so. Thanks for the clarification!

1 Like

Just as you say, though instead of using the word “interfere” I would say “insert” because you’re not pausing or stopping the macro. Simply interjecting a manual key stroke in between the keystrokes being spammed by the macro.

1 Like

Funny enough, on my fury warrior if I use the macro with 50ms I get around 50k DPS while if I use 15ms I get nearly 60k. Might keep it at 15, ha!