|
|
|
|
## https://github.com/simulationcraft/simc/blob/thewarwithin/ActionPriorityLists/default/paladin_protection.simc
|
|
|
|
|
## Up to date with SimC: March 13 2025 - a8d374d
|
|
|
|
|
|
|
|
|
|
## actions.precombat+=/rite_of_sanctification
|
|
|
|
|
## actions.precombat+=/rite_of_adjuration
|
|
|
|
|
actions.precombat+=/devotion_aura
|
|
|
|
|
actions.precombat+=/lights_judgment
|
|
|
|
|
actions.precombat+=/arcane_torrent
|
|
|
|
|
actions.precombat+=/consecration
|
|
|
|
|
actions.precombat+=/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
|
|
|
|
|
actions.precombat+=/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
|
|
|
|
|
|
|
|
|
|
actions+=/rebuke
|
|
|
|
|
actions+=/call_action_list,name=mitigation
|
|
|
|
|
actions+=/call_action_list,name=cooldowns
|
|
|
|
|
actions+=/call_action_list,name=trinkets
|
|
|
|
|
actions+=/call_action_list,name=standard
|
|
|
|
|
|
|
|
|
|
actions.cooldowns+=/lights_judgment,if=spell_targets.lights_judgment>=2|!raid_event.adds.exists|raid_event.adds.in>75|raid_event.adds.up
|
|
|
|
|
actions.cooldowns+=/avenging_wrath
|
|
|
|
|
actions.cooldowns+=/potion,if=buff.avenging_wrath.up
|
|
|
|
|
actions.cooldowns+=/moment_of_glory,if=(buff.avenging_wrath.remains<15|(time>10))
|
|
|
|
|
actions.cooldowns+=/divine_toll,if=spell_targets.shield_of_the_righteous>=3
|
|
|
|
|
actions.cooldowns+=/bastion_of_light,if=buff.avenging_wrath.up|cooldown.avenging_wrath.remains<=30
|
|
|
|
|
## actions.cooldowns+=/invoke_external_buff,name=power_infusion,if=buff.avenging_wrath.up
|
|
|
|
|
actions.cooldowns+=/fireblood,if=buff.avenging_wrath.remains>8
|
|
|
|
|
|
|
|
|
|
actions.mitigation+=/shield_of_the_righteous,if=tanking&buff.shield_of_the_righteous.down&(holy_power.deficit=0|buff.divine_purpose.up)
|
|
|
|
|
# [Hekili] Recommend BoSP if the filter is enabled in spec options. Custom priorities can use BoSP with or without this feature.
|
|
|
|
|
actions.mitigation+=/blessing_of_spellwarding,if=settings.bosp_filter
|
|
|
|
|
actions.mitigation+=/word_of_glory,if=health.pct<wog_health&(holy_power.deficit=0|buff.divine_purpose.up|buff.shining_light_free.up)
|
|
|
|
|
actions.mitigation+=/divine_shield,if=talent.final_stand.enabled&tanking&incoming_damage_5s>ds_damage&!(buff.ardent_defender.up|buff.guardian_of_ancient_kings.up|buff.divine_shield.up|buff.potion.up)
|
|
|
|
|
actions.mitigation+=/guardian_of_ancient_kings,if=tanking&incoming_damage_5s>goak_damage&!(buff.ardent_defender.up|buff.guardian_of_ancient_kings.up|buff.divine_shield.up|buff.potion.up)
|
|
|
|
|
actions.mitigation+=/sentinel,if=defensive_sentinel&tanking&incoming_damage_5s>goak_damage&!(buff.ardent_defender.up|buff.guardian_of_ancient_kings.up|buff.divine_shield.up|buff.potion.up)
|
|
|
|
|
actions.mitigation+=/ardent_defender,if=tanking&incoming_damage_5s>ad_damage&!(buff.ardent_defender.up|buff.guardian_of_ancient_kings.up|buff.divine_shield.up|buff.potion.up)
|
|
|
|
|
actions.mitigation+=/lay_on_hands,if=health.pct<loh_health
|
|
|
|
|
|
|
|
|
|
actions.standard+=/judgment,cycle_targets=1,if=charges>=2|full_recharge_time<=gcd.max
|
|
|
|
|
actions.standard+=/hammer_of_light,if=buff.hammer_of_light_free.remains<2|buff.shake_the_heavens.remains<1|!buff.shake_the_heavens.up|cooldown.eye_of_tyr.remains<1.5|fight_remains<2
|
|
|
|
|
actions.standard+=/eye_of_tyr,if=(hpg_to_2dawn=5|!talent.of_dusk_and_dawn.enabled)&talent.lights_guidance.enabled
|
|
|
|
|
actions.standard+=/eye_of_tyr,if=(hpg_to_2dawn=1|buff.blessing_of_dawn.stack>0)&talent.lights_guidance.enabled
|
|
|
|
|
actions.standard+=/shield_of_the_righteous,if=(!talent.righteous_protector.enabled|cooldown.righteous_protector_icd.remains=0)&!buff.hammer_of_light_ready.up
|
|
|
|
|
# during luck of the draw(TWW2 4P)spam sotr as much as possible without wasting icd where possible
|
|
|
|
|
actions.standard+=/shield_of_the_righteous,if=!buff.hammer_of_light_ready.up&(buff.luck_of_the_draw.up&((holy_power+judgment_holy_power>=5)|(!talent.righteous_protector.enabled|cooldown.righteous_protector_icd.remains=0)))
|
|
|
|
|
# outside of luck of the draw, pool holy power as much as possible to be able to enter luck of the draw windows with more holy power
|
|
|
|
|
actions.standard+=/shield_of_the_righteous,if=!buff.hammer_of_light_ready.up&set_bonus.thewarwithin_season_2_4pc&((holy_power+judgment_holy_power>5)|(holy_power+judgment_holy_power>=5&cooldown.righteous_protector_icd.remains=0))
|
|
|
|
|
actions.standard+=/shield_of_the_righteous,if=!set_bonus.thewarwithin_season_2_4pc&(!talent.righteous_protector.enabled|cooldown.righteous_protector_icd.remains=0)&!buff.hammer_of_light_ready.up
|
|
|
|
|
actions.standard+=/judgment,cycle_targets=1,if=spell_targets.shield_of_the_righteous>3&buff.bulwark_of_righteous_fury.stack>=3&holy_power<3
|
|
|
|
|
actions.standard+=/avengers_shield,if=!buff.bulwark_of_righteous_fury.up&talent.bulwark_of_righteous_fury.enabled&spell_targets.shield_of_the_righteous>=3
|
|
|
|
|
actions.standard+=/hammer_of_the_righteous,if=buff.blessed_assurance.up&spell_targets.shield_of_the_righteous<3&!buff.avenging_wrath.up
|
|
|
|
|
actions.standard+=/blessed_hammer,if=buff.blessed_assurance.up&spell_targets.shield_of_the_righteous<3&!buff.avenging_wrath.up
|
|
|
|
|
actions.standard+=/crusader_strike,if=buff.blessed_assurance.up&spell_targets.shield_of_the_righteous<2&!buff.avenging_wrath.up
|
|
|
|
|
## redundant line: actions.standard+=/judgment,cycle_targets=1,if=charges>=2|full_recharge_time<=gcd.max
|
|
|
|
|
actions.standard+=/consecration,if=buff.divine_guidance.stack=5
|
|
|
|
|
actions.standard+=/holy_armaments,if=next_armament=sacred_weapon&(!buff.sacred_weapon.up|(buff.sacred_weapon.remains<6&!buff.avenging_wrath.up&cooldown.avenging_wrath.remains<=30))
|
|
|
|
|
actions.standard+=/hammer_of_wrath
|
|
|
|
|
actions.standard+=/divine_toll
|
|
|
|
|
actions.standard+=/avengers_shield,if=talent.refining_fire.enabled
|
|
|
|
|
actions.standard+=/judgment,cycle_targets=1,if=buff.avenging_wrath.up&talent.hammer_and_anvil.enabled
|
|
|
|
|
actions.standard+=/holy_armaments,if=next_armament=holy_bulwark&charges=2
|
|
|
|
|
actions.standard+=/judgment,cycle_targets=1
|
|
|
|
|
actions.standard+=/avengers_shield,if=!buff.shake_the_heavens.up&talent.shake_the_heavens.enabled
|
|
|
|
|
actions.standard+=/hammer_of_the_righteous,if=(buff.blessed_assurance.up&spell_targets.shield_of_the_righteous<3)|buff.shake_the_heavens.up
|
|
|
|
|
actions.standard+=/blessed_hammer,if=(buff.blessed_assurance.up&spell_targets.shield_of_the_righteous<3)|buff.shake_the_heavens.up
|
|
|
|
|
actions.standard+=/crusader_strike,if=(buff.blessed_assurance.up&spell_targets.shield_of_the_righteous<2)|buff.shake_the_heavens.up
|
|
|
|
|
actions.standard+=/avengers_shield,if=!talent.lights_guidance.enabled
|
|
|
|
|
actions.standard+=/consecration,if=!consecration.up
|
|
|
|
|
actions.standard+=/eye_of_tyr,if=(talent.inmost_light.enabled&raid_event.adds.in>=45|spell_targets.shield_of_the_righteous>=3)&!talent.lights_deliverance.enabled
|
|
|
|
|
actions.standard+=/holy_armaments,if=next_armament=holy_bulwark
|
|
|
|
|
actions.standard+=/blessed_hammer
|
|
|
|
|
actions.standard+=/hammer_of_the_righteous
|
|
|
|
|
actions.standard+=/crusader_strike
|
|
|
|
|
actions.standard+=/word_of_glory,if=buff.shining_light_free.up&(talent.blessed_assurance.enabled|(talent.lights_guidance.enabled&cooldown.hammerfall_icd.remains=0))
|
|
|
|
|
actions.standard+=/avengers_shield
|
|
|
|
|
actions.standard+=/eye_of_tyr,if=!talent.lights_deliverance.enabled
|
|
|
|
|
actions.standard+=/word_of_glory,if=buff.shining_light_free.up
|
|
|
|
|
actions.standard+=/arcane_torrent,if=holy_power<5
|
|
|
|
|
actions.standard+=/consecration
|
|
|
|
|
|
|
|
|
|
actions.trinkets+=/use_item,name=tome_of_lights_devotion,if=buff.inner_resilience.up
|
|
|
|
|
actions.trinkets+=/use_items,slots=trinket1,if=(variable.trinket_sync_slot=1&(buff.avenging_wrath.up|fight_remains<=40)|(variable.trinket_sync_slot=2&(!trinket.2.cooldown.ready|!buff.avenging_wrath.up))|!variable.trinket_sync_slot)
|
|
|
|
|
actions.trinkets+=/use_items,slots=trinket2,if=(variable.trinket_sync_slot=2&(buff.avenging_wrath.up|fight_remains<=40)|(variable.trinket_sync_slot=1&(!trinket.1.cooldown.ready|!buff.avenging_wrath.up))|!variable.trinket_sync_slot)
|