mage="Mage_Arcane_T17B"
level=100
race=gnome
role=spell
position=back
talents=3003322
glyphs=cone_of_cold
spec=arcane

# 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=flask,type=greater_draenic_intellect_flask
actions.precombat+=/food,type=sleeper_sushi
actions.precombat+=/arcane_brilliance
actions.precombat+=/snapshot_stats
actions.precombat+=/rune_of_power
actions.precombat+=/mirror_image
actions.precombat+=/potion,name=draenic_intellect
actions.precombat+=/arcane_blast

# Executed every time the actor is available.

actions=counterspell,if=target.debuff.casting.react
actions+=/stop_burn_phase,if=prev_gcd.evocation&burn_phase_duration>gcd.max
actions+=/cold_snap,if=health.pct<30
actions+=/time_warp,if=target.health.pct<25|time>5
actions+=/call_action_list,name=movement,if=raid_event.movement.exists
actions+=/rune_of_power,if=buff.rune_of_power.remains<2*spell_haste
actions+=/mirror_image
actions+=/cold_snap,if=buff.presence_of_mind.down&cooldown.presence_of_mind.remains>75
actions+=/call_action_list,name=aoe,if=active_enemies>=5
actions+=/call_action_list,name=init_burn,if=!burn_phase
actions+=/call_action_list,name=burn,if=burn_phase
actions+=/call_action_list,name=conserve

actions.movement=blink,if=movement.distance>10
actions.movement+=/blazing_speed,if=movement.remains>0
actions.movement+=/ice_floes,if=buff.ice_floes.down&(raid_event.movement.distance>0|raid_event.movement.in<2*spell_haste)

# Regular burn with evocation
actions.init_burn=start_burn_phase,if=buff.arcane_charge.stack>=4&(legendary_ring.cooldown.remains<gcd.max|legendary_ring.cooldown.remains>target.time_to_die+15|!legendary_ring.has_cooldown)&(cooldown.prismatic_crystal.up|!talent.prismatic_crystal.enabled)&(cooldown.arcane_power.up|(glyph.arcane_power.enabled&cooldown.arcane_power.remains>60))&(cooldown.evocation.remains-2*buff.arcane_missiles.stack*spell_haste-gcd.max*talent.prismatic_crystal.enabled)*0.75*(1-0.1*(cooldown.arcane_power.remains<5))*(1-0.1*(talent.nether_tempest.enabled|talent.supernova.enabled))*(10%action.arcane_blast.execute_time)<mana.pct-20-2.5*active_enemies*(9-active_enemies)+(cooldown.evocation.remains*1.8%spell_haste)
# PC + ToSW + PoF opener burn
actions.init_burn+=/start_burn_phase,if=talent.prismatic_crystal.enabled&t18_class_trinket&equipped.124230&time<1
# End of fight burn
actions.init_burn+=/start_burn_phase,if=target.time_to_die*0.75*(1-0.1*(talent.nether_tempest.enabled|talent.supernova.enabled))*(10%action.arcane_blast.execute_time)*1.1<mana.pct-10+(target.time_to_die*1.8%spell_haste)

actions.init_crystal=prismatic_crystal,if=t18_class_trinket&equipped.124230&time<2
# Conditions for initiating Prismatic Crystal
actions.init_crystal+=/call_action_list,name=conserve,if=buff.arcane_charge.stack<4|(buff.arcane_missiles.react&debuff.mark_of_doom.remains>2*spell_haste+(target.distance%20))
actions.init_crystal+=/arcane_missiles,if=buff.arcane_missiles.react&t18_class_trinket
actions.init_crystal+=/prismatic_crystal

# Actions while Prismatic Crystal is active
actions.crystal_sequence=call_action_list,name=cooldowns
actions.crystal_sequence+=/nether_tempest,if=buff.arcane_charge.stack=4&!ticking&pet.prismatic_crystal.remains>8
actions.crystal_sequence+=/supernova,if=mana.pct<96
actions.crystal_sequence+=/presence_of_mind,if=cooldown.cold_snap.up|pet.prismatic_crystal.remains<2*spell_haste
actions.crystal_sequence+=/arcane_blast,if=buff.arcane_charge.stack=4&mana.pct>93&pet.prismatic_crystal.remains>cast_time
actions.crystal_sequence+=/arcane_missiles,if=pet.prismatic_crystal.remains>2*spell_haste+(target.distance%20)
actions.crystal_sequence+=/supernova,if=pet.prismatic_crystal.remains<2*spell_haste+(target.distance%20)
actions.crystal_sequence+=/choose_target,if=pet.prismatic_crystal.remains<action.arcane_blast.cast_time&buff.presence_of_mind.down
actions.crystal_sequence+=/arcane_blast

# Consolidated damage cooldown abilities
actions.cooldowns=arcane_power
actions.cooldowns+=/blood_fury
actions.cooldowns+=/berserking
actions.cooldowns+=/arcane_torrent
actions.cooldowns+=/potion,name=draenic_intellect,if=buff.arcane_power.up&(!talent.prismatic_crystal.enabled|pet.prismatic_crystal.active)

# AoE sequence
actions.aoe=call_action_list,name=cooldowns
actions.aoe+=/nether_tempest,cycle_targets=1,if=buff.arcane_charge.stack=4&(active_dot.nether_tempest=0|(ticking&remains<3.6))
actions.aoe+=/supernova
actions.aoe+=/arcane_orb,if=buff.arcane_charge.stack<4
# APL hack for evocation interrupt
actions.aoe+=/arcane_explosion,if=prev_gcd.evocation
actions.aoe+=/evocation,interrupt_if=mana.pct>96,if=mana.pct<85-2.5*buff.arcane_charge.stack
actions.aoe+=/arcane_missiles,if=set_bonus.tier17_4pc&active_enemies<10&buff.arcane_charge.stack=4&buff.arcane_instability.react
actions.aoe+=/arcane_missiles,target_if=debuff.mark_of_doom.remains>2*spell_haste+(target.distance%20),if=buff.arcane_missiles.react
actions.aoe+=/nether_tempest,cycle_targets=1,if=talent.arcane_orb.enabled&buff.arcane_charge.stack=4&ticking&remains<cooldown.arcane_orb.remains
actions.aoe+=/arcane_barrage,if=buff.arcane_charge.stack=4
actions.aoe+=/cone_of_cold,if=glyph.cone_of_cold.enabled
actions.aoe+=/arcane_explosion

# High mana usage, "Burn" sequence
actions.burn=call_action_list,name=init_crystal,if=talent.prismatic_crystal.enabled&cooldown.prismatic_crystal.up
actions.burn+=/call_action_list,name=crystal_sequence,if=talent.prismatic_crystal.enabled&pet.prismatic_crystal.active
actions.burn+=/call_action_list,name=cooldowns
actions.burn+=/arcane_missiles,if=buff.arcane_missiles.react=3
actions.burn+=/arcane_missiles,if=set_bonus.tier17_4pc&buff.arcane_instability.react&buff.arcane_instability.remains<action.arcane_blast.execute_time
actions.burn+=/supernova,if=target.time_to_die<8|charges=2
actions.burn+=/nether_tempest,cycle_targets=1,if=target!=pet.prismatic_crystal&buff.arcane_charge.stack=4&(active_dot.nether_tempest=0|(ticking&remains<3.6))
actions.burn+=/arcane_orb,if=buff.arcane_charge.stack<4
actions.burn+=/arcane_barrage,if=talent.arcane_orb.enabled&active_enemies>=3&buff.arcane_charge.stack=4&(cooldown.arcane_orb.remains<gcd.max|prev_gcd.arcane_orb)
actions.burn+=/presence_of_mind,if=mana.pct>96&(!talent.prismatic_crystal.enabled|!cooldown.prismatic_crystal.up)
actions.burn+=/arcane_blast,if=buff.arcane_charge.stack=4&mana.pct>93
actions.burn+=/arcane_missiles,if=buff.arcane_charge.stack=4&(mana.pct>70|!cooldown.evocation.up|target.time_to_die<15)
actions.burn+=/supernova,if=mana.pct>70&mana.pct<96
actions.burn+=/evocation,interrupt_if=mana.pct>100-10%spell_haste,if=target.time_to_die>10&mana.pct<30+2.5*active_enemies*(9-active_enemies)-(40*(t18_class_trinket&buff.arcane_power.up))
actions.burn+=/presence_of_mind,if=!talent.prismatic_crystal.enabled|!cooldown.prismatic_crystal.up
actions.burn+=/arcane_blast
actions.burn+=/evocation

# Low mana usage, "Conserve" sequence
actions.conserve=call_action_list,name=cooldowns,if=target.time_to_die<15
actions.conserve+=/arcane_missiles,if=buff.arcane_missiles.react=3|(talent.overpowered.enabled&buff.arcane_power.up&buff.arcane_power.remains<action.arcane_blast.execute_time)
actions.conserve+=/arcane_missiles,if=set_bonus.tier17_4pc&buff.arcane_instability.react&buff.arcane_instability.remains<action.arcane_blast.execute_time
actions.conserve+=/nether_tempest,cycle_targets=1,if=target!=pet.prismatic_crystal&buff.arcane_charge.stack=4&(active_dot.nether_tempest=0|(ticking&remains<3.6))
actions.conserve+=/supernova,if=target.time_to_die<8|(charges=2&(buff.arcane_power.up|!cooldown.arcane_power.up|!legendary_ring.cooldown.up)&(!talent.prismatic_crystal.enabled|cooldown.prismatic_crystal.remains>8))
actions.conserve+=/arcane_orb,if=buff.arcane_charge.stack<2
actions.conserve+=/presence_of_mind,if=mana.pct>96&(!talent.prismatic_crystal.enabled|!cooldown.prismatic_crystal.up)
actions.conserve+=/arcane_missiles,if=buff.arcane_missiles.react&debuff.mark_of_doom.remains>2*spell_haste+(target.distance%20)
actions.conserve+=/arcane_blast,if=buff.arcane_charge.stack=4&mana.pct>93
actions.conserve+=/arcane_barrage,if=talent.arcane_orb.enabled&active_enemies>=3&buff.arcane_charge.stack=4&(cooldown.arcane_orb.remains<gcd.max|prev_gcd.arcane_orb)
actions.conserve+=/arcane_missiles,if=buff.arcane_charge.stack=4&(!talent.overpowered.enabled|cooldown.arcane_power.remains>10*spell_haste|legendary_ring.cooldown.remains>10*spell_haste)
actions.conserve+=/supernova,if=mana.pct<96&(buff.arcane_missiles.stack<2|buff.arcane_charge.stack=4)&(buff.arcane_power.up|(charges=1&(cooldown.arcane_power.remains>recharge_time|legendary_ring.cooldown.remains>recharge_time)))&(!talent.prismatic_crystal.enabled|current_target=pet.prismatic_crystal|(charges=1&cooldown.prismatic_crystal.remains>recharge_time+8))
actions.conserve+=/nether_tempest,cycle_targets=1,if=target!=pet.prismatic_crystal&buff.arcane_charge.stack=4&(active_dot.nether_tempest=0|(ticking&remains<(10-3*talent.arcane_orb.enabled)*spell_haste))
actions.conserve+=/arcane_barrage,if=buff.arcane_charge.stack=4
actions.conserve+=/presence_of_mind,if=buff.arcane_charge.stack<2&mana.pct>93
actions.conserve+=/arcane_blast
actions.conserve+=/arcane_barrage

head=arcanoshatter_hood,id=115553,bonus_id=42/562/565/567,gem_id=115812
neck=gruuls_lip_ring,id=113872,bonus_id=42/562/565/567,gem_id=115812,enchant=gift_of_mastery
shoulders=arcanoshatter_mantle,id=115551,bonus_id=42/562/565/567,gem_id=115812
back=runefrenzy_greatcloak,id=113937,bonus_id=42/562/565/567,gem_id=115812,enchant=gift_of_mastery
chest=arcanoshatter_robes,id=115550,bonus_id=42/562/565/567,gem_id=115812
wrists=bracers_of_darkened_skies,id=119332,bonus_id=42/562/565/567,gem_id=115813
hands=toothbreaker_grips,id=113876,bonus_id=42/562/565/567,gem_id=115812
waist=seeking_ember_girdle,id=113941,bonus_id=42/562/565/567,gem_id=115812
legs=arcanoshatter_leggings,id=115554,bonus_id=42/562/565/567,gem_id=115812
feet=cavedwellers_climbers,id=113864,bonus_id=42/562/565/567,gem_id=115812
finger1=ukuroggs_corrupted_seal,id=113975,bonus_id=42/562/565/567,gem_id=115812,enchant=gift_of_mastery
finger2=spellbound_runic_band_of_the_allseeing_eye,id=118306,enchant=gift_of_mastery
trinket1=darmacs_unstable_talisman,id=113948,bonus_id=42/562/565/567,gem_id=115812
trinket2=blackiron_micro_crucible,id=113984,bonus_id=42/562/565/567,gem_id=115812
main_hand=dagger_of_blazing_radiance,id=113920,bonus_id=42/562/565/567,gem_id=115812,enchant=mark_of_bleeding_hollow
off_hand=caged_living_ooze,id=113879,bonus_id=42/562/565/567,gem_id=115812

# Gear Summary
# gear_ilvl=706.56
# gear_stamina=5014
# gear_intellect=4208
# gear_spell_power=1940
# gear_crit_rating=596
# gear_haste_rating=936
# gear_mastery_rating=2972
# gear_multistrike_rating=667
# gear_versatility_rating=241
# gear_speed_rating=2080
# gear_armor=943
# set_bonus=tier17_2pc=1
# set_bonus=tier17_4pc=1
