Hello guys and girls Ive been playing around with the LuaNinja program [Only registered and activated users can see links. ]
and different lua functions. And using this addon [Only registered and activated users can see links. ]
you can create some amazing stuff. Im sharing a perfect Fury Warrior DPS macro thatll be sure to make you easy and fast dps.
What this macro does is, it starts the fight using Bloodrage and casts it whenever its off cooldown and casts Battle Shout if you dont have it. Then it casts Bloodthirst and Whirlwind when off cooldown. Slam when the buff Slam! also called Bloodsurge is active and casts Heroic Strike when rage is above 79.
Ill post it in 2 versions because thats what I use. 1 for AoE and 1 for Single target. The difference between these 2 is that the AoE one prioritizes Whirlwind higher than Bloodthirst and uses Cleave instead of Heroic Strike.
Code:
Single Target
/run local _,d,_ = GetSpellCooldown("Bloodrage") if (d == 0) then CastSpellByName("Bloodrage") end
/run if not UnitBuff("player", "Battle Shout") then CastSpellByName("Battle Shout") end
/run if UnitBuff("player", "Slam!") then CastSpellByName("Slam") end
/run if UnitCastingInfo("target") then SpellStopCasting() CastSpellByName("Pummel") end
/run local _,d,_ = GetSpellCooldown("Bloodthirst") if (d == 0) then CastSpellByName("Bloodthirst") end
/run local _,a,_ = GetSpellCooldown("Whirlwind") if (a == 0) then CastSpellByName("Whirlwind") end
/run if UnitPower("Player") > 79 then CastSpellByName("Heroic Strike") end
/run local _,d,_ = GetSpellCooldown("Execute") if (d == 0) then CastSpellByName("Execute") end
Code:
AoE
/run local _,d,_ = GetSpellCooldown("Bloodrage") if (d == 0) then CastSpellByName("Bloodrage") end
/run if not UnitBuff("player", "Battle Shout") then CastSpellByName("Battle Shout") end
/run if UnitBuff("player", "Slam!") then CastSpellByName("Slam") end
/run if UnitCastingInfo("target") then SpellStopCasting() CastSpellByName("Pummel") end
/run local _,a,_ = GetSpellCooldown("Whirlwind") if (a == 0) then CastSpellByName("Whirlwind") end
/run local _,d,_ = GetSpellCooldown("Bloodthirst") if (d == 0) then CastSpellByName("Bloodthirst") end
/run if UnitPower("Player") > 79 then CastSpellByName("Cleave") end
/run local _,d,_ = GetSpellCooldown("Execute") if (d == 0) then CastSpellByName("Execute") end
The best thing about this macro is that you can edit anything, remove lines, add lines without breaking anything! The only important thing is that Execute is at the button
ALL that is left to you is casting Recklessness. HF
__________________
Knowledge is often mistaken for intelligence. This is like mistaking a cup of milk for a cow.
Last edited by Elitetech; 2 Weeks Ago at 06:08 PM.
Not only did you give the macro, but you explained how it was created, +rep to you, sir ( And don't hesitate to do a Hunter version of it.. )
A hunter version should be simple enough. What spec you want it for? Also name a few of the spells, buffs etc that should be in it, cause my knowledge about hunters is very limited
__________________
Knowledge is often mistaken for intelligence. This is like mistaking a cup of milk for a cow.
Well, As PvP is too circumstancial, I'd say PvE(MM, W/o Trueshot Aura)
Since as previously stated, I dont have any knowledge of hunters this was the best I got out of it. Feel free to move things around or add things, Im pretty sure that you can figure out how to in this macro, its fairly simple. The only problem I can see is, if the target has above 20% HP and all the other shots are on cooldown, it will still try to cast Kill Shot and wont continue down to Steady Shot until the other cooldowns are ready, then of course itll cast them. So unless you dont plan on using steady shot, Id remove Kill Shot and use it manually or something. Havent found a way to check if the target is a percentage of health, only constant numbers.
Not even sure if its the right rotation, but I hope so
Once again, an AoE and a Singletarget with the only difference being multishot instead of aimed shot.
Code:
Single target
/run if not UnitDebuff("target", "Serpent Sting") then CastSpellByName("Serpent Sting") end
/run local _,d,_ = GetSpellCooldown("Silencing Shot") if (d == 0) then CastSpellByName("Silencing Shot") end
/run local _,d,_ = GetSpellCooldown("Kill Command") if (d == 0) then CastSpellByName("Kill Command") end
/run local _,d,_ = GetSpellCooldown("Chimera Shot") if (d == 0) then CastSpellByName("Chimera Shot") end
/run local _,d,_ = GetSpellCooldown("Aimed Shot") if (d == 0) then CastSpellByName("Aimed Shot") end
/run local _,d,_ = GetSpellCooldown("Arcane Shot") if (d == 0) then CastSpellByName("Arcane Shot") end
/run local _,d,_ = GetSpellCooldown("Kill Shot") if (d == 0) then CastSpellByName("Kill Shot") end
/run local _,d,_ = GetSpellCooldown("Steady Shot") if (d == 0) then CastSpellByName("Steady Shot") end
AoE
/run if not UnitDebuff("target", "Serpent Sting") then CastSpellByName("Serpent Sting") end
/run local _,d,_ = GetSpellCooldown("Silencing Shot") if (d == 0) then CastSpellByName("Silencing Shot") end
/run local _,d,_ = GetSpellCooldown("Kill Command") if (d == 0) then CastSpellByName("Kill Command") end
/run local _,d,_ = GetSpellCooldown("Chimera Shot") if (d == 0) then CastSpellByName("Chimera Shot") end
/run local _,d,_ = GetSpellCooldown("Multi-shot") if (d == 0) then CastSpellByName("Multi-shot") end
/run local _,d,_ = GetSpellCooldown("Arcane Shot") if (d == 0) then CastSpellByName("Arcane Shot") end
/run local _,d,_ = GetSpellCooldown("Kill Shot") if (d == 0) then CastSpellByName("Kill Shot") end
/run local _,d,_ = GetSpellCooldown("Steady Shot") if (d == 0) then CastSpellByName("Steady Shot") end
__________________
Knowledge is often mistaken for intelligence. This is like mistaking a cup of milk for a cow.
Last edited by Elitetech; 2 Weeks Ago at 06:42 PM.
Reason: Updated the rotation
I wonder if you could do a "Feral kitty" Version of this aswell.
"As there is no real rotation, we speak of a "priority list" for cat DPS. Try to follow the following instructions in the given order.
1. Keep up Savage Roar
2. Keep up Mangle
3. Keep up Rake
4. Use shred for Combo Point regeneration
5. When at 5 CP and Rip is not up, use Rip
6. When below 30 Energy, use Tigers Fury
7. Use Clearcast Proccs for Shred
8. When at 5 CP and Rip and Savage Roar are running with 8 seconds (might be longer, depending on your gear) or longer each, use Ferocious Bite.
9. When Rip and Savage Roar will drop at nearly the same time (with less than 3 seconds difference), try to recognize it early. Then use SR with a small amount of CP to desynchronize both timers."
I wonder if you could do a "Feral kitty" Version of this aswell.
"As there is no real rotation, we speak of a "priority list" for cat DPS. Try to follow the following instructions in the given order.
1. Keep up Savage Roar
2. Keep up Mangle
3. Keep up Rake
4. Use shred for Combo Point regeneration
5. When at 5 CP and Rip is not up, use Rip
6. When below 30 Energy, use Tigers Fury
7. Use Clearcast Proccs for Shred
8. When at 5 CP and Rip and Savage Roar are running with 8 seconds (might be longer, depending on your gear) or longer each, use Ferocious Bite.
9. When Rip and Savage Roar will drop at nearly the same time (with less than 3 seconds difference), try to recognize it early. Then use SR with a small amount of CP to desynchronize both timers."
That one would probably require a lot more work, but Ill do my best and see if I can make it work. I promise
Until then I recommend you download the addon Feral By Night from curse.com open the lua file in your favorite text editor and find the line
Code:
local spell
which should be right next to a bunch of lines named local aoespell and stuff like that. Remove the word local in that line and save. Now open the game with LuaNinja and use this macro
I can confirm that the Hunter one works like charm. How do you get the Blizz blocked this action error off though? The spells cast correctly yet the message is still there annoying me.
That worked, But it does change my rotation quite a bit, this is why;
Once Chimera, Aimed and arcane have been shot, I can either:
1) (And this is what the macro does) Cast only 2 steady shots, meaning just untill Chimera is out of cooldown, then cast arcane instead of aimed because aimed is still on CD and continue the rotation with this changement of rotation
2) (This is what my old macro did) Do 3 steady shots, steady shot being lowest DPS spell, the last one is "Wasted and unnecessary" but thanks to it I do not change the rotation because after chimera the aimed shot won't be in CD anymore
I have yet to see which of these two options does more DPS, so I will test a bit and report back!