High DPS, multi-purpose BM Macro (Updated)

This is my general purpose macro. I use it for raids, PvP, world quests and dungeons. With the new GS2 you can create different macros embedded within the one macro and have very different macros for each type of zone you are in. This macro attempts to take advantage of that to the fullest degree.

So let me explain the macro and my logic for the different elements of the macro and having things in the order they are in.

First, I should note that I am disabled, and so one of my goals is to reduce the number of things I have to pay attention too. Mainly, I want to focus on my movement and handling boss mechanics effectively. I am willing to sacrifice some tiny amount of DPS to accomplish this goal.

Secondly, according to Warcraft Logs, I routinely achieve 95+ percentile for my DPS on most fights. This suggests that my macro works very well, at least for me. As this macro has grown in popularity, many people are reporting exceptional results. This encouraged me to add additional features and ideas that have been suggested.

Finally, while this macro attempts to be a sort of one-button win macro, there are choices built in to it. It operates as a single target and multi-target macro and I don’t find it necessary to have separate macros based on the number of targets.

In the KEYPRESS section I place all the non-GCD abilities. Abilities that are NOT on the GCD (Global Cooldown) can be cast and do not inhibit the casting of other abilities. This means that using these abilities does not reduce your DPS at all. I also include several pet abilities to cover the bulk of situations and pet stances. I generally run a spirit beast in Ferocity.

If no focus target is set, misdirect goes on the pet. Otherwise it’s on the focus target. If no pet is out, it summons Pet 1 (my spirit beast). If the pet dies (and in Ferocity) it uses HotP to rez the pet. Spirit Mend is used on me on cooldown. If using Cunning, Roar of Sacrifice is used on me (I rarely use this to be honest).

Finally in the KEYPRESS section I have Multi-Shot available when I press a MOD key (CTRL). I put this last so that all those other buffs will be used even if I am pressing a MOD key. Holding the MOD key also prevents the main macro section from running. So I can utilize my focus most effectively. Usually this means burning my focus on Multi-Shot, then letting the MOD key go to let Dire Beast get cast, then pressing the MOD key again. This provides a very effective Multi target macro without having to switch to a different macro and avoids using focus on other abilities that are not optimal.

OK, now the main macro section. I should note that the order of abilities is one that I found to be the best after a ton of trial and error and testing. I use a priority rotation in an effect to make the first abilities more likely to be used prior to the latter abilities. However, since there is only 3 or 4 abilities (depending on which configuration is active) this isn’t a major issue.

I start with Dire Beast, because it is focus free and generates focus. It also increases damage when using Way of the Cobra (I usually go with Dire Stable but I have had great success DPS-wise with either).

Next is Kill Command as my primary damage dealing ability.

Next is AMOC. I put AMOC last for the damage abilities, because with low health adds, I don’t like burning all my focus on AMOC that is only active for 3 seconds or less. It just is the lowest priority for me.

Last I have Mend Pet. I have this in there for World Quests and farming and for PVP. For world quests I use a [nogroup] modifer so it is only used when I am solo. For PvP, it is cast normally. It’s a bit of a DPS loss on boss fights as it can cost you a few GCDs over the length of a fight, so I do not use it there. For world quests and PvP though, it isn’t a factor and there are many advantages.

So now I need to talk about what isn’t in the macro.

First and most importantly, Cobra Shot. I use Killer Cobra, and I want my focus as high as possible for when this is active (during Bestial Wrath) so I use this ability manually. I save it for Bestial Wrath and work it in after Kill Command is used to rest that cooldown. Otherwise, I will use it when I have high focus and plenty of time to regen the focus before Bestial Wrath is available again.

Other utility ability such as Binding Shot and Traps are used manually as needed. I also use PvP talents manually so they are not included in this macro.

I also want to mention that this macro is effective when using a wide variety of talents and builds. I have tried lots of variations and this just seems to be effectively across the board. Obviously if you are using things like Chimaera Shot, Volley, etc., these are not here.

Finally, let’s discuss the GS2 enhancements using the 4 configurations along with the optimized MOD functions:

There are 4 sections.

1 = Normal world quest play
2 = PvP
3 = RAID, Mythic+ style play
4 = Place holder for basic macro

Starting with #4. I included this section so I have a reference for the basic version of the macro to fall back on in case something odd happened. It give me a test version to try modifications on without mucking with the macros I actually use.

For #3, the main difference between this version and the others is that I do not include Mend Pet in any form.

For #2, Mend Pet is included without the [nogroup] modifier because I want to heal my pet, and I will always be group when using this macro (battlegrounds and such). I also include Cobra Shot by changing the Kill Command line to: /castsequence Kill Command, Cobra Shot. While this is sub-optimal for raiding and mythics, it works nicely for easy to kill trash stuff while questing.

For #1, I included Mend Pet using the [nogroup] so that the pet heal is used when I am solo. I also include Cobra Shot by changing the Kill Command line to: /castsequence Kill Command, Cobra Shot. While this is sub-optimal for raiding and mythics, it works nicely for easy to kill trash stuff while questing.

Other changes (to all but #4):

I added [nomod:shift] to the cooldown abilities (Blood Fury, Titan’s Thunder and Aspect of the Wild). This allows me to ‘delay’ casting of these cooldowns by holding down the shift key for those times when I know Bloodlust is coming and I want to maximize my burst. If you prefer, you can change this to [mod:shift] to reverse the behavior such that the cooldowns ONLY are cast when you press shift. Speaking for myself, I generally prefer the fire and forget style of a 1-button macro, but the option is yours.

I added [mod:shift] Counter Shot spell to the Keypress section so that Counter Shot will be cast when I press shift. This also means that if I am using shift to delay my cooldowns, it will cast Counter Shot, but I am happy to accept this very minor drawback.

I added [mod:ctrl] to Multi-Shot. Previously it was just [mod] so that when ANY mod key was pressed it would use Multi-Shot, but since I am adding other features, and I only used ctrl anyways, I added the ctrl modifier to only allows CTRL to affect this.

I added [mod:alt] to Exhilaration so that this will only be cast when the ALT key is pressed.

Please note: Counter Shot and Misdirection are not on the GCD so there is no DPS loss from using them. Also note that you are free to change the CTRL, SHIFT and ALT modifiers in any way you wish so that it is more convenient for you.

Playstyles vary, so what works great for me may not be optimal for you. But the core ideas are included and hopefully explained well so that you can modify this to suit your optimal style of play.

Finally, in terms of the location of the abilities in the macro and the order they are in, they are very intentional. I did a lot of testing to fine what I felt was the best and most optimal configuration in terms of both DPS and Focus management. You may prefer a different order for abilities and that is just fine, I just wanted to say that I put a lot of thought and testing into it and this is what I found to be the best.

Gween


Sequences['GweenBeast'] = {
  Author="Gweenn@Bleeding Hollow",  
  SpecID=253,
  Talents = "3113112",
  Default=1,
  Raid=3,
  PVP=2,
  Mythic=3,
  MacroVersions = {
    [1] = {
      StepFunction = "Priority",
      KeyPress={
        "/targetenemy [noharm][dead]",
        "/cast [mod:alt] Exhilaration",
        "/cast [combat] Bestial Wrath",
        "/cast [combat, nomod:shift] Blood Fury",
        "/cast [combat, nomod:shift] Titan's Thunder",
        "/cast [combat, nomod:shift] Aspect of the Wild",
        "/cast [mod:shift] Counter Shot",
        "/cast [target=focus, exists, nodead],[target=pet, exists, nodead] Misdirection",
        "/cast [mod:ctrl] Multi-Shot",
        "/cast [nopet,nodead] Call Pet 1; [@pet,dead] Heart of the Phoenix",
        "/cast [combat,pet:Spirit Beast,@player] Spirit Mend",
        "/cast [combat,pet,@player] Roar of Sacrifice",
      },
      PreMacro={
      },
        "/cast Dire Beast",
        "/castsequence Kill Command, Cobra Shot",
        "/cast A Murder of Crows",
        "/cast [nogroup] Mend Pet",
      PostMacro={
      },
      KeyRelease={
      },
    },
    [2] = {
      StepFunction = "Priority",
      KeyPress={
        "/targetenemy [noharm][dead]",
        "/cast [mod:alt] Exhilaration",
        "/cast [combat] Bestial Wrath",
        "/cast [combat, nomod:shift] Blood Fury",
        "/cast [combat, nomod:shift] Titan's Thunder",
        "/cast [combat, nomod:shift] Aspect of the Wild",
        "/cast [mod:shift] Counter Shot",
        "/cast [target=focus, exists, nodead],[target=pet, exists, nodead] Misdirection",
        "/cast [mod:ctrl] Multi-Shot",
        "/cast [nopet,nodead] Call Pet 1; [@pet,dead] Heart of the Phoenix",
        "/cast [combat,pet:Spirit Beast,@player] Spirit Mend",
        "/cast [combat,pet,@player] Roar of Sacrifice",
      },
      PreMacro={
      },
        "/cast Dire Beast",
        "/castsequence Kill Command, Cobra Shot",
        "/cast A Murder of Crows",
        "/cast Mend Pet",
      PostMacro={
      },
      KeyRelease={
      },
    },
    [3] = {
      StepFunction = "Priority",
      KeyPress={
        "/targetenemy [noharm][dead]",
        "/cast [mod:alt] Exhilaration",
        "/cast [combat] Bestial Wrath",
        "/cast [combat, nomod:shift] Blood Fury",
        "/cast [combat, nomod:shift] Titan's Thunder",
        "/cast [combat, nomod:shift] Aspect of the Wild",
        "/cast [mod:shift] Counter Shot",
        "/cast [target=focus, exists, nodead],[target=pet, exists, nodead] Misdirection",
        "/cast [mod:ctrl] Multi-Shot",
        "/cast [nopet,nodead] Call Pet 1; [@pet,dead] Heart of the Phoenix",
        "/cast [combat,pet:Spirit Beast,@player] Spirit Mend",
        "/cast [combat,pet,@player] Roar of Sacrifice",
      },
      PreMacro={
      },
        "/cast Dire Beast",
        "/cast Kill Command",
        "/cast A Murder of Crows",
      PostMacro={
      },
      KeyRelease={
      },
    },
    [4] = {
      StepFunction = "Priority",
      KeyPress={
        "/targetenemy [noharm][dead]",
        "/cast Exhilaration",
        "/cast [combat] Bestial Wrath",
        "/cast [combat] Blood Fury",
        "/cast [combat] Titan's Thunder",
        "/cast [combat] Aspect of the Wild",
        "/cast [target=focus, exists, nodead],[target=pet, exists, nodead] Misdirection",
        "/cast [mod] Multi-Shot",
        "/cast [nopet,nodead] Call Pet 1; [@pet,dead] Heart of the Phoenix",
        "/cast [combat,pet:Spirit Beast,@player] Spirit Mend",
        "/cast [combat,pet,@player] Roar of Sacrifice",
      },
      PreMacro={
      },
        "/cast Dire Beast",
        "/cast Kill Command",
        "/cast A Murder of Crows",
      PostMacro={
      },
      KeyRelease={
      },
    },
  },
}

This is the TL;DR version of my extensive commentary about my macro. This is the basic logic of the game-play to use the macro.

Spam Macro key (I use a keyboard macro that spam the key every 75ms)

Press and hold SHIFT to prevent DPS cooldowns from casting (Blood Fury, Titan’s Thunder, Aspect of the Wild)

Release SHIFT to allow DPS cooldowns to cast (Blood Fury, Titan’s Thunder, Aspect of the Wild)

Press and release SHIFT to cast Counter Shot

Press and release ALT to cast Exhilaration

Press and release CTRL to cast Multi-Shot

Press and hold CTRL to spam Multi-Shot

Momentarily release CTRL when spamming Multi-Shot until Dire Beast casts, then press and hold CTRL again

Press and release Cobra Shot hotkey to cast Cobra Shot (NOTE: Cobra Shot is included to be used automatically in the World Quest and PvP sections of the macro)

Gween

P.S. I am happy to answer any and all questions. Also happy to hear feedback and comments (good and bad).

Tips for Cobra Shot –

1 – Focus on staying alive. Dead people do no DPS.
2 – If Bestial Wrath is about to go off, wait. Use a single Cobra Shot to bring Kill Command off cooldown
2a – Assumes Kill Command cooldown is 2 seconds or more, else wait
2b – Assumes you are using Killer Cobra Talent.
3 – Use Cobra Shot when focus is above 80-90.
4 – If not using Killer Cobra, just follow #3.
5 – Protip – If Bestial Wrath has expired and has a long cooldown remaining (30 seconds or more) and Kill Command cooldown is 4 seconds or more. Drain Focus by casting several Cobra Shots (until the cited rules no longer apply).

Gween

I should also mention that what gear, especially legendaries can make a difference in the optimal usage of the macro. Additionally, I have not (as yet) factored in various combinations of legendaries and set bonuses for Tier pieces, but as I acquire the gear I will make changes and updates accordingly.

If you have gear that changes the logic and priorities, I would love to hear about it.

Gween

Wow, very impressive.

Will check out.

Quick test shows reasonable performance on Trueshot Raiding Dummy, but 350k dps on my 884 hunter was less than I was hoping for.

I did notice that approaching without my pet out that the
/cast [nopet,nodead] Call Pet 1; [@pet,dead] Heart of the Phoenix",
did not trigger.

I wonder if we ever get there.

Works with latest release, think I need to check this to see if there was problem with GSE.

Hey everyone!

Ok, I been using Gween’s macro mostly and Tater’s as well alternating between the two for Raids to compare DPS.

By using Warcraft Logs and Check My Wow for all three of us on Boss kills only and comparing our results I’ve come up with this:
Gween’s Time not Focus-Capped and Focus Gained/Wasted “Needs improvement”. Tater’s “Great”.

Both: Cast Efficiency “Can be improved” largely due to Titan’s Thunder Usage which “Needs improvement”. The number of times you cast Titan’s Thunder while Dire Beast was active. Try to line these up as much as possible to maximize damage is about HALF the number of times used.

And finally, Kill Command is no where near being cast enough times which impacts Cast Efficiency significantly.

All other CD’s, pots, etc. looked great for us!

Now I know that gear, movement, latency, etc. are a big factor in our DPS but I wanted to post this in trying to help out our overall DPS and maybe tweak the macros a bit or brainstorm something else.

Thoughts? Comments?

Quick Question… the multi-shot modifier quit working, was working few days ago but now when i press it then macro freezes and nothing happens until i release it

[quote quote=44436]Quick Question… the multi-shot modifier quit working, was working few days ago but now when i press it then macro freezes and nothing happens until i release it
[/quote]

Modifier is not working for me either…

Gnome Sequencer translation of Gween’s Macro:

--  Author  = Gweenn@Bleeding Hollow
--  Talents = 3, 1, 1, 3, 1, 1, 2
Sequences['GweenBeast'] = {
StepFunction = [[
    limit = limit or 1
    if step == limit then
        limit = limit % #macros + 1
        step = 1
    else
        step = step % #macros + 1
    end
]],
PreMacro = [[
/targetenemy [noharm][dead] 
/startattack
/targetenemy [noharm][dead]
/cast [mod:alt] Exhilaration
/cast [combat] Bestial Wrath
/cast [combat, nomod:shift] Blood Fury
/cast [combat, nomod:shift] Titan's Thunder
/cast [combat, nomod:shift] Aspect of the Wild
/cast [mod:shift] Counter Shot
/cast [target=focus, exists, nodead],[target=pet, exists, nodead] Misdirection
/cast [mod:ctrl] Multi-Shot
/cast [nopet,nodead] Call Pet 1; [@pet,dead] Heart of the Phoenix
/cast [combat,pet:Spirit Beast,@player] Spirit Mend
/cast [combat,pet,@player] Roar of Sacrifice
]],
    '/cast Dire Beast',
    '/castsequence Kill Command, Cobra Shot',
    '/cast A Murder of Crows',
    '/cast [nogroup] Mend Pet',
PostMacro = [[
/startattack
/petattack
/use [combat]13
/use [combat]14
/script UIErrorsFrame:Clear()
]],
}