Why priority sequence doesn't work ad expected?

Hi all, first of all I want to thank you @TimothyLuke for creating all of this and all contributors for their hard work and help to our community.
Secondly I’ve lurked how-tos, guide and hundreds topics before ask you help.

That said, I’ve an issue with my macro and I need to understand what I’m doing wrong.

I created a simple priority macro as follows:

Main sequence:
/cast Barbed Shot
/cast Kill Command
/cast Cobra Shot

So I should got this sequence:

Barbed Shot
Kill Command
Cobra Shot
Barbed Shot
Cobra Shot
Kill Command
… and so on…

The problem Is that the macro doesn’t respect the order and the CD of kill command, in fact when kill command is available (not on CD) the macro execute the Cobra Shot.
I can’t understand why.

My need are that the macro executes barbed shot, kill command when it’s not on CD and finally cobra shot as a filler when barbed shot or kill command are on CD.

What’s wrong?

Only your expectations.

Priority isn’t a true priority it’s more mathematical probability. Statistically on a four line macro, the first line will have been tried 4 times before the last line is attempted once. GSE can’t tell either what works or what doesn’t. It can only prepare a sequence and tell wow to press the next line every time you click the button. This is because of the anti bot measures Blizzard put into the mod and macro systems.

Before you say but WeakAuras, Heliki and DBM can see buffs and procs and what is on and off cool down, none of those mods are able to do anything apart from putting an alert on the screen for you to consume. They can in no way Act on that information in combat. GSE can’t either but it gives you the tools to preempt and predict.

If you are clicking at 100ms per second then it’s going to advance 10 lines within a second. Bearing in mind that the god is 1.5 seconds of you do the math it’s going to skip about 15 lines between the ones that work and the ones that don’t.

To account for this GSE has two functions that have been added in over the last year or so. The first is the “/gse debug“ command which will tell you line by line what GSE was attempting and why it worked or didn’t.

The other is timing based macros that have “/click pause x” (Where x is the number of seconds to wait) between the lines so that it advances the macro on time every time.

3 Likes

Thank you for clarification @TimothyLuke :slight_smile:
Can you please advice a link to a topic or article who explain the /click pause use or reset use?
I found some of these but I’m not sure to have fully understood the use of these tools and the wikis are really basic for my poor brain :slight_smile:

One more thing @TimothyLuke, about the pre-macro part.
I’ve as premacro three casts:

/cast Bestial Wrath
/cast Barbed Shot
/cast Barbed Shot

When I firstly start shooting the macro, only Bestial Wrath is fired, no Barbed shots at all.
What’s wrong here?

Your a PreMacro is three lines so will require three clicks to get the other two lines to fire. Are you clicking while the GCD is still in effect - if you are only the first line will work.

1 Like

The pause stuff is documented here: Add a wait/pause that can be placed into a macro. · Issue #615 · TimothyLuke/GSE-Advanced-Macro-Compiler · GitHub

1 Like

Ok. Is there a way to handle this type of premacro?

Yes - see my initial response about using pauses. The other Option is to not spam your macro but press it manually.

1 Like

Ok great. So I done this way

/cast Bestial Wrath
/click pause 1
/cast Barbed Shot
/click pause 1
/cast Barbed Shot
/click pause 1
/cast Aspect of the Wild
/click pause 1
/cast Kill Command
/click pause 1
/cast Cobra Shot
/click pause 1
/cast Kill Command

… but something weird. Some time the sequence go, sometime get stuck. Is it a reset issue, or…?

In your options did you enable external timing and set your Ms to match the speed of your keyboard/mouse clicking software? Without that GSE has no way to tell time.

1 Like

I don’t know what that Second screenshot is telling you but you need to enable the tick box next to the 70 in the GSE screenshot. The Use External MS Timings.

Also you need a number that divides into 1000. 70 doesn’t it will require 1050ms to count instead of 1000. You want either 100 or 200 as the sweet spot.

1 Like

Ok now I ticked the checkbox, but uhm… I’m confused… How do I have to set that value to use a 70ms timing?

(The second screenshot is my software to spam clicks by the Mac keyboard)

In GSE you have already set the value to 70. I am saying you want this to be 100ms or 200ms and you will need to work out what that looks like in your app. You may need to google that as I can’t tell you.

1 Like