Elitist Jerks
Register
Blogs
Forums


Go Back   Elitist Jerks » Public Discussion » Class Mechanics

 
 
LinkBack Thread Tools
Old 08/08/07, 8:15 AM   #1
draghkar
Piston Honda
 
Tauren Shaman
 
Aggramar (EU)
[Shaman] Experimental combat simulator

EDIT: The math formula on this page are valid only for speed > 3.0, for speed < 3.0 then it change slightly. The graph on this page is also wrong due some bugs on the simulator. For a correct graph consider the graph at post #164 and later

I had a disquisition about the fact that weapon speed affect the sustained damage if
WF is used with the argumentation: when you have a WF then you have two instant
attacks so is better slow weapons (with same DPS a slow wepon has higher top damage).
In the other side I tought that with quick weapons you have more WF so more extra attacks.

Anyway I wrote down some numbers and later one I wrote a shaman swing simulator
(I'll talk about it later).


Let's suppose to have 0% crit => no flurry (I'll try to consider crits later)

2 weapons with 100 DPS:

1st: speed 4 -> 400 damage/swing
2nd: speed 1.5 -> 150 damage/swing

I consider a WF proc each 5 attacks (the 20% stated)

Simulation wiht 1st weapon

T1 (4 sec) => 400 damage hit
T2 (8 sec) => 400 damage hit
T3 (12 sec) => 400 damage hit
T4 (16 sec) => 400 damage hit
T5 (20 sec) => 400 damage hit + WF hit (400*2 + 34*4*2)

T6 (24 sec) => 400 damage hit
T7 (28 sec) => 400 damage hit
T8 (32 sec) => 400 damage hit
T9 (36 sec) => 400 damage hit
T10 (40 sec) => 400 damage hit + WF hit (400*2 + 34*4*2)

and so on, the generic formula is easy to find:

Damage(Y secs)=400*(Y/4)+Y/20*(400*2+34*4*2)

so after 40 secs Damage = 400*(40/4)+40/20*(400*2+34*4*2)= 6144 damage

Simulation wiht 2nd weapon
T1 (1.5 sec) => 150 damage hit
T2 (3 sec) => 150 damage hit
T3 (4.5 sec) => 150 damage hit
T4 (6 sec) => 150 damage hit
T5 (7.5 sec) => 150 damage hit + WF hit (150*2 + 34*1.5*2)

T6 (9 sec) = 150 damage hit
T7 (10.5 sec) = 150 damage hit
T8 (12 sec) = 150 damage hit
T9 (13.5 sec) = 150 damage hit
T10 (15 sec) = 150 damage hit + WF hit (150*2 + 34*1.5*2)

and so on, in this case the formula is:

Damage(Y secs)=150*(Y/1.5)+Y/7.5*(150*2+34*1.5*2)

so after 40 secs Damage = 150*(40/1.5)+40/7.5*(150*2+34*1.5*2) = 6144

it seems that the speed doesn't affect it, the general formula (leaving
speed and weapon DPS unspecified):

Damage(Y secs)= speed*dps*(Y/speed)+Y/(speed*5)*(speed*dps*2+34*speed*2)=
dps*Y+ Y/5*(dps*2+34*2)

so whatever the weapon speed is the damage after Y seconds is not affected by it.

This confirms my tought, let see how crit affect this.

Introducing the crit chance (and so the Flurry) like 25% (one crit each 4 swings) I obtain a simulation that looks like this:

1st weapon ( in case of flury the speed becomes 2.8):
T1 (4 sec) => 400 damage hit
T2 (8 sec) => 400 damage hit
T3 (12 sec) => 400 damage hit
T4 (16 sec) => 400 damage hit + Crit (200) [flurry]
T5 (18.8 sec) => 400 damage hit + WF hit (400*2 + 34*4*2)

T1 (21.6 sec) => 400 damage hit + Crit (200) [flurry]
T2 (24.4 sec) => 400 damage hit
T3 (27.2 sec) => 400 damage hit
T4 (30.0 sec) => 400 damage hit
T5 (34.0 sec) => 400 damage hit + WF hit (400*2 + 34*4*2) + Crit (200) [flurry]

and so on, write a general formula is not that easy ( is doable but still not easy ).

I wrote for this purpose (c++ code) a Swing Simulator, at his very first version it's
able to simulate the above scenario and the code looks like:

    //weapon with 3.3 speed and 110 dps
    Weapon * myWeapon = new Weapon("TestWeapon", 3.3, 110);
    Talent * myTalent = new Flurry(5);

    Shaman::instance().setCritPercentage(20);
    Shaman::instance().mainHand(myWeapon);
    Shaman::instance().addTalent(myTalent);

    Target myTarget;

    CombatLog myCombatLog;
 
    Timer::instance().go(10000)
The code above simulate the shaman swing against a dummy target for 1000 seconds.
At the moment the simulator doesn't include weapon skill, dodge, defense, parry etc etc

With the simulator I simulated 10000 seconds (2.7 hours) fights, with weapons from 1.0 secs
to 8.0 secs and 0%, 10%, 15%, 20%, 25%, 30%, 33%. The result of simulations can be seen
here.



It seems to me that 2 weapons (with same DPS) do not affect the total damage after Y second
(not using Storm Strike). As soon I introduce the Mana Pool in the simulator I'll be able to
introduce the StormStrike talent and I'll be able to do the same simulation in order to see how the SS introduction affects it.

Last edited by draghkar : 08/12/07 at 5:01 AM.

Offline
Old 08/08/07, 8:22 AM   #2
Malan
Mike Tyson
 
Malan's Avatar
 
Malan
Tauren Shaman
 
No WoW Account
For those who are wondering:
dis·qui·si·tion - A formal discourse on a subject, often in writing.

I'm gonna take a stab here and say that if your math is showing that weapon speed doesn't matter, you took a wrong step somewhere.

United States Offline
Old 08/08/07, 8:29 AM   #3
draghkar
Piston Honda
 
Tauren Shaman
 
Aggramar (EU)
Originally Posted by Malan View Post
For those who are wondering:
dis·qui·si·tion - A formal discourse on a subject, often in writing.

I'm gonna take a stab here and say that if your math is showing that weapon speed doesn't matter, you took a wrong step somewhere.
If you do not use Storm Strike weapon speed doesn't matter, at least this is what math and simulator shows, (I'm not considering the fact that WF has a CD of 3 secs, but with a 2H weapon and speed above 4.3 this doesn't matter), the graph are plotted even with weapons 1.0 speed so just don't consider the graph with time < 4.3 secs. As soon I introduce the CD I will repost the graph.

Offline
Old 08/08/07, 8:33 AM   #4
songster
Chief Passenger
 
Gnome Rogue
 
Earthen Ring (EU)
Originally Posted by draghkar View Post
If you do not use Storm Strike weapon speed doesn't matter, at least this is what math and simulator shows
You're wrong. The reason you're wrong is that Windfury has an internal cooldown, and cannot proc again within three seconds of the previous proc. Thus faster weapons "lose" a lot of their procs due to the cooldown.

This has been well known for a long time and very very thoroughly tested.

Great Britain Offline
Old 08/08/07, 8:34 AM   #5
draghkar
Piston Honda
 
Tauren Shaman
 
Aggramar (EU)
Originally Posted by songster View Post
You're wrong. The reason you're wrong is that Windfury has an internal cooldown, and cannot proc again within three seconds of the previous proc. Thus faster weapons "lose" a lot of their procs due to the cooldown.

This has been well known for a long time and very very thoroughly tested.
I know indeed I forgot to mention that limit, in a few minutes I will repost the graphs, and the math I wrote
with 0% crit already do consider the WF CD no having more than 1 WF each 3 seconds.

Offline
Old 08/08/07, 8:35 AM   #6
Yes
Bald Bull
 
Yes's Avatar
 
Tauren Druid
 
Dragonmaw
Originally Posted by draghkar View Post
If you do not use Storm Strike weapon speed doesn't matter, at least this is what math and simulator shows
There is a cooldown on windfury.

Windfury Weapon - WoWWiki, the Warcraft wiki


Edit: Put an bool (lastprocced) and an if statement in the loop that checks whether WF was procced in the last 3000 milliseconds.


Offline
Old 08/08/07, 8:37 AM   #7
Juice
Soda Popinski
 
Juice's Avatar
 
Orc Shaman
 
Mal'Ganis
Are you including in your calculations that the mainhand and offhand procs are tied together, or are you considering them independently? If you're considering them independently, then you're correct that weapon speed isn't a big deal (when stormstrike is removed). If you're tying the MH and OH procs together and then using weapon speed to determine the probability of a proc on that particular hand, then you're going to find that weapon speed does impact overall dps due to the mechanics of windfury.

Also, isn't there a spreadsheet that contains a damage simulator in it already, and shouldn't be be discussing this at that location?

Offline
Old 08/08/07, 8:38 AM   #8
draghkar
Piston Honda
 
Tauren Shaman
 
Aggramar (EU)
Originally Posted by Yes View Post
There is a cooldown on windfury.

Windfury Weapon - WoWWiki, the Warcraft wiki
I know there is, if you look at the first two cycles there are 20 seconds or 7.5 seconds between 2 WF procs.

Still with 0% crit the general formula is:

Damage(Y secs)= dps*Y+ Y/5*(dps*2+34*2)

Offline
Old 08/08/07, 8:39 AM   #9
draghkar
Piston Honda
 
Tauren Shaman
 
Aggramar (EU)
Originally Posted by Juice View Post
Are you including in your calculations that the mainhand and offhand procs are tied together, or are you considering them independently? If you're considering them independently, then you're correct that weapon speed isn't a big deal (when stormstrike is removed). If you're tying the MH and OH procs together and then using weapon speed to determine the probability of a proc on that particular hand, then you're going to find that weapon speed does impact overall dps due to the mechanics of windfury.
At the moment the shaman in the simulation is not DW.

Offline
Old 08/08/07, 8:40 AM   #10
Malan
Mike Tyson
 
Malan's Avatar
 
Malan
Tauren Shaman
 
No WoW Account
Originally Posted by Juice View Post
Also, isn't there a spreadsheet that contains a damage simulator in it already, and shouldn't be be discussing this at that location?
There's the big mega enhance thread that contains several simulators.

United States Offline
Old 08/08/07, 8:41 AM   #11
Yes
Bald Bull
 
Yes's Avatar
 
Tauren Druid
 
Dragonmaw
draghkar: Post your source code somewhere in case you're having trouble, I have a compiler here with me..


Offline
Old 08/08/07, 8:42 AM   #12
Juice
Soda Popinski
 
Juice's Avatar
 
Orc Shaman
 
Mal'Ganis
Originally Posted by draghkar View Post
At the moment the shaman in the simulation is not DW.
I don't believe that's correct. Building a simulator for a 1h or 2h weapon is trivial. The pages upon pages of discussion in the other threads are due to the complexities of modeling a shared WF cooldown (and flury).

Offline
Old 08/08/07, 8:49 AM   #13
Bink
Glass Joe
 
Bink's Avatar
 
Human Priest
 
Silvermoon
The formula is wrong. You are just assuming you proc 1 out of every 5 swings, so the cooldown would be cleared for both simulations. That model is flawed. You have a 20% chance per Swing that is not in the cooldown. Lets look at your example.

Simulation with 1st weapon

T1 (4 sec) => 400 damage hit (20% chance to proc)
T2 (8 sec) => 400 damage hit (20% chance to proc)
T3 (12 sec) => 400 damage hit (20% chance to proc)
T4 (16 sec) => 400 damage hit (20% chance to proc)
T5 (20 sec) => 400 damage hit + WF hit (400*2 + 34*4*2) (20% chance to proc)

T6 (24 sec) => 400 damage hit (20% chance to proc)
T7 (28 sec) => 400 damage hit (20% chance to proc)
T8 (32 sec) => 400 damage hit (20% chance to proc)
T9 (36 sec) => 400 damage hit (20% chance to proc)
T10 (40 sec) => 400 damage hit + WF hit (400*2 + 34*4*2) (20% chance to proc)

because the cooldown is shorter than the swing timer each swing 'could' proc. So the chance is constant and you can average them for you simulator.

The next is different though...

Simulation with 2nd weapon
T1 (1.5 sec) => 150 damage hit (20% chance to proc)
T2 (3 sec) => 150 damage hit (20% chance to proc)
T3 (4.5 sec) => 150 damage hit (20% chance to proc)
T4 (6 sec) => 150 damage hit (20% chance to proc)
T5 (7.5 sec) => 150 damage hit + WF hit (150*2 + 34*1.5*2) (20% chance to proc)

T6 (9 sec) = 150 damage hit (0% chance to proc)
T7 (10.5 sec) = 150 damage hit (0% chance to proc)
T8 (12 sec) = 150 damage hit (20% chance to proc)
T9 (13.5 sec) = 150 damage hit (20% chance to proc)
T10 (15 sec) = 150 damage hit (20% chance to proc)
T11 (16.5 sec) = 150 damage hit (20% chance to proc)
T12 (18 sec) = 150 damage hit + WF hit (150*2 + 34*1.5*2) (20% chance to proc)

Because 2 swings land in the cooldown, they have 0% chance to proc.. so they through off the whole 1/5 swings thing..

Offline
Old 08/08/07, 8:51 AM   #14
songster
Chief Passenger
 
Gnome Rogue
 
Earthen Ring (EU)
Originally Posted by draghkar View Post
I know indeed I forgot to mention that limit, in a few minutes I will repost the graphs, and the math I wrote
with 0% crit already do consider the WF CD no having more than 1 WF each 3 seconds.
Um, a closer look at your initial post shows that you're modelling WF as proccing on every fifth hit. This is the wrong way to do it. You need to model it as a 20% chance on each hit, not a 100% chance on every fifth hit.

Of course the cooldown is irrelevant if your model only procs on every fifth hit!

Great Britain Offline
Old 08/08/07, 8:55 AM   #15
Juice
Soda Popinski
 
Juice's Avatar
 
Orc Shaman
 
Mal'Ganis
This thread needs to go away.

Offline
 

Go Back   Elitist Jerks » Public Discussion » Class Mechanics

Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Slow (41 Arcane) in Raids Groat Public Discussion 67 08/15/07 4:57 AM
[shaman] DW weapons for lower lvls ? dwayna The Dung Heap 0 06/20/07 6:25 AM
DW Fury Warrior - Slow vs. Fast OH dilemma Arthea Public Discussion 15 11/28/06 7:59 AM
Shaman Dual Wield: Do all caster weapons need to be "main hand" now? Rz Public Discussion 111 10/06/06 5:07 PM