Assassination Rogue DPS Rotation, Cooldowns, and Abilities — Shadowlands 9.2

Last updated on Feb 22, 2022 at 11:38 by Seliathan 39 comments
General Information

On this page, you will learn how to optimize the rotation of your Assassination Rogue in both single-target and multiple-target situations. We also have advanced sections about cooldowns, procs, etc. in order to minmax your DPS. All our content is updated for World of Warcraft — Shadowlands 9.2.

If you were looking for TBC Classic content, please refer to our TBC Classic DPS Rogue rotation.

1.

Assassination Rogue Rotation

Welcome to our Rotation page for Assassination Rogues. Here you will find out more about your rotational priorities in both single-target and multi-target situations which you will apply in both Raiding and Mythic+ scenarios.

1.1.

Easy Mode

If you are just starting out you might want to get more comfortable with your Assassination Rogue by using a more simplified yet still effective build and rotation. You can find out more about it in our Easy Mode section.

1.2.

Mythic+ Rotation

For information about Mythic+ as an Assassination Rogue and the rotation you need to use in this game mode, please refer to our Mythic+ page.

1.3.

PvP

The content on this page is purely PvE-related. If you are looking for PvP Rotation Tips, please visit our PvP page below.

2.

Rotation with two Legendaries and the Set Bonus

Patch 9.2 offers two new powers that replace the previous Domination Shard system. Whereas the Domination bonuses barely affected gameplay at all, Assassination will see some major shifts not only in the talent, covenant and legendary setup, but rotational priorities will shift alongside them.

Two major changes are happening as a result of these newly added power-systems:

  1. Shiv will become a DPS cooldown on AoE, whereas you previously did not use it for anything except priority-target damage;
  2. Vendetta will have a much lower cooldown as Duskwalker's Patch Icon Duskwalker's Patch will become the BiS Legendary with the Grudge Match Icon Assassination Rogue 4-Piece.

In addition to the active changes to these two cooldowns, Vendetta Icon Vendetta now functions very similar to Exsanguinate Icon Exsanguinate whenever it is used. It will actively shorten the duration of your bleeds and double their tick-rate, meaning you will be spending a lot more time refreshing your bleeds. Newly applied bleeds during Vendetta will immediately have the reduced duration and increased tickrate as well.

More important, however, is the fact that as Vendetta runs out, these duration and tick-rate increases do not get reverted. Instead you will keep the benefits even after Vendetta expires. This means we will want to refresh our bleed effects shortly before Vendetta expires to gain more than 20 seconds of the set bonus effect. This behavior is intended, and will noticeable improve your DPS when done correctly.

3.

Single Target Ability Priority List for Assassination Rogue

  1. Apply Slice and Dice Icon Slice and Dice with 1+ Combo Points.
  2. Maintain Slice and Dice Icon Slice and Dice by casting Envenom Icon Envenom with 4+ Combo Points.
  3. Maintain Rupture Icon Rupture with 4+ Combo Points.
  4. Maintain Garrote Icon Garrote.
  5. Activate Vendetta Icon Vendetta when available.
  6. Use your Covenant Ability on cooldown.
  7. Activate Vanish Icon Vanish on cooldown if using Subterfuge Icon Subterfuge or with 5 Combo Points in order to facilitate Master Assassin Icon Master Assassin-empowered Envenom Icon Envenoms.
  8. Use Shiv Icon Shiv on cooldown.
  9. Cast Envenom Icon Envenom with 4-5 Combo Points (5-6 with Deeper Stratagem Icon Deeper Stratagem).
  10. Cast Fan of Knives Icon Fan of Knives when Hidden Blades Icon Hidden Blades is talented and above 19 stacks.
  11. Cast Ambush Icon Ambush to generate Combo Points whenever it is usable.
  12. Cast Mutilate Icon Mutilate to generate Combo Points.
4.

Multiple Target Ability Priority List for Assassination Rogue

  1. Apply Slice and Dice Icon Slice and Dice with 1+ Combo Points.
  2. Maintain Crimson Tempest Icon Crimson Tempest with 4-5 Combo Points.
  3. Maintain Rupture Icon Rupture on up to 4 targets.
  4. Maintain Slice and Dice Icon Slice and Dice by casting Envenom Icon Envenom with 4-5 Combo Points.
  5. Activate Vendetta Icon Vendetta when available.
  6. Use your Covenant Ability on cooldown.
  7. Use Shiv Icon Shiv on cooldown if you have the Grudge Match Icon Assassination Rogue 2-Piece.
  8. Activate Vanish Icon Vanish and apply Garrote Icon Garrote empowered by Subterfuge Icon Subterfuge to as many targets as possible.
  9. Maintain Garrote Icon Garrote on up to 3 targets (try to not overwrite empowered ones).
  10. Use excess CP to apply further Rupture Icon Ruptures to additional targets.
  11. Cast Envenom Icon Envenom with 4-5 Combo Points.
  12. Cast Fan of Knives Icon Fan of Knives when 4+ targets are within range to generate Combo Points, or to reapply Deadly Poison Icon Deadly Poison to every target.
  13. Cast Mutilate Icon Mutilate if there are less than 4 targets in range to generate Combo Points.
5.

Important Notes

  • You will only ever cast Slice and Dice Icon Slice and Dice once per fight. You will naturally maintain it whenever you cast Envenom as a regular part of your rotation thanks to Cut to the Chase Icon Cut to the Chase.
  • Optimal usage of finishers is at 4-5 Combo Points with Vigor Icon Vigor, or 5-6 Combo Points with Deeper Stratagem Icon Deeper Stratagem.
  • If Rupture Icon Rupture is about to fall off, it can be reapplied with any number of Combo Points to maintain uptime. It is best to apply it with 5 Combo Points, however, for maximum Energy efficiency and rotational fluidity.
  • Use Vanish Icon Vanish to apply full duration Nightstalker Icon Nightstalker-empowered Rupture Icon Ruptures or Subterfuge Icon Subterfuge empowered Garrote Icon Garrotes. When talented into Master Assassin, pool Combo Points before vanishing for a Envenom Icon Envenom > Mutilate Icon Mutilate > Envenom Icon Envenom sequence.
  • You should never have more than 80 Energy when activating your Vendetta Icon Vendetta on a target. Try to activate Vendetta on a target that will live for the entire duration of the debuff.
  • If talented into Subterfuge Icon Subterfuge you will want to delay your Vendetta Icon Vendetta for about 20 seconds to line up with Vanish Icon Vanish.
  • Try to refresh Rupture Icon Rupture and Slice and Dice Icon Slice and Dice before using Shiv Icon Shiv. The goal is to get three 4-5 Combo Point Envenom Icon Envenoms inside the 9-second duration of Shiv Icon Shiv.
  • Make sure to snapshot your bleeds right before Vendetta Icon Vendetta ends when using Grudge Match Icon Assassination Rogue 4-Piece.

For more information on your opening sequence, please refer to our dedicated section.

6.

Poisons

Your Lethal Poison should always be Deadly Poison Icon Deadly Poison.

You have two choices for your non-lethal poison, Crippling Poison Icon Crippling Poison and Numbing Poison Icon Numbing Poison. For raiding you will want to use Numbing Poison unless your raid wants you to slow a specific group of targets. For Mythic+ you will want to use the poison that best suits your tank's needs. Crippling Poison allows your tank to more easily kite enemies, whereas Numbing Poison slows their attack speed instead.

7.

Notable Mechanics for Assassination Rogue

7.1.

Nightstalker/Subterfuge Snapshotting

The 50% damage buff from Nightstalker Icon Nightstalker and the 80% damage buff from Subterfuge Icon Subterfuge are removed when you overwrite the bleed you empowered by re-applying an un-empowered bleed. Therefore it is best to let the bleed run its full duration before refreshing it.

It is best to use your Vanish Icon Vanish before Vendetta Icon Vendetta to maximize your Nightstalker Icon Nightstalker or Subterfuge Icon Subterfuge bonus.

7.2.

Pandemic

When you refresh Rupture Icon Rupture, Garrote Icon Garrote, Crimson Tempest Icon Crimson Tempest, Envenom Icon Envenom or Slice and Dice Icon Slice and Dice before they expire, the remaining duration is added to the newly applied effect, up to 30% of the newly applied base duration. This mechanic is called "Pandemic".

Example — You can safely refresh a 5-Combo Point Rupture when it has 7.2 seconds or less remaining, because its base duration is 24 seconds. Deeper Stratagem Icon Deeper Stratagem allows for 6 Combo Point Ruptures, which last 28 seconds. 6-Combo Point Ruptures can be refreshed safely when they have 8.4 seconds or less remaining.

Safe Pandemic refresh timing is based off the newly applied base duration and not the original length of the effect. Therefore, a 2 Combo Point Rupture can benefit from full Pandemic if it is refreshed by a 4-5 Combo Point Rupture. We explain how to take advantage of this in the opening sequence later in the guide.

If you are talented into Exsanguinate Icon Exsanguinate, you should refresh your bleed effects (Rupture Icon Rupture and Garrote Icon Garrote) before Exsanguinate casts, for maximum efficacy.

8.

Academic Information for Assassination Rogue

8.1.

The Interaction Between Combo Points and Energy

As an Assassination Rogue, many of your abilities require Energy to be utilized. Your Energy bar has a maximum capacity of 120 Energy (170 Energy when you have Vigor Icon Vigor talented). Your baseline rate of Energy regeneration is 10 Energy per second, however it is increased by:

  • current Haste rating (Haste and Haste-enhancing buffs);
  • the Venomous Wounds Icon Venomous Wounds passive;
  • the passive regeneration increase of Vigor Icon Vigor.

Higher Energy regeneration allows for higher uptimes on Envenom Icon Envenom, which awards much higher DPS over an extended encounter.

It is very important to avoid resource overflow. Capping Energy and overcapping Combo Points is an egregious error and special care should be taken to avoid wasting precious resources. "Pooling" higher levels of Energy, however, can be very beneficial (providing you do not cap), as it allows you to store resources in anticipation of a window of high burst. This can help reduce the patchiness of your debuff/buff uptimes which will result in more consistent and smoother damage output.

Combo Point generation is increased by Seal Fate Icon Seal Fate, which causes your critical hits with melee Combo generators to add an additional Combo Point on your target per critical hit. This means Mutilate Icon Mutilate can generate up to 4 Combo Points if the main hand and the off-hand both critically strike. Fan of Knives Icon Fan of Knives can generate the maximum number of Combo Points with a single cast if it critically strikes 4 or more targets. You should never cast a Combo Point generator at or above 4 Combo Points, unless it is Garrote Icon Garrote or Poisoned Knife Icon Poisoned Knife (as neither of these benefits from Seal Fate). Do not use Poisoned Knife Icon Poisoned Knife to reach 5 Combo Points, unless you are out of range of the boss and in danger of hitting the Energy cap.

8.2.

Pooling Energy and Combo Points

It can be very beneficial to "pool" your Energy and Combo Points, which involves auto-attacking while your Energy regenerates. The advantage this provides is variable, meaning that pooling does not always result in damage gained. Situations where pooling Energy and Combo Points is beneficial include:

  • before the cooldown on Shiv Icon Shiv recharges, to allow for immediate use and optimized burst;
  • before an important add spawns, so you can apply as much instant pressure as possible;
  • to assist with Envenom Icon Envenom uptime, by chaining two Envenoms so that the buff does not drop;
  • an encounter-specific buff or damage phase is imminent.

Pooling Energy is not a magical DPS gain by itself. It allows you to slightly adjust the timing of your abilities so that you fit more attacks during periods of increased damage (provided you can properly identify when such periods are going to come).

8.3.

Defensive Utility

All Rogues have a solid number of defensive cooldowns, making them the best candidate for soaking required mechanics and dealing with heavy incoming damage.

  • Feint Icon Feint reduces AoE damage taken by 40% for 5 seconds for 35 Energy. When talented into Elusiveness Icon Elusiveness, it also reduces all other damage by 30%. Feint is fantastic for dealing with predictable raid damage.
  • Cloak of Shadows Icon Cloak of Shadows provides magic immunity for 1 second, followed by 4 seconds where all spells will miss you. Cloak of Shadows has a variety of uses, both pre-emptive and reactive, such as solo soaking mechanics or clearing debuffs that would force you out of melee range.
  • Evasion Icon Evasion increases your Dodge chance by 100% for 10 seconds. This can be useful if you have to tank some adds or the boss for a few seconds. In rare cases it can be used to negate physical ranged attacks or spells.
  • Cheat Death Icon Cheat Death is a talent that allows you to escape lethal damage once every 6 minutes. The damage cannot exceed more than twice your maximum health. Cheat Death is great for soaking mechanics that pierce immunities and damage reductions, as it guarantees your survival. It is also great for encounters with bursty damage that might take you by surprise, as you get a free get out of jail free card at least once in the encounter.
  • Crimson Vial Icon Crimson Vial provides a respectable amount of healing on a 30-second cooldown.

Do not forget about this defensive toolkit, as it can be a major asset for both individual and raid-wide survivability.

9.

Opening Sequences for Assassination Rogue

Assassination has different openers based on your choice of talents.

When using Master Assassin Icon Master Assassin:

  1. Start from Stealth Icon Stealth.
  2. Cast Mutilate Icon Mutilate or Serrated Bone Spike Icon Serrated Bone Spike if you are Necrolord.
  3. Apply Slice and Dice Icon Slice and Dice.
  4. Cast Mutilate Icon Mutilate.
  5. Apply Garrote Icon Garrote.
  6. Apply Rupture Icon Rupture.
  7. Activate Vendetta Icon Vendetta.
  8. Use your Covenant ability.
  9. Cast Mutilate Icon Mutilate until 4+ CP.
  10. Cast Shiv Icon Shiv
  11. Activate Vanish Icon Vanish.
  12. Cast Envenom Icon Envenom.
  13. Cast Mutilate Icon Mutilate until 4+CP.
  14. Cast Envenom Icon Envenom.
  15. Continue with normal priority.

When using Subterfuge Icon Subterfuge:

  1. Start from Stealth Icon Stealth.
  2. Apply Garrote Icon Garrote.
  3. Use Slice and Dice Icon Slice and Dice.
  4. Cast Ambush Icon Ambush.
  5. Use your Covenant ability.
  6. Cast Mutilate Icon Mutilate if not yet at 4+ CP.
  7. Apply Rupture Icon Rupture with 4+ CP.
  8. Activate Vendetta Icon Vendetta.
  9. Cast Shiv Icon Shiv.
  10. Cast Mutilate Icon Mutilate until you are at 4+ CP.
  11. Cast Envenom Icon Envenom with 4+ CP.
  12. Cast Mutilate Icon Mutilate until 4+ CP.
  13. Cast Envenom Icon Envenom.
  14. Activate Vanish Icon Vanish when Garrote Icon Garrote has less than 5.4 seconds left on its duration.
  15. Continue with normal priority.
10.

Extended Assassination Rotation

The fully inclusive rotation is a lot more extensive than the one listed above, but gives only marginal gains at best. As such, it is included here (in raw simc format).

# Default consumables
potion=phantom_fire
flask=spectral_flask_of_power
food=feast_of_gluttonous_hedonism
augmentation=veiled
temporary_enchant=main_hand:shaded_sharpening_stone/off_hand:shaded_sharpening_stone

# This default action priority list is automatically created based on your character.
# It is a attempt to provide you with a action list that is both simple and practicable,
# while resulting in a meaningful and good simulation. It may not result in the absolutely highest possible dps.
# Feel free to edit, adapt and improve it to your own needs.
# SimulationCraft is always looking for updates and improvements to the default action lists.

# Executed before combat begins. Accepts non-harmful actions only.
actions.precombat=apply_poison
actions.precombat+=/flask
actions.precombat+=/augmentation
actions.precombat+=/food
# Snapshot raid buffed stats before combat begins and pre-potting is done.
actions.precombat+=/snapshot_stats
actions.precombat+=/marked_for_death,precombat_seconds=10,if=!covenant.venthyr&raid_event.adds.in>15
actions.precombat+=/fleshcraft,if=soulbind.pustule_eruption|soulbind.volatile_solvent
actions.precombat+=/variable,name=vendetta_cdr,value=1-(runeforge.duskwalkers_patch*(0.45+(set_bonus.tier28_4pc*0.1)))
# The average CDR is 0.22 but due to the RNG nature of CP gen, 2x this value is optimal for syncing logic
actions.precombat+=/variable,name=flagellation_cdr,value=1-(runeforge.obedience*0.44)
# Determine which (if any) stat buff trinket we want to attempt to sync with Vendetta.
actions.precombat+=/variable,name=trinket_sync_slot,value=1,if=trinket.1.has_stat.any_dps&(!trinket.2.has_stat.any_dps|trinket.1.cooldown.duration>=trinket.2.cooldown.duration)|trinket.1.is.inscrutable_quantum_device|(trinket.1.is.shadowgrasp_totem&covenant.venthyr)
actions.precombat+=/variable,name=trinket_sync_slot,value=2,if=trinket.2.has_stat.any_dps&(!trinket.1.has_stat.any_dps|trinket.2.cooldown.duration>trinket.1.cooldown.duration)|trinket.2.is.inscrutable_quantum_device|(trinket.2.is.shadowgrasp_totem&covenant.venthyr)
actions.precombat+=/stealth
actions.precombat+=/slice_and_dice,precombat_seconds=1,if=!talent.nightstalker.enabled

# Executed every time the actor is available.
# Restealth if possible (no vulnerable enemies in combat)
actions=stealth
# Interrupt on cooldown to allow simming interactions with that
actions+=/kick
actions+=/variable,name=single_target,value=spell_targets.fan_of_knives<2
# Combined Energy Regen needed to saturate
actions+=/variable,name=regen_saturated,value=energy.regen_combined>35
actions+=/call_action_list,name=stealthed,if=stealthed.rogue
actions+=/call_action_list,name=cds
# Put SnD up initially for Cut to the Chase, refresh with Envenom if at low duration
actions+=/slice_and_dice,if=!buff.slice_and_dice.up&combo_points>=1
actions+=/envenom,if=buff.slice_and_dice.up&buff.slice_and_dice.remains<5&combo_points>=4
actions+=/call_action_list,name=dot
actions+=/call_action_list,name=direct
actions+=/arcane_torrent,if=energy.deficit>=15+energy.regen_combined
actions+=/arcane_pulse
actions+=/lights_judgment
actions+=/bag_of_tricks

# Cooldowns
# If adds are up, snipe the one with lowest TTD. Use when dying faster than CP deficit or without any CP.
actions.cds=marked_for_death,line_cd=1.5,target_if=min:target.time_to_die,if=raid_event.adds.up&(!variable.single_target|target.time_to_die<30)&(target.time_to_die<combo_points.deficit*1.5|combo_points.deficit>=cp_max_spend)
# If no adds will die within the next 30s, use MfD for max CP. Attempt to sync with Flagellation if possible.
actions.cds+=/marked_for_death,if=raid_event.adds.in>30-raid_event.adds.duration&combo_points.deficit>=cp_max_spend&!cooldown.shiv.ready&(!covenant.venthyr|debuff.flagellation.up|cooldown.flagellation.remains>15)
# Sync Vendetta window with Nightstalker+Exsanguinate if applicable
actions.cds+=/variable,name=vendetta_nightstalker_condition,value=!talent.nightstalker.enabled|!talent.exsanguinate.enabled|cooldown.exsanguinate.remains<5-2*talent.deeper_stratagem.enabled
# Wait on Vendetta for Garrote with MA, unless we are at max CP for Flagellation
actions.cds+=/variable,name=vendetta_ma_condition,value=!talent.master_assassin.enabled|dot.garrote.ticking|covenant.venthyr&combo_points.deficit=0
# Sync Vendetta with Flagellation and Sepsis as long as we won't lose a cast over the fight duration
actions.cds+=/variable,name=vendetta_covenant_condition,if=covenant.kyrian|covenant.necrolord|covenant.none,value=1
actions.cds+=/variable,name=vendetta_covenant_condition,if=covenant.venthyr,value=floor((fight_remains-20)%(120*variable.vendetta_cdr))>floor((fight_remains-20-cooldown.flagellation.remains)%(120*variable.vendetta_cdr))|buff.flagellation_buff.up|debuff.flagellation.up|fight_remains<20
actions.cds+=/variable,name=vendetta_covenant_condition,if=covenant.night_fae,value=floor((fight_remains-20)%(120*variable.vendetta_cdr))>floor((fight_remains-20-cooldown.sepsis.remains)%(120*variable.vendetta_cdr))|dot.sepsis.ticking|fight_remains<20
# Fleshcraft for Pustule Eruption if not stealthed or in a cooldown cycle
actions.cds+=/fleshcraft,if=(soulbind.pustule_eruption|soulbind.volatile_solvent)&!stealthed.all&!debuff.vendetta.up&master_assassin_remains=0&(energy.time_to_max_combined>2|!debuff.shiv.up)
# Sync Flagellation with Vendetta as long as we won't lose a cast over the fight duration
actions.cds+=/flagellation,if=!stealthed.rogue&(cooldown.vendetta.remains<3&variable.vendetta_ma_condition&effective_combo_points>=4&target.time_to_die>10|debuff.vendetta.up|fight_remains<24)
actions.cds+=/flagellation,if=!stealthed.rogue&effective_combo_points>=4&(floor((fight_remains-24)%(cooldown*variable.flagellation_cdr))>floor((fight_remains-24-cooldown.vendetta.remains*variable.vendetta_cdr)%(cooldown*variable.flagellation_cdr)))
# Sync Sepsis with Vendetta as long as we won't lose a cast over the fight duration, but prefer targets that will live at least 10s
actions.cds+=/sepsis,if=!stealthed.rogue&dot.garrote.ticking&(cooldown.vendetta.remains<1&target.time_to_die>10|debuff.vendetta.up|fight_remains<10)
actions.cds+=/sepsis,if=!stealthed.rogue&(floor((fight_remains-10)%cooldown)>floor((fight_remains-10-cooldown.vendetta.remains*variable.vendetta_cdr)%cooldown))
actions.cds+=/vendetta,if=!stealthed.rogue&dot.rupture.ticking&!debuff.vendetta.up&variable.vendetta_nightstalker_condition&variable.vendetta_ma_condition&variable.vendetta_covenant_condition
# Exsanguinate when not stealthed and both Rupture and Garrote are up for long enough.
actions.cds+=/exsanguinate,if=!stealthed.rogue&(!dot.garrote.refreshable&dot.rupture.remains>4+4*cp_max_spend|dot.rupture.remains*0.5>target.time_to_die)&target.time_to_die>4
# Shiv if DoTs are up; if Night Fae attempt to sync with Sepsis or Vendetta if we won't waste more than half Shiv's cooldown
actions.cds+=/shiv,if=!debuff.shiv.up&(dot.garrote.ticking&dot.rupture.ticking)&(!covenant.night_fae|((cooldown.sepsis.ready|cooldown.sepsis.remains>12)+(cooldown.vendetta.ready|cooldown.vendetta.remains*variable.vendetta_cdr>12)=2))
actions.cds+=/potion,if=buff.bloodlust.react|fight_remains<30|debuff.vendetta.up
actions.cds+=/blood_fury,if=debuff.vendetta.up
actions.cds+=/berserking,if=debuff.vendetta.up
actions.cds+=/fireblood,if=debuff.vendetta.up
actions.cds+=/ancestral_call,if=debuff.vendetta.up
actions.cds+=/call_action_list,name=vanish,if=!stealthed.all&master_assassin_remains=0
actions.cds+=/use_item,name=windscar_whetstone,if=spell_targets.fan_of_knives>desired_targets|raid_event.adds.in>60|fight_remains<7
# Sync the priority stat buff trinket with Vendetta, otherwise use on cooldown
actions.cds+=/use_items,slots=trinket1,if=variable.trinket_sync_slot=1&(debuff.vendetta.up|fight_remains<=20)|(variable.trinket_sync_slot=2&!trinket.2.cooldown.ready)|!variable.trinket_sync_slot
actions.cds+=/use_items,slots=trinket2,if=variable.trinket_sync_slot=2&(debuff.vendetta.up|fight_remains<=20)|(variable.trinket_sync_slot=1&!trinket.1.cooldown.ready)|!variable.trinket_sync_slot

# Direct damage abilities
# Envenom at 4+ (5+ with DS) CP. Immediately on 2+ targets, with Vendetta, or with TB; otherwise wait for some energy. Also wait if Exsg combo is coming up.
actions.direct=envenom,if=effective_combo_points>=4+talent.deeper_stratagem.enabled&(debuff.vendetta.up|debuff.shiv.up|debuff.flagellation.up|energy.deficit<=25+energy.regen_combined|!variable.single_target|effective_combo_points>cp_max_spend)&(!talent.exsanguinate.enabled|cooldown.exsanguinate.remains>2)
actions.direct+=/variable,name=use_filler,value=combo_points.deficit>1|energy.deficit<=25+energy.regen_combined|!variable.single_target
# Apply SBS to all targets without a debuff as priority, preferring targets dying sooner after the primary target
actions.direct+=/serrated_bone_spike,if=variable.use_filler&!dot.serrated_bone_spike_dot.ticking
actions.direct+=/serrated_bone_spike,target_if=min:target.time_to_die+(dot.serrated_bone_spike_dot.ticking*600),if=variable.use_filler&!dot.serrated_bone_spike_dot.ticking
# Keep from capping charges or burn at the end of fights
actions.direct+=/serrated_bone_spike,if=variable.use_filler&master_assassin_remains<0.8&(fight_remains<=5|cooldown.serrated_bone_spike.max_charges-charges_fractional<=0.25)
# When MA is not at high duration, sync with damage buffs without overwriting Lead by Example
actions.direct+=/serrated_bone_spike,if=!set_bonus.tier28_2pc&variable.use_filler&master_assassin_remains<0.8&(soulbind.lead_by_example.enabled&!buff.lead_by_example.up&debuff.vendetta.up|buff.marrowed_gemstone_enhancement.up|!variable.single_target&debuff.shiv.up)
actions.direct+=/serrated_bone_spike,if=set_bonus.tier28_2pc&variable.use_filler&master_assassin_remains<0.8&debuff.grudge_match.up&!buff.lead_by_example.up&raid_event.adds.in>5
# Fan of Knives at 19+ stacks of Hidden Blades or against 4+ targets.
actions.direct+=/fan_of_knives,if=variable.use_filler&(buff.hidden_blades.stack>=19|(!priority_rotation&spell_targets.fan_of_knives>=4+stealthed.rogue))
# Fan of Knives to apply poisons if inactive on any target (or any bleeding targets with priority rotation) at 3T
actions.direct+=/fan_of_knives,target_if=!dot.deadly_poison_dot.ticking&(!priority_rotation|dot.garrote.ticking|dot.rupture.ticking),if=variable.use_filler&spell_targets.fan_of_knives>=3
actions.direct+=/echoing_reprimand,if=variable.use_filler&cooldown.vendetta.remains>10
actions.direct+=/ambush,if=variable.use_filler&(master_assassin_remains=0&!runeforge.doomblade|buff.blindside.up)
# Tab-Mutilate to apply Deadly Poison at 2 targets
actions.direct+=/mutilate,target_if=!dot.deadly_poison_dot.ticking,if=variable.use_filler&spell_targets.fan_of_knives=2
actions.direct+=/mutilate,if=variable.use_filler

# Damage over time abilities
# Limit secondary Garrotes for priority rotation if we have 35 energy regen or Garrote will expire on the primary target
actions.dot=variable,name=skip_cycle_garrote,value=priority_rotation&(dot.garrote.remains<cooldown.garrote.duration|variable.regen_saturated)
# Limit secondary Ruptures for priority rotation if we have 35 energy regen or Shiv is up on 2T+
actions.dot+=/variable,name=skip_cycle_rupture,value=priority_rotation&(debuff.shiv.up&spell_targets.fan_of_knives>2|variable.regen_saturated)
# Limit Ruptures if Vendetta+Shiv/Master Assassin is up and we have 2+ seconds left on the Rupture DoT
actions.dot+=/variable,name=skip_rupture,value=debuff.vendetta.up&(debuff.shiv.up|master_assassin_remains>0)&dot.rupture.remains>2
# Special Garrote and Rupture setup prior to Exsanguinate cast
actions.dot+=/garrote,if=talent.exsanguinate.enabled&!will_lose_exsanguinate&dot.garrote.pmultiplier<=1&cooldown.exsanguinate.remains<2&spell_targets.fan_of_knives=1&raid_event.adds.in>6&dot.garrote.remains*0.5<target.time_to_die
actions.dot+=/rupture,if=talent.exsanguinate.enabled&(effective_combo_points>=cp_max_spend&cooldown.exsanguinate.remains<1&dot.rupture.remains*0.5<target.time_to_die)
# Garrote upkeep, also tries to use it as a special generator for the last CP before a finisher
actions.dot+=/pool_resource,for_next=1
actions.dot+=/garrote,if=refreshable&combo_points.deficit>=1&(pmultiplier<=1|remains<=tick_time&spell_targets.fan_of_knives>=3)&(!will_lose_exsanguinate|remains<=tick_time*2&spell_targets.fan_of_knives>=3)&(target.time_to_die-remains)>4&master_assassin_remains=0
actions.dot+=/pool_resource,for_next=1
actions.dot+=/garrote,cycle_targets=1,if=!variable.skip_cycle_garrote&target!=self.target&refreshable&combo_points.deficit>=1&(pmultiplier<=1|remains<=tick_time&spell_targets.fan_of_knives>=3)&(!will_lose_exsanguinate|remains<=tick_time*2&spell_targets.fan_of_knives>=3)&(target.time_to_die-remains)>12&master_assassin_remains=0
# Crimson Tempest on multiple targets at 4+ CP when running out in 2-5s as long as we have enough regen and aren't setting up for Vendetta
actions.dot+=/crimson_tempest,target_if=min:remains,if=spell_targets>=2&effective_combo_points>=4&energy.regen_combined>20&(!cooldown.vendetta.ready|dot.rupture.ticking)&remains<2+3*(spell_targets>=4)
# Keep up Rupture at 4+ on all targets (when living long enough and not snapshot)
actions.dot+=/rupture,if=!variable.skip_rupture&effective_combo_points>=4&refreshable&(pmultiplier<=1|remains<=tick_time&spell_targets.fan_of_knives>=3)&(!will_lose_exsanguinate|remains<=tick_time*2&spell_targets.fan_of_knives>=3)&target.time_to_die-remains>(4+(runeforge.dashing_scoundrel*5)+(runeforge.doomblade*5)+(variable.regen_saturated*6))
actions.dot+=/rupture,cycle_targets=1,if=!variable.skip_cycle_rupture&!variable.skip_rupture&target!=self.target&effective_combo_points>=4&refreshable&(pmultiplier<=1|remains<=tick_time&spell_targets.fan_of_knives>=3)&(!will_lose_exsanguinate|remains<=tick_time*2&spell_targets.fan_of_knives>=3)&target.time_to_die-remains>(4+(runeforge.dashing_scoundrel*5)+(runeforge.doomblade*5)+(variable.regen_saturated*6))
# Fallback AoE Crimson Tempest with the same logic as above, but ignoring the energy conditions if we aren't using Rupture
actions.dot+=/crimson_tempest,if=spell_targets>=2&effective_combo_points>=4&remains<2+3*(spell_targets>=4)
# Crimson Tempest on ST if in pandemic and nearly max energy and if Envenom won't do more damage due to TB/MA
actions.dot+=/crimson_tempest,if=spell_targets=1&(!runeforge.dashing_scoundrel|rune_word.frost.enabled)&master_assassin_remains=0&effective_combo_points>=(cp_max_spend-1)&refreshable&!will_lose_exsanguinate&(!debuff.shiv.up|debuff.grudge_match.remains>2)&target.time_to_die-remains>4

# Stealthed Actions
# Nighstalker on 3T: Crimson Tempest
actions.stealthed=crimson_tempest,if=talent.nightstalker.enabled&spell_targets>=3&combo_points>=4&target.time_to_die-remains>6
# Nighstalker on 1T: Snapshot Rupture
actions.stealthed+=/rupture,if=talent.nightstalker.enabled&combo_points>=4&target.time_to_die-remains>6
# Subterfuge: Apply or Refresh with buffed Garrotes
actions.stealthed+=/pool_resource,for_next=1
actions.stealthed+=/garrote,target_if=min:remains,if=talent.subterfuge.enabled&!will_lose_exsanguinate&(remains<12%exsanguinated_rate|pmultiplier<=1)&target.time_to_die-remains>2
# Subterfuge + Exsg on 1T: Refresh Garrote at the end of stealth to get max duration before Exsanguinate
actions.stealthed+=/pool_resource,for_next=1
actions.stealthed+=/garrote,if=talent.subterfuge.enabled&talent.exsanguinate.enabled&active_enemies=1&buff.subterfuge.remains<1.3

# Vanish
# Finish with max CP for Nightstalker, unless using Deathly Shadows
actions.vanish=variable,name=nightstalker_cp_condition,value=(!runeforge.deathly_shadows&effective_combo_points>=cp_max_spend)|(runeforge.deathly_shadows&combo_points<2)
# Vanish with Exsg + Nightstalker: Maximum CP and Exsg ready for next GCD
actions.vanish+=/vanish,if=talent.exsanguinate.enabled&talent.nightstalker.enabled&variable.nightstalker_cp_condition&cooldown.exsanguinate.remains<1
# Vanish with Nightstalker + No Exsg: Maximum CP and Vendetta up
actions.vanish+=/vanish,if=talent.nightstalker.enabled&!talent.exsanguinate.enabled&variable.nightstalker_cp_condition&debuff.vendetta.up
actions.vanish+=/pool_resource,for_next=1,extra_amount=45
actions.vanish+=/vanish,if=talent.subterfuge.enabled&cooldown.garrote.up&debuff.vendetta.up&(dot.garrote.refreshable|dot.garrote.pmultiplier<=1)&combo_points.deficit>=(spell_targets.fan_of_knives>?4)&raid_event.adds.in>12
# Vanish with Master Assasin: Rupture+Garrote not in refresh range, during Vendetta+Shiv. Sync with Sepsis final hit if possible.
actions.vanish+=/vanish,if=(talent.master_assassin.enabled|runeforge.mark_of_the_master_assassin)&!dot.rupture.refreshable&dot.garrote.remains>3&debuff.vendetta.up&(debuff.shiv.up|debuff.vendetta.remains<4|dot.sepsis.ticking)&dot.sepsis.remains<3
11.

Changelog

  • 22 Feb. 2022: Updated for Patch 9.2.
  • 02 Nov. 2021: Reviewed and approved for Patch 9.1.5.
  • 28 Jun. 2021: Updated for Patch 9.1.
  • 09 Apr. 2021: Updated Sample Openers.
  • 09 Mar. 2021: Reviewed for Patch 9.0.5.
  • 13 Feb. 2021: Improved Poison section.
  • 15 Jan. 2021: Removed outdated disclaimer.
  • 09 Dec. 2020: Updated single-target priority list and sample Subterfuge opener.
  • 23 Nov. 2020: Page updated for the Shadowlands release, added Covenant ability to rotation.
  • 12 Oct. 2020: Page updated for the Shadowlands pre-patch.
Show more
Show less