Where the numbers come from
Every figure on this site is a result of SimulationCraft, the community's combat simulator for World of Warcraft. It uses SimulationCraft's own profiles and options, on a build with a few small fixes to how SimulationCraft plays Blizzard's assistant. This page says which build made the numbers, which characters were simulated, the exact options, and every fix.
The simulator
- Build
- SimulationCraft 1210-01 (WoW 12.1.5.70575) 710c240 +16 patches
- Source code
- commit 710c240 on GitHub
- Game data
- World of Warcraft build 12.1.5.70575
- This run
- 52 profiles, up to 10,000 iterations per figure (stopping once the error is under 0.1 %; a loss figure moves by about ±0.2 points between runs), data refreshed 2026-11-11 08:07 UTC.
The characters
The characters are SimulationCraft's own reference profiles of the current tier (its MID2 folder), with their gear and their set bonus. They are simulated twice: with the full set (2-piece and 4-piece bonus) and with the 4-piece bonus switched off on every mode (2-piece). Nothing else in the gear is edited. SimulationCraft has no profile in that folder for Devastation Evoker and Balance Druid: those use the median gear of real +15 players, raised to the same item level. Specs that are not on the site: Augmentation Evoker.
The talents
SimulationCraft's talents are the reference profiles' own builds, mostly tuned for a single raid boss.
Best Mythic+ talents for the button (M+ dungeon, 4-piece set) swap only the talents for the build that deals the most with SBA + cooldown. The candidates are SimulationCraft's build and the builds real Mythic+ players use. murlok.io lists the top Mythic+ players of each spec and hero tree; we take the top 10 players' own builds (real in-game builds, so they always fit the talent points), plus the previous winner. Each is simulated with the button, first quickly, then the best three at full precision. A talent search then starts from the winner and tries every legal one-step change (a choice node switched, or one point moved), keeps the changes that add more than 0.6 %, and repeats until none does; it never drops an interrupt. Its result joins the candidates. A new build replaces the previous winner only when it is clearly better than the simulation's noise, so the advice does not flip from day to day.
Best raid talents for the button (raid boss, 4-piece set): murlok.io has no raid pages, so the search starts from the raid build we used before (SimulationCraft's, or a top player's where SimulationCraft has none). It tries every legal single talent swap with the button, keeps the ones that add more than 0.6 %, repeats, then runs the result against the old build at 0.1 % error; the new build wins only when it gains more than 0.2 %. Only the button's talents change: perfect manual play keeps the old build, so the loss compares the button on its best talents with the best manual build.
The fixes to SimulationCraft
SimulationCraft translates Blizzard's assistant list into its own actions, and for a few specs the translation breaks where the game does not, mostly buttons that turn into another spell in place (Blade Dance into Death Sweep). Each fix is small and described below, and the specs it touches are marked patched (⚙). SimulationCraft's developers have not reviewed them yet.
0001-warrior-sba-auto-attack-rend-dot-crushing-blowSimulationCraft added the weapon swings after the assistant's always-castable abilities, so they never started. The patch starts the swings first. (Its check for a missing Rend used to look for the wrong DoT name; SimulationCraft fixed that itself on 28 Oct.)
The Raging Blow button did not become Crushing Blow during Recklessness as it does in the game. The patch lets it.
Specs: Arms Warrior, Fury Warrior.
0002-shaman-enhancement-sba-auto-attackBlizzard's list has no weapon-swing line and SimulationCraft never started the swings (in the game any melee ability does). The patch starts them.
Specs: Enhancement Shaman.
0003-priest-shadow-sba-voidform-becomes-void-volleyIn the game the Voidform button becomes Void Volley; SimulationCraft kept the two apart, so neither was ever cast. The patch lets the button become Void Volley.
Specs: Shadow Priest.
0004-engine-one-button-background-channel-crashOne-button mode crashed the simulator when a background channel (such as Abyssal Gaze) had no action list. The patch stops the crash; it changes no spec's list.
All specs (engine).
0005-demonhunter-sba-button-overridesIn the game Metamorphosis turns Blade Dance into Death Sweep and Chaos Strike into Annihilation, Throw Glaive becomes Reaver's Glaive, and several Devourer buttons change in place (Consume becomes Devour, Reap becomes Cull, Voidblade becomes Hungering Slash, Pierce the Veil or Reaper's Toll, Metamorphosis becomes Collapsing Star). SimulationCraft never pressed the new buttons. The patch lets each button become its replacement.
Specs: Devourer Demon Hunter, Havoc Demon Hunter.
0006-warlock-sba-drain-soul-malefic-grasp-and-imp-lordIn the game Shadow Bolt becomes Drain Soul when talented, and Malefic Grasp while Darkglare is out; SimulationCraft never cast them. The patch lets the button become them.
Grimoire: Imp Lord was missing from the cooldowns SimulationCraft presses for the assistant (Summon Demonic Tyrant was there). The patch adds it, so it counts in SBA + cooldown only.
Specs: Affliction Warlock, Demonology Warlock.
0007-paladin-ret-sba-judgment-becomes-hammer-of-wrathIn the game the Judgment button becomes Hammer of Wrath while its buff is up; SimulationCraft never pressed it. The patch lets the button become Hammer of Wrath.
Specs: Retribution Paladin.
0008-hunter-sba-moonlight-chakramIn the game Trueshot (Marksmanship) and Takedown (Survival) become Moonlight Chakram while its buff is up; SimulationCraft never pressed it. The patch lets the button become Moonlight Chakram.
Specs: Marksmanship Hunter, Survival Hunter.
0009-shaman-sba-flame-shock-becomes-voltaic-blazeIn the game the Flame Shock button becomes Voltaic Blaze when it is talented; SimulationCraft never pressed Voltaic Blaze. The patch lets the button become Voltaic Blaze.
Specs: Elemental Shaman, Enhancement Shaman.
0010-shaman-elemental-sba-tempest-before-chain-lightningIn the game the button casts Tempest (Stormbringer) as soon as it is available, ahead of Chain Lightning; SimulationCraft only pressed it in place of Lightning Bolt, so never on 4 or more targets. The patch puts Tempest first. Checked against a combat log on 5 target dummies (2026-10-06).
Specs: Elemental Shaman.
0011-shaman-farseer-final-calling-does-not-triggerIn the game the Ancestors (Farseer) never cast Elemental Blast when they leave: no trace of it in combat logs on 1 and 5 target dummies (130 departures, 2026-10-06), while SimulationCraft cast it every time and gave its stat buff. The patch turns Final Calling off, for the manual rotation too.
Specs: Elemental Shaman.
0013-deathknight-unholy-lesser-ghoul-counter-without-outnumberSimulationCraft only tracked the Lesser Ghoul aura for players with the Outnumber talent, so Blizzard's list never pressed Putrefy for builds without it. In the game every Unholy has the aura: Warcraft Logs shows it in all 169 sampled +15 runs without Outnumber (2026-10-11). The patch tracks it for every Unholy build; the manual rotation does not change.
Since 25 Oct 2026, with Blightfall talented, the button's step "Outbreak while Blightfall is ready" fires once per Blightfall. As Blizzard ships it, Outbreak has no cooldown, so the simulated button kept pressing it: about 7 a minute. A real button player's Warcraft Logs show about 2. Once per Blightfall gives about 2.7, close to the real player.
Specs: Unholy Death Knight.
0016-demonhunter-devourer-sba-reap-cull-become-eradicateIn the game, Eradicate's buff turns the Reap and Cull buttons (Devourer) into Eradicate; SimulationCraft never pressed it. The patch lets the button become Eradicate.
All specs (engine).
0017-one-button-let-void-ray-finishSimulationCraft's one-button mode cut every channel short at the next global cooldown, so Devourer's Void Ray never finished and Eradicate (which a finished Void Ray unlocks) never came. The patch lets Void Ray finish under the button.
All specs (engine).
0018-druid-feral-sba-lunar-inspiration-moonfire-dotBlizzard's Feral list presses Moonfire (Lunar Inspiration) only when Moonfire is not on the target. SimulationCraft looked for that Moonfire under the wrong name, so it always looked missing and the button pressed Moonfire about 17 times a minute instead of Shred. A real button player's Warcraft Logs show about 4. The patch reads the right name; the manual rotation does not change.
Specs: Feral Druid.
0019-warrior-fury-sba-bloodbath-thunder-blastIn the game, Bloodthirst becomes Bloodbath during Recklessness (Reckless Abandon) and Thunder Clap becomes Thunder Blast while its buff is up (Mountain Thane). SimulationCraft never pressed the new buttons, so in those windows the button skipped those steps. Blizzard's own list has a Thunder Clap step for when Thunder Blast is up, which only works if the button becomes Thunder Blast. The patch lets each button become its replacement; the manual rotation does not change.
Specs: Fury Warrior.
How each number is made
Every spec is simulated with its own gear, at the item level it carries, with SimulationCraft's own options. The assistant is compared with manual play on the same character, the same gear, the same talents and the same fight. For the specs marked patched, the assistant's figures come from SimulationCraft with a small fix to its translation of Blizzard's list (manual play is not affected).
- Manual play
default_actions=1 use_blizzard_action_list=0 one_button_mode=0- SBA + cooldown
use_blizzard_action_list=1 one_button_mode=1 use_cds_with_blizzard_action_list=1- SBA alone
use_blizzard_action_list=1 one_button_mode=1 use_cds_with_blizzard_action_list=0- Assisted Highlight
use_blizzard_action_list=1 one_button_mode=0 use_cds_with_blizzard_action_list=1- The fights
fight_style=DungeonSlice(M+ dungeon),fight_style=Patchwerk max_time=300 vary_combat_length=0.2(raid boss)- 2-piece set
set_bonus=midnight_season_2_4pc=0on every mode
SimulationCraft's defaults do not apply the game's 25 % penalty to the assistant (one_button_mode is off) and always press the cooldowns, so the assistant options are set explicitly; Assisted Highlight is the assistant's list without the penalty. Nothing else is set apart from the number of iterations (up to 10,000, stopping once the error is under 0.1 %: target_error=0.1), each mode simulated on its own (single_actor_batch=1), and full raid buffs (optimal_raid=1; SimulationCraft switches them off itself in the M+ dungeon).
Reliability. Each fight is judged on its own. A build is shown but not ranked when:
- SimulationCraft itself reports that it does not support that fight for the spec (its results "are inaccurate and should not be used"). Today that is the M+ dungeon for Balance Druid, Devourer Demon Hunter, Elemental Shaman, Frost Death Knight, Havoc Demon Hunter. Demon Hunters even have the M+ fight switched off by default in SimulationCraft.
- the assistant never casts an ability worth 3 % or more of manual play's damage, never swings its weapon, or waits far longer than manual play (1.5 times, and 3 points more), and we have not traced the cause to Blizzard's list.
When we have traced it to Blizzard's own list, the figure is what a one-button player really gets: it is ranked, with a note (ⓘ). Today that is Demonology Warlock (the list has no Implosion step) Windwalker Monk with some builds (Zenith Stomp is unreachable). An ability cast 60 to 99 % less often is a real loss of the assistant: the figure stands, with a note.
What is ours, not SimulationCraft's
The fixes to SimulationCraft, the reliability rule, the search for the best builds and the figures come from our simulation pipeline. The percentages of manual play, the ranking, the talent advice and the wording of the labels and notes are ours: they are calculated from those numbers and never change one of them.