Macro Variables

Ok just added in a new feature that will be part of the 2.6 release. It is a game changer to a degree. You can create custom variables on a macro base that can be used to substitute . EG you could have a set of options like [nochanelling,blah,blah,blah] you could set a variable called say 'MOD" and replace that list with ~~MOD~~ There is a ~~GCD~~ that comes out of the box and replaces with your OOC GCD. /click pause ~~GCD~~ for example. A variable can also be a function as long as it returns a value. eg: function() return getcooldown(somespell) end

Full Detail (including Screenshots):


i am very interested in this. going to check it out.

Just to be aware though these are not dynamic. They are evaluated while you are out of combat. If a proc ups your haste temporarily, this won’t be reflected in the GCD variable. If you change gear out of combat though, this will be reflected.

Note the MOD variable and how its used in the macro
For the other two lines - this is what they output.


Love it, can’t wait to try it. Been waiting for it LOL :wink:


I don’t think I understood what is variable in the addon I don’t even see it inserted and I downloaded the new version what would it do in practice for example me playing hunter bm?

call it like a Type of “language” abbreviation but with “rights”

u can use fewer words and time on doing your macros

BUT the thing here you are able now to see the timestamp running of the gcd in chat window ( and not in the debug window of GSE )


@gamers You wont see it till Prepatch hits.

I am trying to think of how to use this for my classic hunters burst macro. I lost it in the update and now i need to rebuild it. but I’m thinking of how to put in the aimed shot cd time so if i spam it I don’t clip my autoshots. The one i had working popped my earthstrike and rapid fire and then aimed shot multi shot. It was really good at deleting people lol

@TimothyLuke I have been playing around with this. It appears variables are not recalculated during combat? My testing seems to indicate no. If it can, then I am guessing a macro cannot read the changed value until after combat ends? This would be awesome if it did, but simple reading of GetSpellCooldown would mean we could create conditionals in our macro, a real BIG game changer if this was allowed. For example, the following variable is not re-evaulated during combat when I GSE.Print() in a macro sequence:

function() local start, duration= GetSpellCooldown(19574) if ( start > 0 and duration > 0) then local cdLeft = start + duration - GetTime() return tostring(cdLeft) end return tostring(0) end

1 Like

They are only evaluated out of combat as once combat starts they are locked. If you want gSE to calculate in combat this is possible but not on Blizzard servers. This limitation is explicitly noted everywhere I talk about Variables.

From earlier in this thread …

1 Like

Thank you, I missed that, I read the top post, but didn’t fully read the remainder of the thread, my apologies. :slight_smile:

I’ve tried using /click pause ~~GCD~~

As far as I can tell it isn’t working. The reason I was playing with this was to solve my timing problems (using debug).

I understand that ~~GCD~~ is a feature of gse2. I was able to use the print command in this thread to prove the variable has a value. But /pause isn’t documented anywhere as being a supported wow macro command.

Is /pause command gse2 provides?

Yes it’s only a GSE thing and you need to set it up in GSE’s options. Was added a year ago.