Notes
-
The weapon skill mechanics are implemented assuming the information in this source is correct.
-
All weapon damage is averaged, there is no point in wasting time RNGing it.
-
The code makes a number of assumptions that are not necessarily verified yet:
-
Due to lack of data, all weapon procs are assumed to be 1ppm for now.
-
Rage is a floating point number, rage gains and losses are not rounded to whole numbers.
-
Extra swings like Hand of Justice and Windfury Totem *do* consume Flurry charges; Ironfoe proc consumes up to two Flurry charges.
-
Heroic Strike (and Cleave) does not consume Flurry charges.
-
When Heroic Strike is queued, offhand swings will not suffer the dual-wield hit penalty. See here for details.
-
Extra swings like Hand of Justice and Windfury Totem can be Heroic Strikes.
-
Extra swings like Hand of Justice and Windfury Totem cannot proc each other, although they can all proc on the same swing.
-
The attack power buff from Windfury Totem applies to other swings that happen a short time after (see here for details).
-
All procs, including extra attacks always happen after the actual event that triggered them. In particular, an attack will *not* profit form the strength buff of a Crusader proc that it itself caused.
-
Dodged and parried white swings generate 75% of the rage that a normal hit would have; misses generate 0 rage.
-
Glancing blows generate rage proportional to their damage, which means depending on your weapon skill, a glancing blow could generate less rage than a dodge.
-
All abilities except Whirlwind and Execute refund 80% of their rage costs if they are dodged/parried/miss.
-
Execute does not refund its base cost. On a hit, Execute resets rage on the second batch after the button press.
-
Lots of things are still missing. In particular:
-
Some relevant procs (Bonereaver's Edge, Lifestealing, Demonslaying...)
-
Overpower and Deep Wounds
-
Arms and Prot specs
-
Attacking from the front
-
Heroic Strike rank IX from Dire Maul
-
...
-
Known issues:
-
When the UI says 'above' or 'below', it usually means 'equal to or above/below'.
-
Bloodrage and Mighty Rage Potion are used on cooldown regardless of current rage.
-
Spell priority cannot be changed. When a GCD finishes, abilities are checked in the order the UI shows. First eligible ability is used.
-
Windfury totem attack power buff mechanics are not reproduced exactly. As a consequence the value of WF totem is slightly inflated (~0.5-1dps) compared to the actual game.
The inaccuracy is most prominent with fast weapons.
-
Flury is likely affected spell batching in some way, but the sim does not simulate that. Once we have a better understanding of how it works, I will add it.
-
Unbridled Wrath is affected by spell batching, but the sim does not simulate that.
-
Orcs' Blood Fury triggers a GCD, whereas the AP on use checkbox in the sim doesn't.
-
Thrash Blade PPM has been tested, seems to be around 0.65, not 1.
-
Brain lag isn't applied to Bloodrage, Death Wish and something else I forgot.
FAQ
Q: What is this?
A: A Classic WoW Fury warrior DPS simulator.
Q: What do I do with it?
A: Simulate your DPS.
Q: How do I use it?
A: Enter the stats of your character, with all buffs. Then hit 'Simulate' and wait for results.
Q: Why did you write it?
A: I wanted to know how much offhand speed affects Flurry uptime and DPS. (It does, but not by a lot.)
Q: Are you sure it's implemented correctly?
A: Not really. Maybe. It's classified.
Q: How can I see the code?
A: Here you go.
Q: Your code sucks!
A: Your mom sucks. Look, I wrote this in like a week ok?
Q: I have questions or suggestions. Can I contact you?
A: No. But if you post on Fight Club I might read your post.
Q: Has anyone actually asked you any of these questions?
A: No.