DM_Steel Affliction BfA

hey how do i edit the macro to add /cast Haunt??

hey @DM_Steel, im having trouble adding Haunt back into rotation i tried to follow what you said in a previous post but for some reason its not working. am im doing something incorrectly?

/cast Phantom Singularity /cast Haunt
/castsequence Unstable Affliction, Unstable Affliction
/cast Deathbolt
/castsequence reset=target/3 Shadow Bolt, Shadow Bolt, Agony

Hey there, I didn’t say it in my last post but this macro has really been helping me out and works like a charm. I see that you updated it yesterday, I’m not sure if you saw my post but do you think there is something I’m doing wrong with the second macro? Or did you fix it in the last update? What’s funny is that I actually came here to ask about whether or not you thought grimoire of sacrifice would be more useful for raiding, but it turns out you added it, yay! Thanks again Steel!

[quote quote=65080]/cast Phantom Singularity /cast Haunt
/castsequence Unstable Affliction, Unstable Affliction
/cast Deathbolt
/castsequence reset=target/3 Shadow Bolt, Shadow Bolt, Agony[/quote]

/cast Phantom Singularity
/cast Haunt
/castsequence Unstable Affliction, Unstable Affliction
/cast Deathbolt
/castsequence reset=target/3 Shadow Bolt, Shadow Bolt, Agony

Did the update fix your problem? You need Summon Darkglare and Phantom Singularity off CD for it to work.

thank you sir :slight_smile:

In a dungeon your macro can maker dps like follow icy veins build?

I’m not sure what you are asking, but I do not follow Icy Veins or any other website that tells me how to play my class. I just play it however it feels best.

Thank you

I’ll test your work in DG.

I hope to be the first dps

I’ll be finding out in a minute, I’ve been super busy, but I’ll edit this post once I find out. Just wanted to say again that even with that little issue this macro is still awesome and I appreciate your work. Do you use ahk and recommend a particular Ms? I have it running on 50ms and so far it’s alright.

UPDATE: so I figured out what my problem was. Because I’ve been relying on the first macro to do most of what I’m doing, I am inadvertently casting Phantom singularity and putting it on cool down, so that when I have enough Soul shards I start throwing afflictions and then using the second macro. Because I’m spending a lot of time using the first macro, there’s not really a way for me to use the second necro unless I take Phantom Singularity off the first one and just press it myself, which isn’t really a big problem. What actually been doing is leaving Phantom Singularity on the first macro, using it, throwing afflictions and agony, and then using the second macro and casting deathbolt manually since it’s not firing off on the second macro thanks to Phantom singularity. Not sure if I’m making any sense, but it’s really not that much of an inconvenience. This macro still works wonders for me.

I don’t use AHK, my corsair mouse came with software. I run at about 100ms for almost everything I do in WoW. Once I feel like my MS might be holding me back, I might work on tweaking it, but really it depends on your haste and your latency.

You think running at 100ms might improve my DPS? I mean I can just test that myself but if you’ve tailored it to 100ms maybe that makes a difference. Also, I updated my last post.

I open Bosses with the Burst Macro. I’ll toss Agony the Corruption. Then spam Unstable Afflictions until I’m out of shards, then spam macro 2. I might only get 3 UAs, but I normally get a 4th out, and if I’m really lucky, I’ll get 5. Even with 3 though, my Deathbolt still hits for around 20k to 30k.

If there is trash right before a boss, I will save all my CDs for the boss and just manually add Agony and Corruption, then spam Shadow Bolt so I can start the boss with 5 shards and my CDs.

DM_Steel,

I want to thank you for this lazy macro. I am learning how to do these, and your macro has been a great help. I think I have theory crafted a better version. My main changes would be

KeyPress
/targetenemy [noharm][dead]
/castsequence reset=target/3 Agony, Corruption, null
/petattack
/petdefensive

Sequence
/cast Phantom Singularity
/cast [talent:6/2] Haunt
/castsequence Unstable Affliction, Unstable Affliction
/cast Deathbolt
/castsequence reset=target/3 Shadow Bolt, Shadow Bolt
/castsequence reset=target/3 Agony, Shadow Bolt

Let me explain a few things. First of all you can add the talent conditional in front of Haunt, so when you are specced in to Haunt it will use it, and otherwise ignore it.

Next I toss in petattack and petdefensive into the main mash macro. I know you personally do not like this, but I find that if I make a mount macro with /petpassive in it, I can hit the mount macro in combat or out of combat and immediately call back the pet, and thus I have no issue by putting it into the main macro.

The way I came up with this was by doing a brute force timing construction, see below. The sequence above with you specced into sacrifice and soul conduit should generate this

A-PS-C-UA-D-S-A-UA-S-S then UA-S-A-UA-S-S

1.5 A A=18
3 PS A=16.5, PS=16
4.5 C A=15, PS=14.5
6 UA A=13.5, PS=13, UA=8
7.5 D A=12, PS=11.5, UA=6.5
9.5 S A=10, PS=9.5, UA=4.5
11 A A=18, PS=8, UA=3.5 note A refreshes after 9.5s
12.5 UA A=16.5, PS=6.5, UA=8
14.5 S A=14.5, PS=4.5, UA=6
16.5 S A=12.5, PS=2.5, UA=4, worst casse UA refreshes 6.5s
18 UA A=11, PS=1, UA=8
20 S A=9, PS=done, UA=6
21.5 A A=18, UA=5.5
23 UA A=16.5, UA=8
25 S A=14.5, UA=6
27 S A=12.5, UA=4

Here the left number is the time on the clock when the cast completes, the middle symbol the spell that just completed, and the last column the time left on durations. By pulling Agony out of the 2nd cast sequence and adding a 3rd cast sequence with agony and shadow bolt, we get one UA spaced by either two shadow bolts, or a shadow bolt and agony refresh. Your natural pattern was spacing UAs by one shadow bolt, and this was what was leading to the shard drain and making people take Soul Conduit over Creeping Death. The opener refresh on Agony is after 9.5s, and worst case in the repeat segment it refreshes after 10.5s, both of which are under the 18s natural duration, and the 15.3s duration you would get with Creeping Death. UA here refreshes at 6.5s which would easily make it with Soul Conduit, and would just squeak in under the 6.8s duration with Creeping Death.

So I think what this would do would keep UA on target, burn fewer shards, and that would let you bank shards to load up with a few extra UAs before a Deathbolt or do something else and run Creeping Death.

There were two things about this macro that I did not quite understand. First in the keypress section you have the castsequence with null. My understanding now is it does that sequence one time per target, and this is how you avoid spamming agony on the same target. Let me know if it works differently than that. I think if you dropped perma corruption, then you would need to add a refresh for corruption in the sequence section, and that would make this MUCH harder.

The other thing that I do not understand is I read somewhere GSE ignores target and timer resets in cast sequences. Have you found otherwise? You are putting in castsequence reset=3/tar and I was wondering did you check to see if when you changed targets these were actually resetting, or if you did not mash for 3s whether they were resetting.

So what I offer you is another approach to building these macros short of hitting the target dummy. Write out a new sequence, lay out the key order of the actions as they should execute, then see by math whether or not these things work.

Most of what I did there is for zero haste. As you up haste, cast times and GCDs go down right? Not sure if this tightens up well or not. Main concern is UA refresh.

Oh and I would uncheck the trinkets in this macro, because you want to save them for your burst macro.

Also I went around and around the tree over whether or not I should pull Deathbolt and Phantom Singularity out of the macro. From what I can tell we are looking at 30sCD on Deathbolt, 45sCD on Phantom Singularity, and 180s on Darkglare. If you were to pull these out and only Deathbolt when you had a target loaded up with DOTs and UAs, you would be losing 2 Deathbolt casts per 3min, and that is a DPS loss. SO the Icy Veins suggestion of casting it on CD, but pumping in a few extra UAs as it is about to come off CD is wise. I made a simple WeakAura icon to track Deathbolt, and I can just manually load up just before it lands.

I have yet to try this with a key spammer and AHK, so maybe someone else can let me know how it works.

This is awesome, however, timing on everything changes depending on how much haste you have. You may be perfectly timing all of your casts, but as soon as you get a random buff, all of that perfect timing goes out the window. This is why there is no perfect one-stop-shop macro that works for everyone.

There were two things about this macro that I did not quite understand. First in the keypress section you have the castsequence with null. My understanding now is it does that sequence one time per target, and this is how you avoid spamming agony on the same target. Let me know if it works differently than that. I think if you dropped perma corruption, then you would need to add a refresh for corruption in the sequence section, and that would make this MUCH harder.

100% correct. null is used to stop a sequence from repeating, therefore preventing you from spamming Agony over and over.

The other thing that I do not understand is I read somewhere GSE ignores target and timer resets in cast sequences. Have you found otherwise? You are putting in castsequence reset=3/tar and I was wondering did you check to see if when you changed targets these were actually resetting, or if you did not mash for 3s whether they were resetting.

This is because ‘reset=<time>’ only comes into play with a key press, not key action. As a result, timed resets are always ignored, since we’re always spamming the same key.

Another thing to consider is the macro spam-speed. When using ‘sequential’ macros, no matter what, you will constantly be skipping spells. If you’re spamming at 100ms but you’re in a global cooldown, your macro will be skipping spells. As a test, lower your spam speed to something like 50ms and watch the icon on your bar. It will be constantly flying even though you’re not actually casting anything. The only way to avoid this is by using ‘priority’ macros, but that brings with it a whole heap of other timing related issues.

Additionally, castsequence lines do not run in order!

For example:

/cast spell1 /cast spell2 /castsequence spell3, spell4, spell5 /castsequence spell6, spell7

Will actually cast in this order:
1, 2, 3, 6, 1, 2, 4, 7, 1, 2, 5

Spells 1 and 2 will constantly be skipped over due to spam speeds and the global cooldown.

Yeah, good point on skipping. Thanks for he clarification on keypress and key action. I think then the null command in a sequence becomes huge for GSE as it is the only way to do per target.

My aim here though was to try and get the basics roughly right. Agony should refresh before falling off as it generates seeds and is a big DPS source, and ticks up. I think this macro as I put it there over refreshes it (DM_Steel’s did as well), and I think this sort of over refresh just goes with the turf.

The main thing I was trying to work on here was to get the UA pattern closer to right. DM_Steel was going UA every other cast after the initial run through, and that is shard intensive. I think this should have 2 spells between UAs, which should be less of a shard drain, and perhaps permit Creeping Death.

The other really big thing here for me is this is my learning curve real world example. I wanted to give back something better, and add to what DM_Steel had done. Maybe someone else can take it further from here. We all benefit.

I think you’re on the right track - it’s just going to be hard to make that one-stop-shop that works for everyone. The best we can hope for is a good solid macro that works at around 90% efficiency for everyone.

With that in mind, would you mind posting your macro? I’d like to give it a whirl and throw some of my favorite tweaks into it. For example, I always throw this as the very top line in KeyPress

/cast [@mouseover,harm,nodead] Agony

This lets me just hold down my spam key and drop Agony all over a ton of mobs without having to leave my current target.

The reason I use reset=target/3 is because if I need to do something like heal my pet, I want the macro to refresh Agony when I resume. It might be an over-refresh, but I’d rather do that than risk letting it fall off while I wait for it to come back around.

I would love to have UA in a cast sequence with everything else, but if I get hit UA and don’t have a shard, everything locks up.

DM_Steel- I know why you use them, but from David Robertson’s post, they should not work since it is a key action and not a key press. Take a look at what he wrote. Did you verify they are working?

In his case, they will work - because he’s no longer pressing the key (he’s too busy healing his pet, or running for cover, etc).

They however won’t work for your typical spamming. Doesn’t hurt anything to leave them in. It’s a nice way to safely keep dots going without letting them fall off.

Apologies, I hadn’t thought of his use case, which is totally valid and makes sense.

EDIT: I should rephrase - “they won’t work for typical spamming” is bad wording and confuses things. What I should have said is “the reset won’t kick in”. In other words, those spells will still cast, but not enough time will have passed for the reset to happen.