anyone here who can provide a macro that does the following?
when there is Anub'arak without the debuff living bomb, cast living bomb on it, else if
there is a mob named Nerubian Burrower without the debuff living bomb, cast living bomb on it, else cast blizzard
/run local _,a,_ = GetSpellCooldown("Crusader Strike") if (a == 0) then CastSpellByName("Crusader Strike") else RunMacro"25" end
/click StaticPopup1Button1
Macro 25:
Code:
/run local _,a,_ = GetSpellCooldown("Judgement of Wisdom") if (a == 0) then CastSpellByName("Judgement of Wisdom") else RunMacro"26" end
/click StaticPopup1Button1
Macro 26:
Code:
/run local _,a,_ = GetSpellCooldown("Divine Storm") if (a == 0) then CastSpellByName("Divine Storm") else RunMacro"27" end
/click StaticPopup1Button1
Macro 27:
Code:
/run local _,a,_ = GetSpellCooldown("Consecration") if (a == 0) then CastSpellByName("Consecration") else RunMacro"28" end
/click StaticPopup1Button1
Macro 28:
Code:
/run if UnitBuff("player", "The Art of War") then CastSpellByName("Exorcism") else RunMacro"29" end
/click StaticPopup1Button1
Macro 29:
Code:
/run p=((UnitHealth("target")/UnitHealthMax("target"))*100)
/run local _,a,_ = GetSpellCooldown("Hammer of Wrath") if (a == 0 and p < 20) then CastSpellByName("Hammer of Wrath") else RunMacro"24" end
/click StaticPopup1Button1
My HoW macro might not work.. but someone said it did and tested it. I currently can't get it to work.. for some reason. But anyways, feel free to use it and post it in the first post in this topic!
Hey, I made some good macros for my lock using those dumps, you can check it out
It's mostly DoT's and spam macro except I didn't add Haunt here because i use it mainly for PvP/Arenas. You can change this macro to work in PvE (Affli) just replace Searing pain with SB.
It goes like this: UA-Corr-CoA-SP-SP-SP-proc(ST)=SB and over and over again.
Note: it take raw 0.2 sec for UA to appear, so dont be surprised to see double UA cast.
figured I should contribute at least something to the site.
Elemental shaman dps rotation
dps1
Code:
/run if not UnitDebuff("target", "Flame Shock") then CastSpellByName("Flame Shock") else RunMacro"dps2" end
dps2
Code:
/run local _, d, _ = GetSpellCooldown("Lava Burst") if (d == 0) then CastSpellByName("Lava Burst") else RunMacro"dps3"end
dps3
Code:
/run local _, d, _ = GetSpellCooldown("Chain Lightning") if (d == 0) then CastSpellByName("Chain Lightning") else CastSpellByName("Lightning Bolt") end
Updated Gifteds UH DK macro, to work with LuaNinja
We don't need all the crap anymore
Code:
Macro Name: Spam
/run local p = IsSpellInRange("Plague Strike", "target") if (p == 0) then CastSpellByName("Icy Touch") else RunMacro("BP") end
/click StaticPopup1Button1
Macro Name: BP
/run if (not UnitDebuff("target", "Blood Plague")) then RunMacro("DUR1") else RunMacro("FF") end
/click StaticPopup1Button1
Macro Name: FF
/run if (not UnitDebuff("target", "Frost Fever")) then RunMacro("DFR1") else RunMacro("UR1") end
/click StaticPopup1Button1
Macro Name: BPleft
/run if (not UnitDebuff("target", "Blood Plague")) then CastSpellByName("Blood Strike") else RunMacro("FFleft") end
/click StaticPopup1Button1
Macro Name: FFleft
/run if (not UnitDebuff("target", "Frost Fever")) then RunMacro("UR1") else CastSpellByName("Blood Strike") end
/click StaticPopup1Button1
Macro Name: BPright
/run if (not UnitDebuff("target", "Blood Plague")) then RunMacro("FR1") else RunMacro("FFright") end
/click StaticPopup1Button1
Macro Name: FFright
/run if (not UnitDebuff("target", "Frost Fever")) then CastSpellByName("Blood Strike") else RunMacro("DFR1") end
/click StaticPopup1Button1
Macro Name: DFR1
/run local _,_,c = GetRuneCooldown("1") if (GetRuneType("1") == 4) and (c == true) then CastSpellByName("Icy Touch") else RunMacro("DFR2") end
/click StaticPopup1Button1
Macro Name: DFR2
/run local _,_,d = GetRuneCooldown("2") if (GetRuneType("2") == 4) and (d == true) then CastSpellByName("Icy Touch") else RunMacro("FR1") end
/click StaticPopup1Button1
Macro Name: FR1
/run local _,_,a = GetRuneCooldown("5") if (a == true) then CastSpellByName("Icy Touch") else RunMacro("FR2") end
/click StaticPopup1Button1
Macro Name: FR2
/run local _,_,b = GetRuneCooldown("6") if (b == true) then CastSpellByName("Icy Touch") else RunMacro("BPleft") end
/click StaticPopup1Button1
Macro Name: DUR1
/run local _,_,i = GetRuneCooldown("1") if (GetRuneType("1") == 4) and (i == true) then CastSpellByName("Plague Strike") else RunMacro("DUR2") end
/click StaticPopup1Button1
Macro Name: DUR2
/run local _,_,j = GetRuneCooldown("2") if (GetRuneType("2") == 4) and (j == true) then CastSpellByName("Plague Strike") else RunMacro("UR1") end
/click StaticPopup1Button1
Macro Name: UR1
/run local _,_,g = GetRuneCooldown("3") if (g == true) then CastSpellByName("Plague Strike") else RunMacro("UR2") end
/click StaticPopup1Button1
Macro Name: UR2
/run local _,_,h = GetRuneCooldown("4") if (h == true) then CastSpellByName("Plague Strike") else RunMacro("BPright") end
/click StaticPopup1Button1
Here is a more complex version of my Elemental Shaman dps rotation. (I am learning more as I go along)
Checks for casting and interrupts with windshear, keeps up Water Shield, casts Thunderstorm if you have less than 15k mana and does a full dps rotation with one button.
To skip cast check omit the first macro
tcc - Target Cast Check: checks if target is casting and interrupts with Wind Shear. This will interrupt your cast to cast Wind Shear
Code:
/run if UnitCastingInfo("target") then SpellStopCasting() CastSpellByName("Wind Shear") else RunMacro"wsc" end
wsc - Checks for Water Shield and casts if necessary
Code:
/run if not UnitBuff("player", "Water Shield") then CastSpellByName("Water Shield") else RunMacro"tsc" end
tsc - Checks CD on Thunderstorm. If off CD and <15k mana casts
Code:
/run loadstring("local _, d, _ = GetSpellCooldown("Thunderstorm") if ((UnitPower("player") < 15000) and (d == 0)) then CastSpellByName("Thunderstorm") else RunMacro("dps1") end") ()
dps1 - [Checks for Flame Shock and applies if necessary
Code:
/run if not UnitDebuff("target", "Flame Shock") then CastSpellByName("Flame Shock") else RunMacro"dps2"
dps2 - Checks Lava Burst CD, Casts if available
Code:
/run local _, d, _ = GetSpellCooldown("Lava Burst") if (d == 0) then CastSpellByName("Lava Burst") else RunMacro"dps3"end
dps3 - Checks Chain Lightning CD and Casts if available, otherwise casts Lightning Bolt
Code:
/run local _, d, _ = GetSpellCooldown("Chain Lightning") if (d == 0) then CastSpellByName("Chain Lightning") else CastSpellByName("Lightning Bolt") end
All you do is hit the first macro. You have to remember the 'RunMacro"24" for instance is based on the slot where the macro is. 1-6 is the top of the macro screen, 7-12 is the next.. etc etc. If need be.. jus rename the 'RunMacro"24" to 'RunMacro"CS" and name the actual CS macro.. CS. :P
/run c=CastSpellByName;if (UnitHealth("target")/UnitHealthMax("target")<0.2) then c("Execute") elseif not UnitDebuff("target", "Rend",unitCaster~="player") then c("Rend") elseif UnitBuff("player", "Taste for Blood") then c("Overpower") elseif UnitBuff("player","Sudden Death") then c("Execute") elseif (GetSpellCooldown("Mortal Strike") == 0) then c("Mortal Strike") else c("Slam") end
this is a one button rotation for an arms warrior, it's only usable with the addon [Only registered and activated users can see links. ] because it exeeds the 255er limit
it does pretty much everything for you, the only thing i could not test was if it works if there is an other warrior with you who applies rend to the target
in theory it should work in that case aswell
what it does:
cast execute if the target is under 20%
cast rend if its not up (and as mentioned before it should also cast it if you're not the one who casted it)
cast overpower if you have the "taste for blood" buff
cast execute if you have the "sudden death" buff
cast mortal strike if the cd is over
and if nothing else is available it casts slam