Advanced? questions about AHK and GSE

I spent a lot of the morning going through this board, and wanted to get a few questions answered. (EDIT- as I find answers I will try to post them here so others will not have to go through this)

  1. Mods (alt, shift, control). I have a AHK toggle macro where you toggle it on, it spams until you toggle it off. Do mods work with toggles, or do you need the AHK key spammer that only works while you are holding down the key? Or is it likely some other WoW keybind overriding? I like using Xbutton1 = mousebutton4 for turning on and off the macro, so maybe ALT+MB4, CTRL+MB4, SHIFT+MB4 are keybound to something else in WoW?

Answer- I did a little testing here. First I made sure I had no keybinds to the toggle spammer key. I used MB4, MB5, and F1 for a 3-toggle spammer that I posted on page 4 here. I then went into keybinds and picked an action bar I was not using, and deliberately bound and unbound all combinations, IE ALT-mb4, CTRL-mb4, SHIFT-mb4, ALT-mb5…when you bind something it erases the previous bind. So this should have removed any conflicting assignment within WoW. I then tried a simple mod, and it did not work. So you must have to actually keypress ALT+mb4 at the same time, and even though you keypress ALT, you are using the toggle to KeyAction mb4, and it does not trigger the mod. This is not a killer, because with enough toggles you can get around having to use those mods.

  1. Reset feature in GSE. When you check the reset box on the right side in your macro, will it reset on target? I had one forum regular tell me that castsequence reset=3/tar works in KeyPress, but not in Sequence since the timer stuff and reset functionality only apply to KeyPress. If I check the reset box, does it reset KeyPress and Sequence when I change targets? If I only want the KeyPress to reset, should I not use the reset feature of GSE and spell it out as I have been in the castsequences of GSE?

Answer- Looked at it again last night, and I think in the current version of GSE that is a combat reset.

  1. Toggles and overrides- If I have a toggle spammer ON with 100ms delay (10 presses per second), sometimes I can press and hold another action button down and it will go off. For instance I noticed that Enhancement Shaman basically has the same rotation for ST and AOE, except you apply the 10s buff/debuff Crashing Storm. SO I will run my basic GSE macro on an AHK toggle, and I can say press and hold Crashing Storm, and it will go off. But it is spotty. So I am wondering, is the chance of this override going off dependent upon the delay in your AHK spammer? IE if I go down to 50ms, I bet it will not go off. If I go to maybe 250ms, I bet it will override every time. Have any of you played around with this?

Partial answer- I did not do time testing on this, but if you press and hold something while your toggle is on at 100ms delay, you will get one cast off of it. Works for some things, but not others. So in the Shaman example, this can work for Crashing Storm. I did use a press and hold AHK spammer in combination with a toggle spammer, and if you press and hold it seems to override, but frequently the code will hang. So it is best to avoid this sort of macro structure.

  1. Generic 2 button toggle. Seems like this is the most common need, as there are single target/AOE spammers, or builder/spender spammers, so you need 2 toggles. Here is the one I think should work, with mb4 and mb5 (lower and upper thumb buttons on the mouse). I pieced it together from stuff I have read here, on the AHK boards, and elsewhere

Answer- I modified Daxton’s 3-button toggle AHK script, and posted my rework for mb4, mb5 and F1 on page 4 here.

  1. The ! key- seen a lot here. The way I understand it is !execute means if you are not presently executing, then execute? Supposed to be used for stances, druid forms, or stealth. But I had heard of guys putting it in for warriors in the execute phase to get more executes in rather than do other stuff. Seems counterproductive. Anyway, I was going around the block on Fury Warrior and Bloodthirst and Rampage. If you could use something like !Enrage to caveat usage of Rampage or Bloodthirst, it would make this a lot easier. If you are not Enraged, Bloodthirst or Rampage. Is this the sort of thing Blizzard deliberately disabled?

  2. GSE macro design with the sequence step function and boss mechanics- Seems like the general sequence can be set up by either recording actions or tinkering around with a long enough sequence to get a cold start sequence working well. BUT once the boss makes you do the Hokey Pokey, all of that timing gets thrown off. You are not changing targets so there is no way to really reset the macro with a target reset. How do you design around this? Do you keep a macro ‘loose’ where you can pop in a few other things if needed and still basically preserve the loop? How do you build a good GSE macro that does well when the boss mechanics throw off the timing?

  3. Can you use talent caveats in cast sequences? IE

/castsequence Agony, [talent:6/2] Haunt, Corruption

Would it skip Haunt in the above cast sequence if you were not talented in Haunt, or would it just hang period?

  1. Basic question on priority step functions.

Lets say you have a priority step function and the following sequence

/cast Smite
/cast Shadow Word: Pain

If you are standing still, it would never cast SW:Pain right? But what if you are moving and you can not cast Smite while moving? Will it then apply Pain? Seems to be an interesting way around DoT refresh if so.

  1. Focus frames.

I was thinking about how to do a Discipline Priest. The basic germ of an idea was this. Have an AHK spammer punch the DPS macro on the focus target. Make a simple assist playername, set focus to that target, go to last target macro such that you could punch it and know you would get the target of another player. Every DPS spell in the macro would have a focus target caveat, and if the raid doesn’t need healing this thing just DPSs hard on the focus. But you could click other players and shield them up with mods. So in KeyPress put maybe CTRL for PW:Shield so you could shield between DPS checks. Has anyone tried playing around with spam macros on focus frames? Does it work or is it just a headache? This seems to be maybe a solution for having to watch both player frames and the field at the same time.

Hey Lepew, thanks for your post. In addition to responding in your comment on the Affliction Warlock post I made I am more than happy to see if I can offer some insight to how I approach some of the issues you are having that were not yet answered.

Q 1. Mods (alt, shift, control). I have a AHK toggle macro where you toggle it on, it spams until you toggle it off. Do mods work with toggles, or do you need the AHK key spammer that only works while you are holding down the key? Or is it likely some other WoW keybind overriding? I like using Xbutton1 = mousebutton4 for turning on and off the macro, so maybe ALT+MB4, CTRL+MB4, SHIFT+MB4 are keybound to something else in WoW?

A:
-Mods do work with toggles. That is how I use my mods also. I use Side button 1 = Num 1; Side button 2 = Num 2, Side button 3 = Num 3. I keep NUM LOCK on and use a toggle method.

-I do not use AHK. I use Logitech Gaming Software with my G502. I made a video on how my setup looks here: Logitech Gaming Software Set Up and Destruction Warlock Macro

-AHK questions are best asked in our Discord Channel because I do not personally use it. See https://discord.gg/22K4WUj

Q: 5. The ! key- seen a lot here. The way I understand it is !execute means if you are not presently executing, then execute? Supposed to be used for stances, druid forms, or stealth. But I had heard of guys putting it in for warriors in the execute phase to get more executes in rather than do other stuff. Seems counterproductive. Anyway, I was going around the block on Fury Warrior and Bloodthirst and Rampage. If you could use something like !Enrage to caveat usage of Rampage or Bloodthirst, it would make this a lot easier. If you are not Enraged, Bloodthirst or Rampage. Is this the sort of thing Blizzard deliberately disabled?

A
I do not personally use it because it never works well for me. However I have not tried to macro every class or spec yet. That would be a massive undertaking. I prefer more traditional methods such as reset=combat/target over that.

Q 6. GSE macro design with the sequence step function and boss mechanics- Seems like the general sequence can be set up by either recording actions or tinkering around with a long enough sequence to get a cold start sequence working well. BUT once the boss makes you do the Hokey Pokey, all of that timing gets thrown off. You are not changing targets so there is no way to really reset the macro with a target reset. How do you design around this? Do you keep a macro ‘loose’ where you can pop in a few other things if needed and still basically preserve the loop? How do you build a good GSE macro that does well when the boss mechanics throw off the timing?

A
-Priority Macros :I have in recent times focused more on priority macros that use my main spells and buffs in the top of the macro, the spender, then the builder, then the spender again. This way no matter what happens in the fight the macro will always prioritize the spells on the top. There will always be mechanics that throw off your spells. If you want full control of a certain spell just take it off the macro.

-Using the CDs Effectively: If you want the big CD inside the macro but want to be more aware of it you can use weak auras or addons that flash your cds.

-Using Multiple Versions: I designed my Destruction Warlock macro with 2 Versions, a Builder and Spender. The builder will never use Dark Soul Instability (BIG CD) and the Spender Version of it will always try to.

-Concept: Builder V Spender
I did decide to include my Golem however because I tested the damage and it was very significant of a change to have the golem out every 3 minutes over just during boss fights. So you should test out which CDS you need and see the best way YOU want them incorporated. I did this one specifically because the Golem gives me more resource and damage. The Spender CD only gives me a damage buff and is therefore in efficient to use with the low priority damage from the builder rotation.

Q If you are standing still, it would never cast SW:Pain right? But what if you are moving and you can not cast Smite while moving? Will it then apply Pain? Seems to be an interesting way around DoT refresh if so.

A
It will always try to cast each spell when its conditions are met. Your conditions are correct and this is something I love to do but in a different way. I try to not include instant cast DOTs with no CD in the main macro rotation. For my balance druid I put the dots on the alt and ctrl key mod. For Affliction Warlock, I made a DOTS builder macro and a Spender Macro with the main dmg abilities.

However for my Destruction warlock I included my Conflag into both the builder and spender because it has a cd, increases haste, is not a DOT, and should be casted on CD. I prefer this because it offers me more control. Sure there may be better full cast sequence macros but I prefer to stick to a tried and true method for me personally.

Q 9. Focus frames.

I was thinking about how to do a Discipline Priest. The basic germ of an idea was this. Have an AHK spammer punch the DPS macro on the focus target. Make a simple assist playername, set focus to that target, go to last target macro such that you could punch it and know you would get the target of another player. Every DPS spell in the macro would have a focus target caveat, and if the raid doesn’t need healing this thing just DPSs hard on the focus. But you could click other players and shield them up with mods. So in KeyPress put maybe CTRL for PW:Shield so you could shield between DPS checks. Has anyone tried playing around with spam macros on focus frames? Does it work or is it just a headache? This seems to be maybe a solution for having to watch both player frames and the field at the same time.

This can work but it may be alot of adjusting before a match or boss. Not very lazy of you huh :wink: - If I would ever do this I would consider using a target of target macro. However the approach I have done is to just make a separate dps macro that I can use at the target I click with my mouse. If I need to think about DPS or Healing to LIVE I would just focus on healing. When there is no healing and it feels mindless I DPS. Its a personal contract I made with myself a while ago.