SBA abilities

I’ve looked for a list of abilities by class that the Single-Button Assistant will cast, and can’t find anything reliable. Would it work if I practice on a training dummy/dummies, spamming only the SBA, and check Details cast logs?
Is there a better way?

Simulationcraft has done the datamining, and converted Blizzard’s Action Priority Lists into their own format

Results are here:

https://github.com/simulationcraft/simc/tree/thewarwithin/ActionPriorityLists/default

with an explainer here:

https://github.com/simulationcraft/simc/wiki/ActionLists

Awesome thanks!

Wow, I thought SBA did not do cool-downs??

actions+=/use_item,name=tome_of_lights_devotion,if=buff.inner_resilience.up
actions+=/use_items
actions+=/avatar,if=buff.thunder_blast.down|buff.thunder_blast.stack<=2
actions+=/shield_wall,if=talent.immovable_object.enabled&buff.avatar.down
actions+=/blood_fury
actions+=/berserking
actions+=/arcane_torrent
actions+=/lights_judgment
actions+=/fireblood
actions+=/ancestral_call
actions+=/bag_of_tricks
actions+=/potion,if=buff.avatar.up|buff.avatar.up&target.health.pct<=20
actions+=/ignore_pain,if=target.health.pct>=20&(rage.deficit<=15&cooldown.shield_slam.ready|rage.deficit<=40&cooldown.shield_charge.ready|rage.deficit<=20&cooldown.shield_charge.ready|rage.deficit<=30&cooldown.demoralizing_shout.ready&talent.booming_voice.enabled|rage.deficit<=20&cooldown.avatar.ready|rage.deficit<=45&cooldown.demoralizing_shout.ready&talent.booming_voice.enabled&buff.last_stand.up&talent.unnerving_focus.enabled|rage.deficit<=30&cooldown.avatar.ready&buff.last_stand.up&talent.unnerving_focus.enabled|rage.deficit<=20|rage.deficit<=40&cooldown.shield_slam.ready&buff.violent_outburst.up&talent.heavy_repercussions.enabled&talent.impenetrable_wall.enabled|rage.deficit<=55&cooldown.shield_slam.ready&buff.violent_outburst.up&buff.last_stand.up&talent.unnerving_focus.enabled&talent.heavy_repercussions.enabled&talent.impenetrable_wall.enabled|rage.deficit<=17&cooldown.shield_slam.ready&talent.heavy_repercussions.enabled|rage.deficit<=18&cooldown.shield_slam.ready&talent.impenetrable_wall.enabled)|(rage>=70|buff.seeing_red.stack=7&rage>=35)&cooldown.shield_slam.remains<=1&buff.shield_block.remains>=4&set_bonus.tier31_2pc,use_off_gcd=1
actions+=/last_stand,if=(target.health.pct>=90&talent.unnerving_focus.enabled|target.health.pct<=20&talent.unnerving_focus.enabled)|talent.bolster.enabled|set_bonus.tier30_2pc|set_bonus.tier30_4pc

1 Like

Wow, so did I!

Hm. They seem to claim they are original:

Action Priority Lists

This folder contains automatically generated raw text Action Priority Lists in SimC APL format.

These files only contain generated text and should not be manually modified at any time.

default/ contains Action Priority Lists provided for each of the modules generated from sources found in engine/class_modules/ and engine/class_modules/apl/.

assisted_combat/ contains Action Priority Lists provided for each of the modules by Blizzard, generated from the AssistedCombat, AssistedCombatStep and AssistedCombatRule DBC tables, parsed by the default player implementation and class modules.

so it does appear this is the right set of APLs.

I wonder if Simulationcraft added CDs to them? Seems an odd thing to do, because it destroys the authenticity.

I dunno. I knew that Simulationcraft had donethe datamining, but I never looked at the results.

Try it and see, I guess.

Agree, practical application is the best way to be sure.

This is the reason I’m asking, as I was using it yesterday for the first time and I couldn’t understand why it seemed like it was casting abilities that I thought I had to use manually.
I’ll report back here with my training dummy findings.

1 Like

Ahhhhhhh!

I think they included and identified the Blizzard system, but also added and identified cooldowns separately:

https://github.com/simulationcraft/simc/blob/thewarwithin/ActionPriorityLists/assisted_combat/priest_shadow.simc

This is the default action priority list from the game’s Assisted Combat system.

actions.assisted_combat=shadowform,if=buff.shadowform.down&buff.voidform.down
actions.assisted_combat+=/shadow_crash,if=active_enemies>3
actions.assisted_combat+=/shadow_crash,if=active_enemies>3
actions.assisted_combat+=/vampiric_touch,if=!dot.vampiric_touch.ticking&(!action.shadow_crash.in_flight)
actions.assisted_combat+=/shadow_word_pain,if=!dot.shadow_word_pain.ticking&!talent.misery
actions.assisted_combat+=/devouring_plague,if=!dot.devouring_plague.ticking
actions.assisted_combat+=/devouring_plague,if=dot.devouring_plague.remains<=1.5
actions.assisted_combat+=/mind_flay_insanity,if=buff.mind_flay_insanity.up&buff.mind_flay_insanity.remains<=4&buff.mind_flay_insanity.up
actions.assisted_combat+=/mind_flay_insanity,if=buff.mind_flay_insanity.stack>=4
actions.assisted_combat+=/devouring_plague,if=insanity>=90&!talent.voidtouched
actions.assisted_combat+=/devouring_plague,if=insanity>=140&talent.voidtouched
actions.assisted_combat+=/halo,if=talent.power_surge
actions.assisted_combat+=/void_blast,if=buff.entropic_rift.up&charges>=2,cooldown_allow_casting_success=1
actions.assisted_combat+=/void_blast,if=buff.entropic_rift.up
actions.assisted_combat+=/shadowfiend
actions.assisted_combat+=/void_bolt,if=buff.voidform.up
actions.assisted_combat+=/mind_blast,if=!talent.void_blast
actions.assisted_combat+=/mind_blast,if=talent.void_blast&charges>=2&cooldown.void_torrent.remains<=5&talent.void_torrent
actions.assisted_combat+=/mind_blast,if=talent.void_blast&cooldown.void_torrent.remains>=5&talent.void_torrent
actions.assisted_combat+=/void_torrent
actions.assisted_combat+=/shadow_word_death,if=talent.deathspeaker&target.health.pct<=35
actions.assisted_combat+=/shadow_word_death,if=target.health.pct<=20
actions.assisted_combat+=/devouring_plague
actions.assisted_combat+=/mind_flay_insanity,if=buff.mind_flay_insanity.up
actions.assisted_combat+=/halo
actions.assisted_combat+=/mind_flay_insanity,cooldown_allow_casting_success=1
actions.assisted_combat+=/mind_flay,cooldown_allow_casting_success=1
actions.assisted_combat+=/mind_blast

Major cooldowns are not used by the Assisted Combat system. This simple default cooldown usage has been provided by simc.

actions.cooldowns=potion
actions.cooldowns+=/blood_fury
actions.cooldowns+=/berserking
actions.cooldowns+=/fireblood
actions.cooldowns+=/ancestral_call
actions.cooldowns+=/use_items,if=buff.voidform.up|buff.dark_ascension.up
actions.cooldowns+=/void_eruption
actions.cooldowns+=/dark_ascension,if=dot.vampiric_touch.ticking
actions.cooldowns+=/power_infusion,if=buff.voidform.up|buff.dark_ascension.up

Well that doesn’t make any sense…“we’re going to datamine and list Blizzard’s APL, but we’re also going to include extra commands in the list.” What’s the point?

I guess they figure that if you’re running this on their sim, you of have the option of running Blizzard’s rotation exactly, by removing their CD package, or of doing what a naïve player might do - blow CDs and then launch into the SBA.

I understand it. Their purpose is not so much to expose the datamining, but to measure how it is likely to be used.

Also, I notice that I gave you the wrong link originally. My apologies.

There si a default directory but also an assisted_combat directory

https://github.com/simulationcraft/simc/tree/thewarwithin/ActionPriorityLists/assisted_combat

I’m not following, how is there a choice? Unless you’re talking about using the SBA vs manual input?

Simulationcraft is about getting to a number.

What is this character, with this gear and this build and this rotation, expected to do in damage? What’s the range of DPS going to be over 5 minutes? What’s the total damage?

That’s it. That’s what their software does. That’s their purpose.

If I’m running a sim for a player using SBA, and I want to get to that number, I’m going to assume that they are going to blow CDs first. And that’s what Simulationcraft is facilitating here.

You are coming at it from a completely different angle. You just want the SBA logic, not to simulate some specific case. And the SBA logic is there, as part of Simulationcraft’s answer, but they don’t care about the logic except as a piece of their answer. So they do identify it, but wrap it with a CD section that makes sense for their purpose.

1 Like

Perfect explanation, thank you for taking the time!

Can confirm, doesn’t use cooldowns!

1 Like