Cogspark Works · Rotation
Guardian Druid
The priority list SimulationCraft plays this spec with · engine build 20261019-1860cd1-w8a2c73d · game data 12.1.5.70448
§1How to read this
A rotation in SimulationCraft is a priority list, not a sequence. Every time the character can act, the sim starts at the top of The main loop and does the first line whose conditions hold. Lower lines only happen when nothing above them fits.
- The page shows the list as a decision tree: set what you know about the fight and your talents, and it lights the lists the sim checks, in order.
- Cast lines use the ability. Hover, focus or tap an icon or a name for its tooltip.
- Go through another list: its lines are checked in order; when none of them fits, the sim comes back and carries on with the next line here.
- Switch to another list: the rest of this list is skipped and the choice is made from that list alone.
- Helpers are values the list works out on the spot, such as “are we holding a cooldown”. Setting one takes no time and the list carries on. The tree works out the ones your situation settles.
The list is written to perform well in the sim, not to be the only right way to play. Every line keeps its original simc text under the simc toggle at its right, and the list author’s note where there is one.
§2Decision tree
Set what you know. The tree lights the lists the sim checks, top to bottom; in each list it presses the first ability whose conditions hold and that is ready. Readiness (cooldowns, resources) isn’t in the list, so a lit ability is the first one allowed, not a promise it is cast.
- The main loop
- Cooldowns
- Items
- Bear
- Heart of the wild
- Feline potential
Before the pull, done once before the fight starts (5 steps)
Before the pull5 lines
- Record your stats before the pull (sim bookkeeping)Snapshot raid buffed stats before combat begins and pre-potting is done.
simc
snapshot_stats - Cast Bear Form if Bear Form isn't active and you don't have Heart of the Wild talentedSnapshot raid buffed stats before combat begins and pre-potting is done.
simc
bear_form,if=buff.bear_form.down&!talent.heart_of_the_wild.enabled - Cast Cat Form if Bear Form isn't active and you have Heart of the Wild talented
simc
cat_form,if=buff.bear_form.down&talent.heart_of_the_wild.enabled - Set trinket sync slot to 1any of these:
- all of these:
- trinket 1 has a cooldown
- trinket 1 can grant a stat buff
- any of these:
- trinket 2 can't grant a stat buff
- trinket 1's cooldown is at least trinket 2's cooldown
- trinket 2 has no cooldown
simc
variable,name=trinket_sync_slot,value=1,if=trinket.1.has_cooldown&trinket.1.has_stat.any_dps&(!trinket.2.has_stat.any_dps|trinket.1.cooldown.duration>=trinket.2.cooldown.duration)|!trinket.2.has_cooldown - all of these:
- Set trinket sync slot to 2any of these:
- all of these:
- trinket 2 has a cooldown
- trinket 2 can grant a stat buff
- any of these:
- trinket 1 can't grant a stat buff
- trinket 2's cooldown is more than trinket 1's cooldown
- trinket 1 has no cooldown
simc
variable,name=trinket_sync_slot,value=2,if=trinket.2.has_cooldown&trinket.2.has_stat.any_dps&(!trinket.1.has_stat.any_dps|trinket.2.cooldown.duration>trinket.1.cooldown.duration)|!trinket.1.has_cooldown - all of these:
The main loop5 lines
- Switch your target if the sim's fight style is DungeonRoutetarget on the enemy with the highest target's healthAt most once every 5 s
simc
retarget,target_if=max:target.health,line_cd=5,if=fight_style.dungeonroute - Start auto-attacking
simc
auto_attack go through Cooldowns, then carry on below if nothing there fits
simc
call_action_list,name=cooldownsCooldowns12 lines
- Cast Blood Fury
simc
blood_fury - Cast Berserking
simc
berserking - Cast Fireblood
simc
fireblood - Cast Ancestral Call
simc
ancestral_call - Cast Bristling Fur if not
target.cooldown.pause_action.remainsand Mangle is on cooldown and Thrash is on cooldown and ((you have less than 60 Rage and you have Killing Blow talented) or (you have less than 40 Rage and you don't have Killing Blow talented)) and Ravage isn't activesimc
bristling_fur,if=!target.cooldown.pause_action.remains&cooldown.mangle.remains&cooldown.thrash.remains&(rage<60&talent.killing_blow.enabled|rage<40&!talent.killing_blow.enabled)&!buff.ravage.up - Cast Barkskin if Bear Form is active
simc
barkskin,if=buff.bear_form.up - Cast Lunar Beam
simc
lunar_beam - Cast Heart of the Wild if (there are 5 or fewer enemies and you have Moonkin Form talented and Cat Form is active) or (you don't have Moonkin Form talented and Cat Form is active) or (Moonkin Form is active and there are 6 or more enemies and you have Moonkin Form talented)
simc
heart_of_the_wild,if=(active_enemies<=5&talent.moonkin_form.enabled&buff.cat_form.up|!talent.moonkin_form.enabled&buff.cat_form.up)|buff.moonkin_form.up&active_enemies>=6&talent.moonkin_form.enabled - Cast Convoke the Spirits if Bear Form is active
simc
convoke_the_spirits,if=buff.bear_form.up - Cast Sundering Roar if ((Thrash has more than 4 stacks on the target and your rank in Flashing Claws is 2) or (Thrash has more than 3 stacks on the target and your rank in Flashing Claws is 1) or (Thrash has more than 2 stacks on the target and you don't have Flashing Claws talented)) and Thrash is on cooldown
simc
sundering_roar,if=(dot.thrash.stack>4&talent.flashing_claws.rank=2|dot.thrash.stack>3&talent.flashing_claws.rank=1|dot.thrash.stack>2&!talent.flashing_claws.enabled)&!cooldown.thrash.up - Cast Berserk if ((Heart of the Wild is on cooldown and you have Heart of the Wild talented) or you don't have Ravage talented or you don't have Heart of the Wild talented) and (Thrash is on cooldown or (Cat Form is active and you don't have Convoke the Spirits talented)) and (no adds are up or the time left in the current add wave is at least 15 s)
simc
berserk,if=(!cooldown.heart_of_the_wild.up&(talent.heart_of_the_wild.enabled)|!talent.ravage.enabled|!talent.heart_of_the_wild.enabled)&(!cooldown.thrash.up|(buff.cat_form.up&!talent.convoke_the_spirits.enabled))&(!raid_event.adds.up|raid_event.adds.remains>=15) - Cast Wild Guardian if Answered Calling isn't active and Lunar Beam is active
simc
wild_guardian,if=!buff.answered_calling.up&buff.lunar_beam.up
go through Items, then carry on below if nothing there fits
simc
call_action_list,name=itemsItems6 lines
- Drink a potion if Lunar Beam is active
simc
potion,if=buff.lunar_beam.up - Use Voracious Heart of Ulatek if Bs Inc has at least 20 s leftUsed without waiting for the global cooldown
simc
use_item,name=voracious_heart_of_ulatek,use_off_gcd=1,if=buff.bs_inc.remains>=20 - Use Vile Vial of Volatile Venom if Bs Inc has at least 15 s leftUsed without waiting for the global cooldown
simc
use_item,name=vile_vial_of_volatile_venom,use_off_gcd=1,if=buff.bs_inc.remains>=15 - Use Freightrunners Flask if Bs Inc has at least 15 s leftUsed without waiting for the global cooldown
simc
use_item,name=freightrunners_flask,use_off_gcd=1,if=buff.bs_inc.remains>=15 - Use your trinkets if (trinket sync slot is 1 and (Bs Inc is active or (you don't have Ursoc's Guidance talented and Bs Inc is on cooldown))) or (trinket sync slot is 2 and (trinket 2 is on cooldown or (Bs Inc isn't active and Bs Inc is on cooldown))) or trinket sync slot is false
simc
use_items,slots=trinket1,if=(variable.trinket_sync_slot=1&(buff.bs_inc.up|(!talent.ursocs_guidance.enabled&!cooldown.bs_inc.up))|(variable.trinket_sync_slot=2&(!trinket.2.cooldown.ready|(!buff.bs_inc.up&!cooldown.bs_inc.ready)))|!variable.trinket_sync_slot) - Use your trinkets if (trinket sync slot is 2 and (Bs Inc is active or (you don't have Ursoc's Guidance talented and Bs Inc is on cooldown))) or (trinket sync slot is 1 and (trinket 1 is on cooldown or (Bs Inc isn't active and Bs Inc is on cooldown))) or trinket sync slot is false
simc
use_items,slots=trinket2,if=(variable.trinket_sync_slot=2&(buff.bs_inc.up|(!talent.ursocs_guidance.enabled&!cooldown.bs_inc.up))|(variable.trinket_sync_slot=1&(!trinket.1.cooldown.ready|(!buff.bs_inc.up&!cooldown.bs_inc.ready)))|!variable.trinket_sync_slot)
go through Bear, then carry on below if nothing there fits
simc
call_action_list,name=bearBear26 lines
- Cast Bear Form if Bear Form isn't active and Feline Potential isn't active and you don't have Fluid Form talented
simc
bear_form,if=!buff.bear_form.up&!buff.feline_potential.up&!talent.fluid_form.enabled - Cast Mangle if Cat Form is active
simc
mangle,if=buff.cat_form.up - Cast Ironfur if Gory Fur Ironfur is activeUsed without waiting for the global cooldown
simc
ironfur,use_off_gcd=1,if=buff.gory_fur_ironfur.up - Cast Ironfur if you have 40 or more Rage and you don't have Killing Blow talented and Answered Calling isn't active and Dream Conduit isn't activeUsed without waiting for the global cooldown
simc
ironfur,use_off_gcd=1,if=rage>=40&!talent.killing_blow.enabled&!buff.answered_calling.up&!buff.dream_conduit.up - Cast Ironfur if you have 80 or more Rage and you don't have Killing Blow talented and Answered Calling is activeUsed without waiting for the global cooldown
simc
ironfur,use_off_gcd=1,if=rage>=80&!talent.killing_blow.enabled&buff.answered_calling.up - Cast Ironfur if (Ironfur isn't active or Bs Inc is active) and Answered Calling isn't active and you have Killing Blow talented and Ravage isn't active and Dream Conduit isn't activeUsed without waiting for the global cooldown
simc
ironfur,use_off_gcd=1,if=(!buff.ironfur.up|buff.bs_inc.up)&!buff.answered_calling.up&talent.killing_blow.enabled&!buff.ravage.up&!buff.dream_conduit.up - Cast Ironfur if (Ironfur isn't active or Bs Inc is active) and you have 80 or more Rage and Answered Calling is active and you have Killing Blow talented and Ravage isn't active and Dream Conduit isn't activeUsed without waiting for the global cooldown
simc
ironfur,use_off_gcd=1,if=(!buff.ironfur.up|buff.bs_inc.up)&rage>=80&buff.answered_calling.up&talent.killing_blow.enabled&!buff.ravage.up&!buff.dream_conduit.up - Cast Thrashtarget on the first enemy where Thrash is missing from the target or due for a refresh or (Thrash has fewer than 5 stacks on the target and your rank in Flashing Claws is 2) or (Thrash has fewer than 4 stacks on the target and your rank in Flashing Claws is 1) or (Thrash has fewer than 3 stacks on the target and you don't have Flashing Claws talented)
simc
thrash,target_if=refreshable|(dot.thrash.stack<5&talent.flashing_claws.rank=2|dot.thrash.stack<4&talent.flashing_claws.rank=1|dot.thrash.stack<3&!talent.flashing_claws.enabled) - Cast Mangle if Answered Calling is active and (there is a single enemy or (Bs Inc is active and there are exactly 3 enemies)) and you have Fount of Strength talented
simc
mangle,if=buff.answered_calling.up&(active_enemies=1|(buff.bs_inc.up&active_enemies=3))&talent.fount_of_strength.enabled - Cast Thrash if you have Lunar Calling talented or (you have the 4-piece set bonus (midnight_season_2) and (there is more than one enemy or Answered Calling is active))
simc
thrash,if=talent.lunar_calling.enabled|set_bonus.midnight_season_2_4pc&(active_enemies>1|buff.answered_calling.up) - Cast Maul if Dream Conduit is active and you don't have Fount of Strength talented and Answered Calling isn't active
simc
maul,if=buff.dream_conduit.up&!talent.fount_of_strength.enabled&!buff.answered_calling.up - Cast Maul if you have 55 or more Rage and you have Killing Blow talented and Answered Calling isn't active
simc
maul,if=rage>=55&talent.killing_blow.enabled&!buff.answered_calling.up - Cast Maul if you have 80 or more Rage and you have Killing Blow talented and Answered Calling is active
simc
maul,if=rage>=80&talent.killing_blow.enabled&buff.answered_calling.up - Cast Maul if Gory Fur Maul is active and you have Raze talented
simc
maul,if=buff.gory_fur_maul.up&talent.raze.enabled - Cast Maul if Gory Fur Maul is active and you don't have Raze talented and there are fewer than 3 enemies
simc
maul,if=buff.gory_fur_maul.up&!talent.raze.enabled&active_enemies<3 - Cast Thrash if there are 3 or more enemies and you have Fount of Strength talented
simc
thrash,if=active_enemies>=3&talent.fount_of_strength.enabled - Cast Mangle if Red Moon is on the target or ((Gorestained Claws is active or Answered Calling is active) and you have Fount of Strength talented)
simc
mangle,if=dot.red_moon.ticking|(buff.gorestained_claws.up|buff.answered_calling.up)&talent.fount_of_strength.enabled go through Heart of the wild, then carry on below if nothing there fits
simc
call_action_list,name=heart_of_the_wildHeart of the wild3 lines
- Cast Cat Form if Cat Form isn't active and you don't have Fluid Form talented and Heart of the Wild is off cooldown and you have Heart of the Wild talented and ((there are 5 or fewer enemies and you have Moonkin Form talented) or you don't have Moonkin Form talented) and ((you have less than 30 Rage and you don't have Fount of Strength talented) or you have Fount of Strength talented)
simc
cat_form,if=!buff.cat_form.up&!talent.fluid_form.enabled&cooldown.heart_of_the_wild.up&talent.heart_of_the_wild.enabled&(active_enemies<=5&talent.moonkin_form.enabled|!talent.moonkin_form.enabled)&(rage<30&!talent.fount_of_strength.enabled|talent.fount_of_strength.enabled) - Cast Rake if Cat Form isn't active and you have Fluid Form talented and Heart of the Wild is off cooldown and you have Heart of the Wild talented and ((there are 5 or fewer enemies and you have Moonkin Form talented) or you don't have Moonkin Form talented)
simc
rake,if=!buff.cat_form.up&talent.fluid_form.enabled&cooldown.heart_of_the_wild.up&talent.heart_of_the_wild.enabled&(active_enemies<=5&talent.moonkin_form.enabled|!talent.moonkin_form.enabled) - Cast Moonkin Form if Moonkin Form isn't active and Heart of the Wild is off cooldown and there are 6 or more enemies and you have Moonkin Form talented
simc
moonkin_form,if=!buff.moonkin_form.up&cooldown.heart_of_the_wild.up&active_enemies>=6&talent.moonkin_form.enabled
go through Feline potential, then carry on below if nothing there fits
simc
call_action_list,name=feline_potentialFeline potential6 lines
- Cast Ferocious Bite if Cat Form is active and Feline Potential is active and Bs Inc is active and Rip is on the target and not yet due for a refresh
simc
ferocious_bite,if=(buff.cat_form.up&buff.feline_potential.up&buff.bs_inc.up&!dot.rip.refreshable) - Cast Rake if Cat Form isn't active and you have Fluid Form talented and Feline Potential Counter has exactly 6 stacks and you have Wildpower Surge talented and there are 2 or fewer enemies
simc
rake,if=!buff.cat_form.up&talent.fluid_form.enabled&buff.feline_potential_counter.stack=6&talent.wildpower_surge.enabled&active_enemies<=2 - Cast Rip if Cat Form is active and Feline Potential is active and there are 2 or fewer enemies
simc
rip,if=(buff.cat_form.up&buff.feline_potential.up)&active_enemies<=2 - Cast Mangle if Bs Inc is active and Feline Potential Counter has fewer than 6 stacks and you have Wildpower Surge talented
simc
mangle,if=((buff.bs_inc.up&buff.feline_potential_counter.stack<6&talent.wildpower_surge.enabled)) - Cast Shred if Feline Potential Counter has exactly 6 stacks and Cat Form isn't active and Rake is on the target and not yet due for a refresh and you have Fluid Form talented
simc
shred,if=(buff.feline_potential_counter.stack=6&!buff.cat_form.up&!dot.rake.refreshable&talent.fluid_form.enabled) - Cast Rake if Feline Potential Counter has exactly 6 stacks and Cat Form isn't active and you have Fluid Form talented
simc
rake,if=(buff.feline_potential_counter.stack=6&!buff.cat_form.up&talent.fluid_form.enabled)
- Cast Red Moon if Mangle is off cooldown and Red Moon isn't on the target and (you don't have Convoke the Spirits talented or (you have Convoke the Spirits talented and Convoke the Spirits has at least 5 s of cooldown left))
simc
red_moon,if=cooldown.mangle.up&!dot.red_moon.ticking&(!talent.convoke_the_spirits.enabled|talent.convoke_the_spirits.enabled&cooldown.convoke_the_spirits.remains>=5) - Cast Maul if Ravage isn't active and you have 90 or more Rage and you have Fount of Strength talented and you don't have Raze talented
simc
maul,if=!buff.ravage.up&rage>=90&talent.fount_of_strength.enabled&!talent.raze.enabled - Cast Mangle if Bs Inc is active or (you have Red Moon talented and Red Moon has more than 3 s of cooldown left and ((you have less than 88 Rage and you don't have Fount of Strength talented) or (you have less than 83 Rage and you don't have Fount of Strength talented and you have Soul of the Forest talented) or (you have less than 108 Rage and you have Fount of Strength talented) or (you have less than 103 Rage and you have Fount of Strength talented and you have Soul of the Forest talented)))
simc
mangle,if=buff.bs_inc.up|talent.red_moon.enabled&(cooldown.red_moon.remains>3&(((rage<88)&!talent.fount_of_strength.enabled)|((rage<83)&!talent.fount_of_strength.enabled&talent.soul_of_the_forest.enabled)|((rage<108)&talent.fount_of_strength.enabled)|((rage<103)&talent.fount_of_strength.enabled&talent.soul_of_the_forest.enabled))) - Cast Mangle if you don't have Red Moon talented and ((you have less than 88 Rage and you don't have Fount of Strength talented) or (you have less than 83 Rage and you don't have Fount of Strength talented and you have Soul of the Forest talented) or (you have less than 108 Rage and you have Fount of Strength talented) or (you have less than 103 Rage and you have Fount of Strength talented and you have Soul of the Forest talented))
simc
mangle,if=!talent.red_moon.enabled&(((rage<88)&!talent.fount_of_strength.enabled)|((rage<83)&!talent.fount_of_strength.enabled&talent.soul_of_the_forest.enabled)|((rage<108)&talent.fount_of_strength.enabled)|((rage<103)&talent.fount_of_strength.enabled&talent.soul_of_the_forest.enabled)) - Cast Thrash
simc
thrash - Cast Moonfire if you have Lunation talented and Bear Form is active and you don't have Red Moon talented and (Galactic Guardian is active or there are fewer than 3 enemies or Moonfire is missing from the target or due for a refresh)
simc
moonfire,if=talent.lunation.enabled&buff.bear_form.up&!talent.red_moon.enabled&(buff.galactic_guardian.up|active_enemies<3|refreshable) - Cast Swipe Bear if you don't have Lunation talented or (you have Lunation talented and you have Red Moon talented) or (you have Lunation talented and there are more than 3 enemies)
simc
swipe_bear,if=!talent.lunation.enabled|(talent.lunation.enabled&talent.red_moon.enabled)|talent.lunation.enabled&active_enemies>3
Read from ActionPriorityLists/default/druid_guardian.simc in simulationcraft/simc at 1860cd1d5763, the commit this engine build runs.
Blizzard’s own suggestion system (the one-button rotation), as simc carries it. It is simpler than SimulationCraft’s list and is not what Cogspark simulates.
§2Decision tree
Set what you know. The tree lights the lists the sim checks, top to bottom; in each list it presses the first ability whose conditions hold and that is ready. Readiness (cooldowns, resources) isn’t in the list, so a lit ability is the first one allowed, not a promise it is cast.
- The main loop
- Cooldowns
- Assisted Combat
Before the pull, done once before the fight starts (2 steps)
Before the pull2 lines
- Record your stats before the pull (sim bookkeeping)
simc
snapshot_stats - Cast Bear Form if Bear Form isn't active
simc
bear_form,if=buff.bear_form.down
The main loop3 lines
- Start auto-attacking
simc
auto_attack go through Cooldowns, then carry on below if nothing there fits
simc
call_action_list,name=cooldownsCooldowns6 lines
- Use your trinketsSome cooldowns are not used by the Assisted Combat system. This simple default cooldown usage has been provided by simc.
simc
use_items - Drink a potion
simc
potion - Cast Blood Fury
simc
blood_fury - Cast Berserking
simc
berserking - Cast Fireblood
simc
fireblood - Cast Ancestral Call
simc
ancestral_call
go through Assisted Combat, then carry on below if nothing there fits
simc
call_action_list,name=assisted_combatAssisted Combat13 lines
- Cast BerserkThis is the default action priority list from the game's Assisted Combat system. This is for Blizzard automation and is not included in the game's Assisted Combat system.
simc
berserk - Cast Convoke the SpiritsThis is for Blizzard automation and is not included in the game's Assisted Combat system.
simc
convoke_the_spirits - Cast Thrash if your distance to the target is at most 8 and there are more than 3 enemies
simc
thrash,if=target.distance<=8&active_enemies>3 - Cast Lunar Beam if your distance to the target is at most 8
simc
lunar_beam,if=target.distance<=8 - Cast Moonfire if Moonfire isn't on the target
simc
moonfire,if=!dot.moonfire.ticking - Cast Thrash if your distance to the target is at most 8
simc
thrash,if=target.distance<=8 - Cast Mangle
simc
mangle - Cast Moonfire if Galactic Guardian is active
simc
moonfire,if=buff.galactic_guardian.up - Cast Maul if you have 8 or more Rage
simc
maul,if=rage>=8 - Cast Swipe if your distance to the target is at most 8
simc
swipe,if=target.distance<=8 - Cast Moonfire if your distance to the target is more than 10
simc
moonfire,if=target.distance>10 - Cast Swipe
simc
swipe
Read from ActionPriorityLists/assisted_combat/druid_guardian.simc in simulationcraft/simc at 1860cd1d5763, the commit this engine build runs.