A few notes:
1 - Arcane Shot is not in this macro. I prefer not to have a focus dump in the macro so I can use it manually, or simply not use it at all. I also find the DPS is simply better overall without Arcane Shot due to more frequent casts of Barrage and Kill Command. If I get Focus-capped (happens occasionally) I simply manually toss in a couple of Arcane Shots or not depending. Either way, I find I have better DPS without it.
2 - I have Focus Fire chained off of Dire Beast. I originally tried chaining it off Barrage as it is a 20-second cooldown so it would basically always be up, but I found I had many more 2 and 3 stacks casts, and with Dire Beast, I had mostly 4-5 stack casts. If you get to a 5 stack quickly, you can manually cast FF and it won’t hurt the macro.
3 - I weave Multi-Shot in with the CTRL or ALT key for AOE. This is ‘slightly’ less DPS than a pure AOE macro, but I find this a much better option as most fights are a combination of single target and AOE. Also, the lack of Arcane Shot offers much more Focus for weaving in Multi-Shot on demand.
Updated macro 5/15/2015:
Sequences['BMST'] = {
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]
/cast [mod,nochanneling]Multi-Shot
/cast [nopet,nodead]Call Pet 5;[@pet,dead]Heart of the Phoenix
/console Sound_EnableSFX 0
]],
[[/castsequence [nochanneling]Kill Shot]],
[[/castsequence [nochanneling]Kill Command]],
[[/castsequence [nochanneling,talent:5/1]A Murder of Crows;[nochanneling,talent:5/2]Kill Command;[nochanneling,talent:5/3]Kill Command]],
[[/castsequence [talent:6/1] Glaive Toss;[talent:6/3]Barrage]],
[[/castsequence [nochanneling]Dire Beast,Focus Fire]],
[[/castsequence [nochanneling]Cobra Shot]],
PostMacro = [[
/startattack
/cast [nochanneling][combat]Blood Fury
/cast [nochanneling][combat]Bestial Wrath
/cast [combat,pet:Spirit Beast,@player]Spirit Mend
/cast [combat,pet,@player]Roar of Sacrifice
/script UIErrorsFrame:Clear()
/console Sound_EnableSFX 1
]],
}