View Single Post
Old 02/26/08, 4:44 PM   #2211 (permalink)
Toskk
Glass Joe
 
Tauren Druid
 
Kael'thas
Originally Posted by Allev View Post
That's actually not true. You can prove this simply: turn your crit up to 70%, hit and expertise to 0, take the 2t4 and 2t6 bonuses, and shift every cycle. You'll be bound to not hit one of every 10 or so rips, which takes a GCD to try again-- so one of every cycle is 13 seconds instead of 12. Yet, your average cycle time in Toskk's is still 12s.

There is a similar effect on cycle time if you get a worst-case cycle: if you rip, then miss mangle, then hit mangle, then hit two shreds (but not crit), and get no energy procs, you have 3cp. The time of this isn't averaged, rather the times of all your cycles is averaged so that your best-case cycles which would last 10s balance out the ones that take 14s, and extra shreds are added in. Again, your average cycle time is longer, which means that you use more mangles or shreds and fewer rips in the fight. More hit rating mitigates this to a degree.

A more common situation you may find yourself in, even if you have supposed 12s cycles, is having to wait on energy from time to time.

I've had a discussion with Toskk about this on his forums (sometime in November) but modeling all of these properly would take a massive investment of time. Rather than taking average energy gain, you need to calculate chances of energy droughts. Rather than an average cycle, you need to calculate probabilities of every cycle, with energy procs and without (and account for when you get them). It's messy as hell, and I don't blame him for not modeling this part-- it's orders of magnitude more work for comparatively little return.

Until that work is done, though, the tool will incorrectly report optimal cycle times, which will in turn incorrectly report optimal DPS, since you'll be using a different ratio of mangles, shreds, and rips.

While Toskk's has proven to be a relatively accurate ballparking tool, and possibly the best we'll get, let's be clear: it's not perfect.
Yes, Allev is noting a few of the difficulties involved with a combat model rather than a combat simulator. The basic problem comes down to averages rather than reality. For example, in the model if the average cycle time is greater than 12.00s, on average you won't be throwing in an extra Shred to compensate for extra energy. But *some* cycles would still be below 12.00s, requiring an extra Shred, even if the *average* cycle is greater than 12.00s. This unfortunately cannot be modeled effectively, as it would require computation of the probability of every possible attack cycle..I did actually create two combat simulators as well as the current combat model, and unfortunately neither of them are workable because of the amount of recursion involved.

In order for a combat simulator to *begin* to give reasonable averages, it takes well over 500 simulated cycles (I'd personally use no fewer than 1000 cycles). That amount of recursion in Javascript almost immediately causes web browsers to grow suspicious of the script and start throwing errors, not to mention takes like 60 seconds to actually finish.

I do have eventual plans to move to a new calculator format (probably using Java), one that would not hate me for attempting to force it to compute thousands of sustained DPS cycles for every variable I want to manipulate. Until that time, however, the comparisons between the current combat model and the combat simulators I created were very close anyway, with most stats typically differing from the model values by no more than 0.2 Kitty Points.
 
User is offline.
Reply With Quote