I tested on the dummy, and I disabled the opening after the end of the first barrage. And it did not work.
Hmm.. then you are going to have to delete the cobra shot line, because I have no idea. But it will only be a small dps decrease if you delete that line. Mine works just fine.
trying to use the default 2h fury profile but all it seems to be doing is auto attacking Code: Starting the bot! Currently Using BotBase : Simcraft Impl Current zone is Lunarfall Inn (http://wowhead.com/zone=7078) <9:01 PM>:Loading configuration <9:01 PM>:Configuration successfully loaded. Changing current profile to Empty Profile <21:01>:Compiling Action Lists <21:01>:New Apl: Tyrlisele_Active <21:01>:New Apl: Warrior_Arms_T17H <21:01>:New Apl: Warrior_Fury_1h_T17H <21:01>:New Apl: Warrior_Fury_2h_T17H <21:01>:New Apl: Warrior_Gladiator_T17H using Styx; using Styx.Common; namespace Simcraft { public class SimcraftRota { private static SimcraftImpl simc{get { return SimcraftImpl.inst; }} #region Warrior_Fury_2h_T17H [Behavior(WoWClass.Warrior, WoWSpec.None, WoWContext.PvE)] public static void GenerateWarriorFuryPvEBehavior() { simc.actions["precombat"] += simc.UsePotion("draenic_strength",""); //# Executed every time the actor is available. simc.actions += simc.Cast("charge", _if => (simc.debuff.charge.down),"simc.debuff.charge.down"); simc.actions += simc.Cast("auto_attack", _if => (true),""); //# This is mostly to prevent cooldowns from being accidentally used during movement. simc.actions += simc.CallActionList("movement", _if => (simc.movement.distance>5),"simc.movement.distance>5"); simc.actions += simc.Cast("berserker_rage", _if => (simc.buff.enrage.down||(simc.talent.unquenchable_thirst.enabled&&simc.buff.raging_blow.down)),"simc.buff.enrage.down||(simc.talent.unquenchable_thirst.enabled&&simc.buff.raging_blow.down)"); simc.actions += simc.Cast("heroic_leap", _if => ((simc.raid_event.movement.distance>25&&simc.raid_event.movement._in>45)||!simc.raid_event.movement.exists),"(simc.raid_event.movement.distance>25&&simc.raid_event.movement._in>45)||!simc.raid_event.movement.exists"); simc.actions += simc.UseItem(113969, _if => ((simc.talent.bladestorm.enabled&&simc.cooldown.bladestorm.remains==0)||simc.buff.bloodbath.up||simc.talent.avatar.enabled),"(simc.talent.bladestorm.enabled&&simc.cooldown.bladestorm.remains==0)||simc.buff.bloodbath.up||simc.talent.avatar.enabled"); simc.actions += simc.UsePotion("draenic_strength", _if => ((simc.target.health.pct<20&&simc.buff.recklessness.up)||simc.target.time_to_die<=25),"(simc.target.health.pct<20&&simc.buff.recklessness.up)||simc.target.time_to_die<=25"); //# Skip cooldown usage if we can line them up with bladestorm on a large set of adds, or if movement is coming soon. simc.actions += simc.CallActionList("single_target", _if => ((simc.raid_event.adds.cooldown<60&&simc.raid_event.adds.count>2&&simc.active_enemies==1)||simc.raid_event.movement.cooldown<5),"(simc.raid_event.adds.cooldown<60&&simc.raid_event.adds.count>2&&simc.active_enemies==1)||simc.raid_event.movement.cooldown<5"); //# This incredibly long line (Due to differing talent choices) says 'Use recklessness on cooldown, unless the boss will die before the ability is usable again, and then use it with execute.' simc.actions += simc.Cast("recklessness", _if => (((simc.target.time_to_die>190||simc.target.health.pct<20)&&(simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled))||simc.target.time_to_die<=12||simc.talent.anger_management.enabled),"((simc.target.time_to_die>190||simc.target.health.pct<20)&&(simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled))||simc.target.time_to_die<=12||simc.talent.anger_management.enabled"); simc.actions += simc.Cast("avatar", _if => ((simc.buff.recklessness.up||simc.target.time_to_die<=30)),"(simc.buff.recklessness.up||simc.target.time_to_die<=30)"); simc.actions += simc.Cast("blood_fury", _if => (simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled||simc.buff.recklessness.up),"simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled||simc.buff.recklessness.up"); simc.actions += simc.Cast("berserking", _if => (simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled||simc.buff.recklessness.up),"simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled||simc.buff.recklessness.up"); simc.actions += simc.Cast("arcane_torrent", _if => (simc.rage<simc.rage.max-40),"simc.rage<simc.rage.max-40"); simc.actions += simc.CallActionList("single_target", _if => (simc.active_enemies==1),"simc.active_enemies==1"); simc.actions += simc.CallActionList("two_targets", _if => (simc.active_enemies==2),"simc.active_enemies==2"); simc.actions += simc.CallActionList("three_targets", _if => (simc.active_enemies==3),"simc.active_enemies==3"); simc.actions += simc.CallActionList("aoe", _if => (simc.active_enemies>3),"simc.active_enemies>3"); simc.actions["movement"] += simc.Cast("heroic_leap", _if => (true),""); simc.actions["movement"] += simc.CycleTargets("charge", _if => (simc.debuff.charge.down),"simc.debuff.charge.down"); //# If possible, charge a target that will give rage. Otherwise, just charge to get back in range. simc.actions["movement"] += simc.Cast("charge", _if => (true),""); //# May as well throw storm bolt if we can. simc.actions["movement"] += simc.Cast("storm_bolt", _if => (true),""); simc.actions["movement"] += simc.Cast("heroic_throw", _if => (true),""); simc.actions["single_target"] += simc.Cast("bloodbath", _if => (true),""); simc.actions["single_target"] += simc.Cast("recklessness", _if => (simc.target.health.pct<20&&simc.raid_event.adds.exists),"simc.target.health.pct<20&&simc.raid_event.adds.exists"); simc.actions["single_target"] += simc.Cast("wild_strike", _if => (simc.rage>110&&simc.target.health.pct>20),"simc.rage>110&&simc.target.health.pct>20"); simc.actions["single_target"] += simc.Cast("bloodthirst", _if => ((!simc.talent.unquenchable_thirst.enabled&&simc.rage<80)||simc.buff.enrage.down),"(!simc.talent.unquenchable_thirst.enabled&&simc.rage<80)||simc.buff.enrage.down"); simc.actions["single_target"] += simc.Cast("ravager", _if => (simc.buff.bloodbath.up||(!simc.talent.bloodbath.enabled&&(!simc.raid_event.adds.exists||simc.raid_event.adds.cooldown>60||simc.target.time_to_die<40))),"simc.buff.bloodbath.up||(!simc.talent.bloodbath.enabled&&(!simc.raid_event.adds.exists||simc.raid_event.adds.cooldown>60||simc.target.time_to_die<40))"); simc.actions["single_target"] += simc.Cast("execute", _if => (simc.buff.sudden_death.react),"simc.buff.sudden_death.react"); simc.actions["single_target"] += simc.Cast("siegebreaker", _if => (true),""); simc.actions["single_target"] += simc.Cast("storm_bolt", _if => (true),""); simc.actions["single_target"] += simc.Cast("wild_strike", _if => (simc.buff.bloodsurge.up),"simc.buff.bloodsurge.up"); simc.actions["single_target"] += simc.Cast("execute", _if => (simc.buff.enrage.up||simc.target.time_to_die<12),"simc.buff.enrage.up||simc.target.time_to_die<12"); simc.actions["single_target"] += simc.Cast("dragon_roar", _if => (simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled),"simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled"); simc.actions["single_target"] += simc.Cast("raging_blow", _if => (true),""); simc.actions["single_target"] += simc.Cast("wild_strike", _if => (simc.buff.enrage.up&&simc.target.health.pct>20),"simc.buff.enrage.up&&simc.target.health.pct>20"); simc.actions["single_target"] += simc.Cast("bladestorm", _if => (!simc.raid_event.adds.exists),"!simc.raid_event.adds.exists"); simc.actions["single_target"] += simc.Cast("shockwave", _if => (!simc.talent.unquenchable_thirst.enabled),"!simc.talent.unquenchable_thirst.enabled"); simc.actions["single_target"] += simc.Cast("impending_victory", _if => (!simc.talent.unquenchable_thirst.enabled&&simc.target.health.pct>20),"!simc.talent.unquenchable_thirst.enabled&&simc.target.health.pct>20"); simc.actions["single_target"] += simc.Cast("bloodthirst", _if => (true),""); simc.actions["two_targets"] += simc.Cast("bloodbath", _if => (true),""); simc.actions["two_targets"] += simc.Cast("ravager", _if => (simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled),"simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled"); simc.actions["two_targets"] += simc.Cast("dragon_roar", _if => (simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled),"simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled"); simc.actions["two_targets"] += simc.Cast("bladestorm", _if => (simc.buff.enrage.up),"simc.buff.enrage.up"); simc.actions["two_targets"] += simc.Cast("bloodthirst", _if => (simc.buff.enrage.down||simc.rage<50||simc.buff.raging_blow.down),"simc.buff.enrage.down||simc.rage<50||simc.buff.raging_blow.down"); simc.actions["two_targets"] += simc.Cast("execute", _if => (true && simc.Target2 != null),simc.Target2,""); simc.actions["two_targets"] += simc.Cast("execute", _if => (simc.target.health.pct<20||simc.buff.sudden_death.react),"simc.target.health.pct<20||simc.buff.sudden_death.react"); //Dont use swing timers man ... //simc.actions["two_targets"] += simc.CycleTargets("heroic_charge", _if => (simc.target.health.pct<20&&simc.rage<70&&simc.swing.mh.remains>2&&simc.debuff.charge.down),"simc.target.health.pct<20&&simc.rage<70&&simc.swing.mh.remains>2&&simc.debuff.charge.down"); simc.actions["two_targets"] += simc.Cast("raging_blow", _if => (simc.buff.meat_cleaver.up),"simc.buff.meat_cleaver.up"); simc.actions["two_targets"] += simc.Cast("whirlwind", _if => (!simc.buff.meat_cleaver.up),"!simc.buff.meat_cleaver.up"); simc.actions["two_targets"] += simc.Cast("wild_strike", _if => (simc.buff.bloodsurge.up&&simc.rage>75),"simc.buff.bloodsurge.up&&simc.rage>75"); simc.actions["two_targets"] += simc.Cast("bloodthirst", _if => (true),""); simc.actions["two_targets"] += simc.Cast("whirlwind", _if => (simc.rage>simc.rage.max-20),"simc.rage>simc.rage.max-20"); simc.actions["two_targets"] += simc.Cast("wild_strike", _if => (simc.buff.bloodsurge.up),"simc.buff.bloodsurge.up"); simc.actions["three_targets"] += simc.Cast("bloodbath", _if => (true),""); simc.actions["three_targets"] += simc.Cast("ravager", _if => (simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled),"simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled"); simc.actions["three_targets"] += simc.Cast("bladestorm", _if => (simc.buff.enrage.up),"simc.buff.enrage.up"); simc.actions["three_targets"] += simc.Cast("bloodthirst", _if => (simc.buff.enrage.down||simc.rage<50||simc.buff.raging_blow.down),"simc.buff.enrage.down||simc.rage<50||simc.buff.raging_blow.down"); simc.actions["three_targets"] += simc.Cast("raging_blow", _if => (simc.buff.meat_cleaver.stack>=2),"simc.buff.meat_cleaver.stack>=2"); simc.actions["three_targets"] += simc.Cast("execute", _if => (simc.buff.sudden_death.react),"simc.buff.sudden_death.react"); simc.actions["three_targets"] += simc.Cast("execute", _if => (true && simc.Target2 != null),simc.Target2,""); simc.actions["three_targets"] += simc.Cast("execute", _if => (true && simc.Target3 != null),simc.Target3,""); simc.actions["three_targets"] += simc.Cast("dragon_roar", _if => (simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled),"simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled"); simc.actions["three_targets"] += simc.Cast("whirlwind", _if => (true),""); simc.actions["three_targets"] += simc.Cast("bloodthirst", _if => (true),""); simc.actions["three_targets"] += simc.Cast("wild_strike", _if => (simc.buff.bloodsurge.up),"simc.buff.bloodsurge.up"); simc.actions["aoe"] += simc.Cast("bloodbath", _if => (true),""); simc.actions["aoe"] += simc.Cast("ravager", _if => (simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled),"simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled"); simc.actions["aoe"] += simc.Cast("raging_blow", _if => (simc.buff.meat_cleaver.stack>=3&&simc.buff.enrage.up),"simc.buff.meat_cleaver.stack>=3&&simc.buff.enrage.up"); simc.actions["aoe"] += simc.Cast("bloodthirst", _if => (simc.buff.enrage.down||simc.rage<50||simc.buff.raging_blow.down),"simc.buff.enrage.down||simc.rage<50||simc.buff.raging_blow.down"); simc.actions["aoe"] += simc.Cast("raging_blow", _if => (simc.buff.meat_cleaver.stack>=3),"simc.buff.meat_cleaver.stack>=3"); simc.actions["aoe"] += simc.Cast("recklessness", _if => (true && simc.sync("bladestorm")),""); simc.actions["aoe"] += simc.Cast("bladestorm", _if => (simc.buff.enrage.remains>6),"simc.buff.enrage.remains>6"); simc.actions["aoe"] += simc.Cast("whirlwind", _if => (true),""); simc.actions["aoe"] += simc.Cast("execute", _if => (simc.buff.sudden_death.react),"simc.buff.sudden_death.react"); simc.actions["aoe"] += simc.Cast("dragon_roar", _if => (simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled),"simc.buff.bloodbath.up||!simc.talent.bloodbath.enabled"); simc.actions["aoe"] += simc.Cast("bloodthirst", _if => (true),""); simc.actions["aoe"] += simc.Cast("wild_strike", _if => (simc.buff.bloodsurge.up),"simc.buff.bloodsurge.up"); SimcraftImpl.Write("Behaviors created !"); } #endregion } } <21:01>:------------------------------------------------------------------------- <21:01>:Buff: enrage id: 12880 <21:01>:Buff: raging_blow id: 131116 <21:01>:Buff: bloodbath id: 12292 <21:01>:Buff: recklessness id: 1719 <21:01>:Buff: sudden_death id: 52437 <21:01>:Buff: bloodsurge id: 46916 <21:01>:Buff: meat_cleaver id: 85739 <21:01>:------------------------------------------------------------------------- <21:01>:Debuff: charge id: 105771 <21:01>:------------------------------------------------------------------------- <21:01>:Talent: unquenchable_thirst - Disabled id: 169683 <21:01>:Talent: bladestorm - Disabled id: 46924 <21:01>:Talent: avatar - Disabled id: 107574 <21:01>:Talent: bloodbath - Enabled id: 12292 <21:01>:Talent: anger_management - Enabled id: 152278 <21:01>:------------------------------------------------------------------------- <21:01>:Created Spell: bladestorm ex:1.4861524255864026064442874533 r:0 c:0 clt:0 dur:6 ct:1.4861524255864026064442874533 id: 46924 <21:01>:Created Spell: charge ex:1 r:25 c:2 clt:0 dur:0 ct:1 id: 100 <21:01>:Created Spell: auto_attack ex:1 r:400 c:0 clt:0 dur:15 ct:1 id: 117050 <21:01>:Created Spell: berserker_rage ex:1 r:6.5 c:0 clt:0 dur:6 ct:1 id: 18499 <21:01>:Created Spell: heroic_leap ex:1 r:40 c:0 clt:0 dur:0 ct:1 id: 6544 <21:01>:Created Spell: recklessness ex:1 r:6.5 c:0 clt:0 dur:10 ct:1 id: 1719 <21:01>:Created Spell: avatar ex:1 r:0 c:0 clt:0 dur:20 ct:1 id: 107574 <21:01>:Created Spell: blood_fury ex:1 r:0 c:0 clt:0 dur:15 ct:1 id: 20572 <21:01>:Created Spell: berserking ex:1 r:0 c:0 clt:0 dur:10 ct:1 id: 26297 <21:01>:Created Spell: arcane_torrent ex:2 r:0 c:0 clt:2 dur:2 ct:2 id: 25046 <21:01>:Created Spell: storm_bolt ex:1.4861524255864026064442874533 r:300 c:0 clt:0 dur:0 ct:1.4861524255864026064442874533 id: 107570 <21:01>:Created Spell: heroic_throw ex:1.4861524255864026064442874533 r:30 c:0 clt:0 dur:0 ct:1.4861524255864026064442874533 id: 57755 <21:01>:Created Spell: bloodbath ex:1 r:6.5 c:0 clt:0 dur:12 ct:1 id: 12292 <21:01>:Created Spell: wild_strike ex:1 r:6.5 c:0 clt:0 dur:0 ct:1 id: 100130 <21:01>:Created Spell: bloodthirst ex:1.4861524255864026064442874533 r:6.5 c:0 clt:0 dur:0 ct:1.4861524255864026064442874533 id: 23881 <21:01>:Created Spell: ravager ex:1.4861524255864026064442874533 r:400 c:0 clt:0 dur:11 ct:1.4861524255864026064442874533 id: 152277 <21:01>:Created Spell: execute ex:1.4861524255864026064442874533 r:6.5 c:0 clt:0 dur:0 ct:1.4861524255864026064442874533 id: 5308 <21:01>:Created Spell: siegebreaker ex:1.4861524255864026064442874533 r:50 c:0 clt:0 dur:1 ct:1.4861524255864026064442874533 id: 176289 <21:01>:Created Spell: dragon_roar ex:1.4861524255864026064442874533 r:6.5 c:0 clt:0 dur:0 ct:1.4861524255864026064442874533 id: 118000 <21:01>:Created Spell: raging_blow ex:1.4861524255864026064442874533 r:6.5 c:0 clt:0 dur:0 ct:1.4861524255864026064442874533 id: 85288 <21:01>:Created Spell: shockwave ex:1.4861524255864026064442874533 r:0 c:0 clt:0 dur:0 ct:1.4861524255864026064442874533 id: 46968 <21:01>:Created Spell: impending_victory ex:1.4861524255864026064442874533 r:50 c:0 clt:0 dur:0 ct:1.4861524255864026064442874533 id: 103840 <21:01>:Created Spell: whirlwind ex:1.4861524255864026064442874533 r:6.5 c:0 clt:0 dur:0 ct:1.4861524255864026064442874533 id: 1680 <21:01>:------------------------------------------------------------------------- <21:01>:Behaviors created ! <21:01>:luaavg:9.2879695772185
You can either: Remove the Heroic Leap Line or use my profile [JavaScript] warrior="Fury!_Active" level=100 race=human role=attack position=back spec= - Pastebin.com That reminds me: Can everyone that has a working class profile send them to me ? We need better default profiles ^^
Sometimes the fight, the AOE is not running correctly. Routine prioritizes multishot and kill comand, quite delaying the use of the barrage. Sorry if my thinking is wrong. But here's the priority. 2-targets (and up): Multi-Shot (3 targets and up only, the much needed to keep the Beast Cleave up) Barrage Steady Focus keep up. Explosive Trap Kill Command Multi-Shot (2 targets, the much needed to keep the Beast Cleave up) Kill Shot Arcane Shot (dump excess focus) Cobra Shot (generate more focus) Thanks
Mine does exactly that. Barrage goes off for me on CD, it never delays it for me in aoe situations. This routine follows Azortharion's guide pretty much to the Tee. Like I said before it parsing in the 90% pretty much on all fights for me. This is the exact routine that I use. Code: hunter="BM_Custom" level=100 race=orc role=attack position=ranged_back talents=0001333 spec=beast_mastery summon_pet=cat hotkeys+=/hotkey_stamp,none,G hotkeys+=/hotkey_barrage,none,X actions+=/stampede,if=hotkey_stamp actions+=/use_item,name=beating_heart_of_the_mountain,if=cooldowns_enabled actions+=/focus_fire,five_stacks=1 actions+=/focus_fire,if=((buff.focus_fire.remains<=0)&(cooldown.bestial_wrath.remains<2))|((buff.focus_fire.remains<=0)&buff.stampede.remains>0) actions+=/dire_beast actions+=/bestial_wrath,if=focus>30&(buff.bestial_wrath.remains<=0) actions+=/call_action_list,name=aoe,if=active_enemies>1&aoe_enabled #single target actions+=/kill_command actions+=/a_murder_of_crows actions+=/kill_shot,if=target.health.pct<20 actions+=/focusing_shot,if=focus<50 actions+=/barrage,if=hotkey_barrage actions+=/cobra_shot,if=buff.pre_steady_focus.up&(14+cast_regen)<=focus.deficit actions+=/glaive_toss actions+=/powershot,if=focus.time_to_max>cast_time actions+=/arcane_shot,if=(buff.thrill_of_the_hunt.react&focus>35)|buff.bestial_wrath.remains>0 actions+=/arcane_shot,if=(focus>=75) actions+=/cobra_shot #AOE actions.aoe+=/multishot,if=(pet.buff.beast_cleave.remains<=0)&active_enemies>2 actions.aoe+=/barrage,if=hotkey_barrage actions.aoe+=/cobra_shot,if=buff.pre_steady_focus.up&(14+cast_regen)<=focus.deficit actions.aoe+=/explosive_trap actions.aoe+=/kill_command actions.aoe+=/multishot,if=(pet.buff.beast_cleave.remains<=0)&active_enemies>1 actions.aoe+=/a_murder_of_crows actions.aoe+=/kill_shot,if=target.health.pct<20 actions.aoe+=/focusing_shot,if=focus<50 actions.aoe+=/glaive_toss actions.aoe+=/powershot,if=focus.time_to_max>cast_time actions.aoe+=/arcane_shot,if=(buff.thrill_of_the_hunt.react&focus>35)|buff.bestial_wrath.remains>0 actions.aoe+=/arcane_shot,if=(focus>=75) actions.aoe+=/cobra_shot trinket1=beating_heart_of_the_mountain,id=113931,bonus_id=566
also does anyone have any feedback on the Balance Druid simcraft is it good? Does it need improvements? Any insight?
Credits: @captainsubtext, @wolfrain62, @rimdab HUNTER BM: You need to register and have one post to see spoilers! HUNTER SV: You need to register and have one post to see spoilers! Thanks.
This is the combat rogue profile I use and it works wonders. Ranking above 90th % all the time. Code: # Executed every time the actor is available. #actions=potion,name=draenic_agility,if=buff.bloodlust.react|target.time_to_die<40|(buff.adrenaline_rush.up&(trinket.proc.any.react|trinket.stacking_proc.any.react|buff.archmages_greater_incandescence_agi.react)) #actions+=/kick actions+=/preparation,if=!buff.vanish.up&cooldown.vanish.remains>30 actions+=/blood_fury actions+=/berserking actions+=/arcane_torrent,if=energy<60 actions+=/blade_flurry,if=(active_enemies>=2&!buff.blade_flurry.up)|(active_enemies<2&buff.blade_flurry.up) actions+=/shadow_reflection,if=(cooldown.killing_spree.remains<10&combo_points>3)|buff.adrenaline_rush.up actions+=/ambush actions+=/vanish,if=time>10&(combo_points<3|(talent.anticipation.enabled&anticipation_charges<3)|(combo_points<4|(talent.anticipation.enabled&anticipation_charges<4)))&((talent.shadow_focus.enabled&buff.adrenaline_rush.down&energy<90&energy>=15)|(talent.subterfuge.enabled&energy>=90)|(!talent.shadow_focus.enabled&!talent.subterfuge.enabled&energy>=60)) actions+=/slice_and_dice,if=buff.slice_and_dice.remains<2|((target.time_to_die>45&combo_points=5&buff.slice_and_dice.remains<12)&buff.deep_insight.down) actions+=/call_action_list,name=adrenaline_rush,if=cooldown.killing_spree.remains>10 actions+=/call_action_list,name=killing_spree,if=(energy<40|(buff.bloodlust.up&time<10)|buff.bloodlust.remains>20)&buff.adrenaline_rush.down&(!talent.shadow_reflection.enabled|cooldown.shadow_reflection.remains>30|buff.shadow_reflection.remains>3) actions+=/marked_for_death,if=combo_points<=1&dot.revealing_strike.ticking&(!talent.shadow_reflection.enabled|buff.shadow_reflection.up|cooldown.shadow_reflection.remains>30) actions+=/call_action_list,name=generator,if=combo_points<5|!dot.revealing_strike.ticking|(talent.anticipation.enabled&anticipation_charges<3&buff.deep_insight.down) actions+=/call_action_list,name=finisher,if=combo_points=5&dot.revealing_strike.ticking&(buff.deep_insight.up|!talent.anticipation.enabled|(talent.anticipation.enabled&anticipation_charges>=3)) actions.adrenaline_rush=adrenaline_rush,if=time_to_die>=44 actions.adrenaline_rush+=/adrenaline_rush,if=time_to_die<44&(buff.archmages_greater_incandescence_agi.react|trinket.proc.any.react|trinket.stacking_proc.any.react) actions.adrenaline_rush+=/adrenaline_rush,if=time_to_die<=buff.adrenaline_rush.duration*1.5 actions.killing_spree=killing_spree,if=time_to_die>=44 actions.killing_spree+=/killing_spree,if=time_to_die<44&buff.archmages_greater_incandescence_agi.react&buff.archmages_greater_incandescence_agi.remains>=buff.killing_spree.duration actions.killing_spree+=/killing_spree,if=time_to_die<44&trinket.proc.any.react&trinket.proc.any.remains>=buff.killing_spree.duration actions.killing_spree+=/killing_spree,if=time_to_die<44&trinket.stacking_proc.any.react&trinket.stacking_proc.any.remains>=buff.killing_spree.duration actions.killing_spree+=/killing_spree,if=time_to_die<=buff.killing_spree.duration*1.5 # Combo point generators actions.generator=revealing_strike,if=(combo_points=4&dot.revealing_strike.remains<7.2&(target.time_to_die>dot.revealing_strike.remains+7.2)|(target.time_to_die<dot.revealing_strike.remains+7.2&ticks_remain<2))|!ticking actions.generator+=/sinister_strike,if=dot.revealing_strike.ticking # Combo point finishers actions.finisher=death_from_above actions.finisher+=/eviscerate,if=(!talent.death_from_above.enabled|cooldown.death_from_above.remains)
RET PALADIN : (I have 4-set if that makes any difference) You need to register and have one post to see spoilers! Consistently top 3 on meters and >90 percentile on logs.