Elitist Jerks (http://elitistjerks.com/forums.php)
-   Public Discussion (http://elitistjerks.com/f15/)
-   -   Mage dps calculator (Frost for now) (http://elitistjerks.com/f15/t7970-mage_dps_calculator_frost_now/)

 Nurru 08/29/06 12:48 PM

Ever since we reached Patchwerk in July I've been playing around with numbers for sustained dps a lot. To this end I ended up writing a perl script at work to calculate a Frost mage's dps. It handles all the relevant dps talents (though if you use Arcane Instability you need to add it via modifiers), and I even have it working with Winter's Chill. To handle WC it essentially takes the timing of the frostbolts, checks if each bolt applies the debuff via a simple rand roll and then refreshes if necessary. It has helped me evaluate potential gear upgrades (What to prioritize, etc) so I figured it might be useful to someone here. I'm currently writing a similar thing for fire but ignite handling is a bit tricky, I'm likely going to need to thread it and allow for multiple mage calculations for that one to be fun. It becomes even more complicated if you decide that a fire mage will begin scorching to preserve mana at a particular amount or to try to keep an ignite going as some do, so I've been slow on finishing that one up.

Anyhow, a usage example:
Assuming +567 dmg, 10% crit, 7% hit, 3 points in elemental precision, 3 points in winter's chill, mob level 63, 3 points in piercing ice

baksu:~ chris\$ ./frostbolt -c10 -d567 -e3 -h7 -l3 -n100000 -p3 -w3
Damage Range: 1035.302 - 1077.702
-- Results over 100000 bolts --
Total DPS: 486
Total +hit: 13
Chance to hit a +3 mob: 96%
Resists: 3880
Crits: 19740

There may be a few minor discrepancies in my max values for +hit or such, but when I run the numbers and then look at my dps on Patchwerk it's almost identical so I'm mostly pleased*.

It can be grabbed at http://www.nullcode.org/~chris/wow/frostbolt if you want to play with it. If that link isn't working try http://www.nullcode.org/~chris/wow/frostbolt.zip .

*CoE and such I'm adding by hand, there is also an acceptable margin of error

 Pahalial 08/29/06 1:00 PM

Very nice, I have a question though - How did this match your dps for patchwerk since the damage range obviously doesn't take into account CoE?

Also, support for 5pc enigma and 8pc NW would be cool.

 Nurru 08/29/06 1:03 PM

Ah, sorry I didn't clarify. Things like CoE and such are easy enough to add in by hand so I was doing it myself. Good point though, I could potentially add that easily. Enigma and Netherwind should be pretty easy to add as well.

 Manabar 08/29/06 1:05 PM

Hmm, the link is broken for me I think :(

 Nurru 08/29/06 1:09 PM

Quote:
 Originally Posted by Manabar Hmm, the link is broken for me I think :(

 Oneiros 08/30/06 6:43 PM

I might be dumb or whatnot, but what program do you use to run this?

 Harem 09/08/06 12:28 AM

Sorry for the bump, but did you ever add NW modeling to it? I wanted to try and use this to show my buddies that 8/8 aint that great.

 Polleke 09/08/06 7:03 AM

This is a perl script, primarly designed to run on a shell with Perl. I'm abusing my shell access to the webserver of the uni to run it... But any perl enviroment should do.

\$ ./test -c 26 -d 391 -e 3 -h 1 -l 3 -p 3
Damage Range: 883.388857142857 - 925.788857142857
-- Results over 10000 bolts --
Total DPS: 408
Total +hit: 7
Chance to hit a +3 mob: 90%
Resists: 984
Crits: 2544

This would be my DPS with a level 63 that already has winterchill on it, but no CoE. And also Arcane Instab is not factored.

 sp00n 09/08/06 9:10 AM

Would be interesting to see this online and/or in an excel sheet.

 frmorrison 09/08/06 9:40 AM

Perl is a handy language, but I think many people don't have access/don't want to get another program to run it.

Maybe you could make it into an .exe file (some people are scared of those with good reason, but it is all I can think of).

 Skav 09/08/06 9:41 AM

I made this some times ago : http://www.skav.org/theorycraft/mage_simulator.php
It still lies in an unfinished state because the mages from my guild are lazy and won't do anything. Probably some bugs left too.

I can give the source code if you want, even though it's quite ugly and the rare comments are in French.

 Vax 09/08/06 10:05 AM

nice theorycraft going on here.
difference a little from danya's wowequip.

Code:

```mc@cyrex ~ \$ ./frostbolt -c14 -d453 -e3 -h6 -l3 -n10000 -p3 Damage Range: 936.903714285714 - 979.303714285714 -- Results over 10000 bolts -- Total DPS: 414 Total +hit: 12 Chance to hit a +3 mob: 95% Resists: 515 Crits: 1406```
danya:

Code:

```Frost Spells:        +453 damage Frostbolt:        882 - 920        Max Crit: 1840        Ave DPS: 448.8        Ave DPM: 5.08        Full Mana Damage: 69563```
you could add "Average DPM" and "Full Mana Damage" to your script.
takes a little more stats (mana / int) to consider but it's doable i think

 Maklar 09/08/06 10:15 AM

Danya's takes into account your int for the crit. When you put in your crit on the pearl script did you take into account your int for that as well?

 Nurru 09/08/06 10:52 AM

Surprised to see this bumped. I haven't updated it much because I was pondering creating an interface for it, but the interest overall seemed low so I hadn't worked with it much. I'll probably take a look this weekend and add CoE, NW, Arcane Instability and possibly crit from int.

As for wowequip, is it taking into account mob level? If it is then I can check to see where my calcs are a bit off, assuming the example above is correct.

 Maklar 09/08/06 12:06 PM

Wowequip does take into account mob level but I do not know if the one he posted is showing it. It shows DPS vs 60 and vs 63. Even at 63 the wowequip should be showing around 430 I believe.

All times are GMT -4. The time now is 5:24 AM.