Elitist Jerks
Register
Blogs
Forums


Go Back   Elitist Jerks » Class Mechanics

 
 
LinkBack Thread Tools
Old 09/05/07, 5:36 PM   #2176
Yo!
Piston Honda
 
Yo!'s Avatar
 
Orc Shaman
 
Страж Смерти (EU)
Originally Posted by Ardonomus View Post
Looks good, but I can't run it. I'm getting this error message:

Failed to load Main-Class manifest attribute from
C:\...\JavaLibrary1.jar
(I've downloaded jre1.6.0_02)
It runs from html only, can not run jar itself.
Crazy Shaman's DPS & AEP calculator (c) Yo
If you want to run it off-line you can copy html file and jar to one place and open html.

Offline
Old 09/05/07, 6:05 PM   #2177
Ardonomus
Von Kaiser
 
Ardonomus's Avatar
 
Tauren Shaman
 
Arathor (EU)
Ah, thanks. Sorry for being a noob.

Offline
Old 09/05/07, 6:09 PM   #2178
Xoya
Bald Bull
 
Xoya's Avatar
 
Xoya
Orc Shaman
 
No WoW Account
Originally Posted by Yo! View Post
1) Check what expected DPS it provides you with. If it is about the same that you can achieve at 100% performance against boss with almost 0 armor and if the % break-up of attacks is similar to yours - use these AEP values safely.
I am running it again right now with slightly updated numbers: 2511 AP, 33.26% crit, 13.63% hit, 2.34% haste... and, done. Somewhat more reasonable numbers this time. I assume this is because of the fix you mentioned earlier in the thread.

AP: 1
Str: 2.2
CR: 2.58
Agi: 2.51
HiR: 2.02
HaR: 2.86

The value I am getting for DPS is 1027 when not counting shocks. Tornhoof's sim when I ran up it against my gear and appropriate buffs was giving me 1393 DPS. I'm guessing this is in part to do with trinkets (bloodlust brooch / hourglass of the unraveller), mongoose procs, and the unchanged haste rating in Tornhoof's sim, but would all that account for the extra 366 DPS? In short, it will be hard to compare it to our "real" DPS without the addition of all those things, but I'm looking forward to comparing them when it does.

I would like to note that Tornhoof's sim isn't accurately reporting some of my stats. My hit is 13.63% and it has it listed at 13.37%. I am not sure how accurate the averaging of crit and AP gained from procs/buffs is, but it seems believable enough.

United States Offline
Old 09/05/07, 6:56 PM   #2179
Rob
Paid $25 To Raid
 
Draenei Shaman
 
Burning Blade
So, I was trying to finally produce some hard numbers for WF/GoA comparisons based on party composition. I started off by assuming GoA gives 88 AGI with max rank and talents. I know that is 88/40 = 2.2% crit for rogues and 88 AP. I wanted a way to convert this AP to a DPS figure, and this thread gave me a figure of .3 DPS/AP.

The next step was to look at a WWS parse and see what benefit my rogues were getting from WF. I selected a recent Tidewalker kill because it’s long, we had three rogues, and there’s a lot of consistent attacking from behind. At this point, I’m still only interested in the rogue data.

On three rogues, WF accounted for:
(number WF attacks)*(average hit)/(total seconds)*(1 + crit rate)
49*378/508*1.20=43.75 DPS (3.76% of 1163 DPS)
52*363/508*1.22=45.33 DPS (4.01% of 1130 DPS)
62*352/508*1.19=51.12 DPS (4.45% of 1148 DPS)
An average of 46.73 DPS / 4.07% of DPS

GoA would have given them:
(DPS from AP) + total DPS*(1 – crit rate)*(AGI from GoA)/(AGI/Crit %)
26.4 DPS from 88 AP + 1163*(1-.20)*88/40/100 DPS from crit = 46.87 DPS
26.4 DPS from 88 AP + 1130*(1-.22)*88/40/100 DPS from crit = 45.79 DPS
26.4 DPS from 88 AP + 1148*(1-.19)*88/40/100 DPS from crit = 46.86 DPS
An average of 46.50 DPS

MH poison would obviously have made up the minimal difference (according to this outdated link, IP is 14.7 DPS.)

So… what’s wrong here?
My math?
Was WF uptime on the rogues obviously lower than 100% (I might have been twisting)?
Is the .3 DPS/AP figure terribly wrong for rogues?
- (Take it down to .2 DPS/AP and if that figure for IP is right, IP + GoA is still better.)
Do the mechanics of the Tidewalker fight (Watery Grave, potential agro cap) work against WF in a non-obvious way?
- (Specifically, do they impact DPS from WF more harshly than DPS from other sources?)
Or is WF no longer the superior choice for rogues?

Last edited by Rob : 09/05/07 at 7:05 PM.

Offline
Old 09/05/07, 7:16 PM   #2180
Diogo
Piston Honda
 
Tauren Shaman
 
Gurubashi
as far as I know, the 1ap=>.3 dps was achieved through the rogue dps spreadsheet, which yields DPS pre-armor mitigation. Additionally, I think that figure was found for raid buffed rogues, which would include WF in its calculations.

Finally, even if that is not the case, there is still the untangible benefits of WF, such as increased energy regen and additional ppm procs.

Offline
Old 09/05/07, 7:16 PM   #2181
Xoya
Bald Bull
 
Xoya's Avatar
 
Xoya
Orc Shaman
 
No WoW Account
Regarding rogue aggro, my top rogues claim to rarely, if ever, have to actually use feint. They have vanish if aggro is too much of an issue, and warriors are getting hit very hard (and thus generating a lot of rage) in that fight, so I doubt aggro is the culprit.

United States Offline
Old 09/05/07, 7:24 PM   #2182
Rob
Paid $25 To Raid
 
Draenei Shaman
 
Burning Blade
Originally Posted by Diogo
as far as I know, the 1ap=>.3 dps was achieved through the rogue dps spreadsheet, which yields DPS pre-armor mitigation. Additionally, I think that figure was found for raid buffed rogues, which would include WF in its calculations.
Good to know that it's pre-armor mitigation, but taking off 1/3 of the AP->DPS to account for 30% armor mitigation still results in GoA being theoretically superior. And if the figure was found including WF, if GoA gives a similar DPS increase the figure should still be accurate.
Originally Posted by Xoya
warriors are getting hit very hard (and thus generating a lot of rage) in that fight, so I doubt aggro is the culprit.
Warriors also get an attack speed debuff in that fight, so threat is actually more of a problem than you might imagine -- well, at least when our Venezuelan warrior with 700ms latency tanks (our two US warriors don't have an issue). I looked at the parse again and it looks like one of our good-ping warriors was tanking though, so this probably wasn't a concern (and I probably wasn't twisting for more than the first 30 sec of the fight or perhaps during SRs so there was probably negligible impact on WFT buff uptime).

Basically, I'd love for someone to prove me wrong and the status quo right -- any takers?

Offline
Old 09/05/07, 7:36 PM   #2183
Diogo
Piston Honda
 
Tauren Shaman
 
Gurubashi
Originally Posted by Rob View Post
Good to know that it's pre-armor mitigation, but taking off 1/3 of the AP->DPS to account for 30% armor mitigation still results in GoA being theoretically superior. And if the figure was found including WF, if GoA gives a similar DPS increase the figure should still be accurate.
editi posted something completely wrong, but instead of just asking for deletion, I decided to write something else)

You are multiplyin WF hits by average hit, which also includes off hand hits. The correct way would be to multiply wf hits by main hand average.

Offline
Old 09/05/07, 7:40 PM   #2184
Tornhoof
Piston Honda
 
Tauren Shaman
 
Die Silberne Hand (EU)
Originally Posted by Xoya View Post
I would like to note that Tornhoof's sim isn't accurately reporting some of my stats. My hit is 13.63% and it has it listed at 13.37%. I am not sure how accurate the averaging of crit and AP gained from procs/buffs is, but it seems believable enough.

You're hit is lower, since you're missing 4 HitRating in my model, due to the missing meta gem (not modelled) in your helmet, so you don't get a bonus.

If I actually put the values from my program into Yo's model, I get 1210 DPS, my model outputs 1357, some 50 DPS can be accounted to modelled procs and other internal modelling. Yo's model is probably a bit on the lower side and mine on the higher side of DPS. 1250-1275 DPS is probably a realistic value for your gear.
My model is designwise a bit on the higher side, since it does assume ideal distributions for some things to achieve a closed form expression.

We will need to change a fair amount of modelling after 2.2 anyway, because apparently they change ppm procs too in the next patch.


Offline
Old 09/05/07, 7:55 PM   #2185
Disquette
1) press clutch and break 2) turn key
 
Disquette's Avatar
 
Human Rogue
 
Sargeras
Hey Yo, will you please upload the source to your code in a text version somewhere? I'm not familiar with java, and it's not immediately obvious to me where I should be going in order to see the source so I can review the code.

thanks much!

Edit - too many weird things happening here, seeing the source will help.

first, please error check. Setting weapon speed to 0 = firefox crash. yeah, it makes no sense to have a 0 speed weapon, but my fat fingers don't know that

Easy examples of weirdness:

1) Hit above 25%, 30%, 40% increases dps. Hit increases above 59% don't. I have no idea how the code is working in this case.

2)
Take:
AP: 1400
Crit: 0%
Hit: 25% (I assume that's hit bonus, not total hit)
Haste: 0%
MH DPS: 0
MH Speed: 2.6
MH Skill: 350
OH DPS: 0
OH Speed: 2.6
OH Skill: 0

White DPS = 90

Since there's no flurry, white dps should be 1400 / 14 = 100. Ok, so maybe there's a 10% armor factor in there. Or maybe dodge. Or maybe parry, or glancing, or some combination, or maybe it's calculated wrong. I don't know. None of that is relevant to the next point:

now, set OH Skill to 350

white DPS = 125

So, if White DPS with just mainhand = 90, white dps with mh + oh should be 135 (90 + 90/2) since there's no flurry component, etc.

Also, I don't know how weapon skill is being calculated, but if i put in 0 weapon skill for both weaopns, I still get 21 dps white damage, which I don't understand since those shouldn't hit/crit at all. I suppose this oddityh probably explains the part above.

It's just really hard to believe the numbers in here when we can't:

turn off stormstrike
turn off windfury
turn off offhand weapon
turn off mainhand weaopn
know what % dodge, parry, miss, glance, armor you use
etc.

In short, please let us review your code, or change it so that we can activate and deactivate portions of it so that we can verify the results against common sense and/or testing. You have some odd stuff in there. I'm sure smarter people than I know how to get to the actual code that runs your page, but I'm not one of those people. I do, however, know a little bit about the math behind it, and can possibly help you get your page working more realistically.

I apologize if this was all listed elsewhere and I missed it.

Last edited by Disquette : 09/05/07 at 8:20 PM.

United States Offline
Old 09/05/07, 8:15 PM   #2186
rava
sparks keep me warm
 
rava's Avatar
 
Tauren Shaman
 
Turalyon
Originally Posted by Rob View Post
So, I was trying to finally produce some hard numbers for WF/GoA comparisons based on party composition. I started off by assuming GoA gives 88 AGI with max rank and talents. I know that is 88/40 = 2.2% crit for rogues and 88 AP. I wanted a way to convert this AP to a DPS figure, and this thread gave me a figure of .3 DPS/AP.

The next step was to look at a WWS parse and see what benefit my rogues were getting from WF. I selected a recent Tidewalker kill because it’s long, we had three rogues, and there’s a lot of consistent attacking from behind. At this point, I’m still only interested in the rogue data.

On three rogues, WF accounted for:
(number WF attacks)*(average hit)/(total seconds)*(1 + crit rate)
49*378/508*1.20=43.75 DPS (3.76% of 1163 DPS)
52*363/508*1.22=45.33 DPS (4.01% of 1130 DPS)
62*352/508*1.19=51.12 DPS (4.45% of 1148 DPS)
An average of 46.73 DPS / 4.07% of DPS

GoA would have given them:
(DPS from AP) + total DPS*(1 – crit rate)*(AGI from GoA)/(AGI/Crit %)
26.4 DPS from 88 AP + 1163*(1-.20)*88/40/100 DPS from crit = 46.87 DPS
26.4 DPS from 88 AP + 1130*(1-.22)*88/40/100 DPS from crit = 45.79 DPS
26.4 DPS from 88 AP + 1148*(1-.19)*88/40/100 DPS from crit = 46.86 DPS
An average of 46.50 DPS

MH poison would obviously have made up the minimal difference (according to this outdated link, IP is 14.7 DPS.)

So… what’s wrong here?
My math?
Was WF uptime on the rogues obviously lower than 100% (I might have been twisting)?
Is the .3 DPS/AP figure terribly wrong for rogues?
- (Take it down to .2 DPS/AP and if that figure for IP is right, IP + GoA is still better.)
Do the mechanics of the Tidewalker fight (Watery Grave, potential agro cap) work against WF in a non-obvious way?
- (Specifically, do they impact DPS from WF more harshly than DPS from other sources?)
Or is WF no longer the superior choice for rogues?
Your GoA numbers are off because you're taking the total dps including WF. If you were to remove the 49 procs on the first rogue (figuring out what to subtract is hard considering it averages mh+oh attacks, I'd use the maximum melee swing for simplicity sake) 49*1.2*775/480=95 dps removal. So.. 1070 dps as opposed to 1163. I'm not entirely sure what all of your numbers are getting at with the GoA calculation and I am far too lazy to investigate it further!

Also, GoA will be skewed even further because you are giving poison/rupture benefit from agi, so remove another 795xx/480 and 95 = ~900 dps that can gain from GoA

Last edited by rava : 09/05/07 at 8:21 PM. Reason: also!

Offline
Old 09/05/07, 8:29 PM   #2187
Disquette
1) press clutch and break 2) turn key
 
Disquette's Avatar
 
Human Rogue
 
Sargeras
another oddity...



Current crit is teeny, but crit AEP value is also teeny.
Hit rating is way above cap, but hit value is above 0, by a non-trivial amount.

United States Offline
Old 09/05/07, 11:17 PM   #2188
Yo!
Piston Honda
 
Yo!'s Avatar
 
Orc Shaman
 
Страж Смерти (EU)
[quote=Disquette;469446]Edit - too many weird things happening here, seeing the source will help.


The main idea is that no special fool-proof measures were built-in. It was programmed with player level 70 hitting boss level 73 in mind.
1) it is not cheked if weapon speed = 0
2) Hit is not capped at Miss (need to fix first)
3) you get 90 in your first example because of dodge and glancing (need to put detailed statistics on separate tab) and this 90 dps included OH damage because of weapon skill that was assumed to be in 350+ range - a switch was only at point of 355 weapon skill (need to fix)
4) need another tab with procs including procs from items, sets and shaman abilities for the ability to turn on/off choosen ability.
5) about the picture - I assumed that
"the chance of receiving critical hits from any level attacker decreases by 0.04% per point that the target's Defense skill exceeds the attacker's Weapon Skill"
(wowwiki) and that "
the player will gain 0.1% to their critical strike rating per weapon skill against monsters above their level"
leading to
CritMH = (MHskill-350)*0.001-0.03
All input values (Crit, Hit, AP) are grand totals after all buffs and talents. So if Grand total Crit is 1% (not possible in game) it makes Crit after taking level difference into account -2% and additional small value of Crit is not helping to push dps - still no crits. If you will put 3% into sim it will produce correct result.

Thanks for your time spent to test these things.

Time = new double []{0,inf,0,inf,0,inf,inf};
private void MainProc(){
      findMinIndex(Time);
        while (min[1]<=(Hours))
        {
            R1=Math.random();
            R2=Math.random();
            switch ((int)min[0])
            {
                case 5: //WFcooldown ends
                    Time[5]=inf;
                    break;
                case 0: //MH                                     
                    if (R1>(MissMH+Dodge))
                    {  // landed
                        if ((Time[5]==inf)&&(R2<=0.32)) 
                        { //windfury
                            Time[1]=min[1];Time[5]=min[1]+3; 
                            WF = true;
                        } 
                        if (R1<=(MissMH+Dodge+0.25))
                        { //glancing
                            Ndamage+=((MHdps + AP/14)*MHspeed*Glancing);
                        } 
                        else if (R1<=(MissMH+Dodge+0.25+Crit+CritMH))
                        { //crit
                            if (Time[6]==inf){AP*=1.1;WFap*=1.1;}
                            Time[6]=min[1]+10;
                            Ndamage+=(2*(MHdps + AP/14)*MHspeed);
                            Flurry = 3;
                        }
                        else {Ndamage+=((MHdps + AP/14)*MHspeed);} //hit
                    }
                    if (Flurry > 0) 
                    { //flurry
                        Flurry-=1;
                        Time[0]+=MHspeed/(1.3+1.3*Haste);
                    }
                    else {Time[0]+=MHspeed/(1+Haste);}
                    break;
                case 1: //MH WF
                    if (R1>(0.05+Dodge))
                    {  // landed
                        if (R2<=(Crit+CritMH))
                        { //crit
                            if (Time[6]==inf){AP*=1.1;WFap*=1.1;} // UR
                            Time[6]=min[1]+10; // UR
                            WFdamage+=(2*1.4*(MHdps + WFap/14)*MHspeed);
                            Flurry = 3;
                        }
                        else {WFdamage+=(1.4*(MHdps + AP/14)*MHspeed);} //hit
                    }
                    if(WF){WF=false;}
                    else {Time[1]=inf;}
                    break;
                case 2: //OH
                    if (R1>(MissOH+Dodge))
                    {  // landed
                        if ((Time[5]==inf)&&(R2<=0.32)) 
                        { //windfury
                            Time[3]=min[1];Time[5]=min[1]+3; 
                            WF = true;
                        } 
                        if (R1<=(MissOH+Dodge+0.25))
                        { //glancing
                            Ndamage+=((OHdps + AP/14)*OHspeed*Glancing/2);
                        } 
                        else if (R1<=(MissOH+Dodge+0.25+Crit+CritOH))
                        { //crit
                            if (Time[6]==inf){AP*=1.1;WFap*=1.1;}
                            Time[6]=min[1]+10;
                            Ndamage+=((OHdps + AP/14)*OHspeed);
                            Flurry = 3;
                        }
                        else {Ndamage+=((OHdps + AP/14)*OHspeed/2);} //hit
                    } 
                    if (Flurry > 0) 
                    { //flurry
                        Flurry-=1;
                        Time[2]+=OHspeed/(1.3+1.3*Haste);
                    }
                    else {Time[2]+=OHspeed/(1+Haste);}
                    break;
                case 3: //OHWF
                    if (R1>(0.05+Dodge))
                    {  // landed
                        if (R2<=(Crit+CritOH))
                        { //crit
                            if (Time[6]==inf){AP*=1.1;WFap*=1.1;} // UR
                            Time[6]=min[1]+10; // UR
                            WFdamage+=(1.4*2*(OHdps/2 + (WFap-AP/2)/14)*OHspeed);
                            Flurry = 3;
                        }
                        else {WFdamage+=(1.4*(OHdps/2 + (WFap-AP/2)/14)*OHspeed);} //hit
                    }
                    if(WF){WF=false;}
                    else {Time[3]=inf;}
                    break;
                case 6: // UR ends
                    Time[6]=inf;
                    AP /=1.1;
                    WFap /= 1.1;
                    break;
                case 4: //SS
                    if (R1>(0.05+Dodge))
                    {  // both SS landed
                        //#1 MH
                        if ((Time[5]==inf)&&(R2<=0.32)) 
                        { //windfury
                            Time[1]=min[1];Time[5]=min[1]+3; 
                            WF = true;
                        } 
                        if (R2<=Crit+CritMH)
                        { //crit
                            if (Time[6]==inf){AP*=1.1;WFap*=1.1;}
                            Time[6]=min[1]+10;
                            SSdamage+=(2*(MHdps + AP/14)*MHspeed);
                            Flurry = 3;
                        }
                        else {SSdamage+=((MHdps + AP/14)*MHspeed);} //hit
                        //#2 OH
                        R2=Math.random();
                        if ((Time[5]==inf)&&(R2<=0.32)) 
                        { //windfury
                            Time[3]=min[1];Time[5]=min[1]+3; 
                            WF = true;
                        } 
                        if (R2<=Crit+CritOH)
                        { //crit
                            if (Time[6]==inf){AP*=1.1;WFap*=1.1;}
                            Time[6]=min[1]+10;
                            SSdamage+=((OHdps + AP/14)*OHspeed);
                            Flurry = 3;
                        }
                        else {SSdamage+=((OHdps + AP/14)*OHspeed/2);} //hit
                    }
                    Time[4]+=10;
                    break;         
            }
            findMinIndex(Time);
        }         
        TotalDamage = Ndamage+SSdamage+WFdamage+Edamage;
  }

Last edited by Yo! : 09/05/07 at 11:27 PM.

Offline
Old 09/05/07, 11:56 PM   #2189
Lethnon
Glass Joe
 
Draenei Shaman
 
Feathermoon
I want to start my first thread with a gracious "thank you" to all involved. My shaman is new to me, and reading this thread has helped me maximize my role and make me a valued member of my guild and raids.

My question is in regards to the Pawn addon. I got it, and put in the string suggested on the first page. It gave a higher value to the Amani Venom-Axe than the
Boggspine Knuckles. Is this correct, or did I screw up the addon?

Thanks in advance for your time.

Offline
Old 09/06/07, 12:01 AM   #2190
Disquette
1) press clutch and break 2) turn key
 
Disquette's Avatar
 
Human Rogue
 
Sargeras
Oooh, code, ty! :-)

I'm not sure why weaponspeed = 0 crashed firefox then, if that turns it off. Also, now I understand the crit issue, so that makes a lot more sense.

Off to work now, maybe I'll have time to look at it more while there. Being able to set glancing%, armor mitigation%, dodge%, parry%, and the SS/WF toggles will be a huge help for testing.

United States Offline
Old 09/06/07, 12:04 AM   #2191
Disquette
1) press clutch and break 2) turn key
 
Disquette's Avatar
 
Human Rogue
 
Sargeras
Originally Posted by Lethnon View Post
My question is in regards to the Pawn addon. I got it, and put in the string suggested on the first page. It gave a higher value to the Amani Venom-Axe than the
Boggspine Knuckles. Is this correct, or did I screw up the addon?

Thanks in advance for your time.
Without doing the exact math, sure, the pawn value might be higher (but probably by only a teeny bit!). Pawn value only looks at the stat / combat-rating bonuses though. Things like the weapon dps and speed are not number-ized in Pawn strings (at least the ones we have here).

In a realistic comparison, where you look at the dps and speed of the weaopns, boggspine knuckles come out *way* ahead.

United States Offline
Old 09/06/07, 12:11 AM   #2192
Lethnon
Glass Joe
 
Draenei Shaman
 
Feathermoon
So what is the recommended gear itemization tool/addon?

Offline
Old 09/06/07, 12:18 AM   #2193
Xoya
Bald Bull
 
Xoya's Avatar
 
Xoya
Orc Shaman
 
No WoW Account
Lootzor is good for out-of-wow work. So is Tornhoof's WOWEquipOptimizer. Pawn is fine for in-game comparison of items but you just need to keep a list in your head of the weapons you should be searching for.

Edit: and I should mention that both of those have links in the main post, just in case you missed it!

United States Offline
Old 09/06/07, 12:19 AM   #2194
Disquette
1) press clutch and break 2) turn key
 
Disquette's Avatar
 
Human Rogue
 
Sargeras
For your mainhand weapon, get something slow with high dps. Stats are a bonus. Look at the pages of debate regarding the Drakefist hammer vs the Planar Edge as an example. 2.6, 2.7, 2.8 speed and high dps is what you want.

For your offhand, re-read the first post, as it covers it all, as I recall. The section is called "Itemization - Weapons"

Use pawn when evaluating non-weapon item slots. Pawn can do the math for you for regular armor slots very well, though the specific pawn values will vary depending on your current gear. The strings listed are probably pretty good for your level of gear, based on what I see in the armory.

edit - yeah, what Xoya said ;-)

United States Offline
Old 09/06/07, 12:23 AM   #2195
Lethnon
Glass Joe
 
Draenei Shaman
 
Feathermoon
OK. Thanks everyone!

Maybe when my toon grows up (and I get a degree in higher math) I will be able to contribute more!

Offline
Old 09/06/07, 12:47 AM   #2196
Malan
Mind the gap.
 
Malan's Avatar
 
Malan
Tauren Shaman
 
No WoW Account
@Rob - these 2 posts might help you out.
http://elitistjerks.com/448884-post336.html
http://elitistjerks.com/450091-post338.html

United States Offline
Old 09/06/07, 2:02 AM   #2197
Disquette
1) press clutch and break 2) turn key
 
Disquette's Avatar
 
Human Rogue
 
Sargeras
Ok, going to pull out interesting lines from the code as I see them...

if ((Time[5]==inf)&&(R2<=0.32))
Why a 32% chance to proc windfury on an attack instead of the tested and empirically determined 36% chance?

if (R1<=(MissMH+Dodge+0.25))
How is MissMH determined, and why does it have a different rate than the OH miss rate? I see you did something similar with crit. Is this for Orcs or other people who have +skill ratings who use non-similar weapon types between hands?

*** editing out my WF dmg thing - this is referred to later on, but I can see where I made a mistake in analysis ***

the following stuff I still don't get, however:

WFdamage+=(2*1.4*(MHdps + WFap/14)*MHspeed);
Flurry = 3;
}
else {WFdamage+=(1.4*(MHdps + AP/14)*MHspeed);} //hit
I assume you mean to have WFap/14 in the "hit" statement for the MHWf hit case.

Also, now that I think of it, is Windfury Actually hitting twice? Again, I'm pretty good at being dumb, so I hope this isn't s stupid question, but how do you have the code proc'ing 2 windfury attacks? I'm only seeing one. I'm not so familiar with the array coding, however, so maybe you take care of it somewhere in there.

I assume that when you say that adding Hit wasn't capped, the result in the sim is that you end up pushing dodge off of the table? I'm not sure how you determine MissOH and MissMH, so I can't be sure. I still don't get why having 60% Hit was better than 50% hit, but as long as you say you're fixing it, I'm happy with that.

Also, I'm not sure what's happening here:
case 1: //MH WF
if (R1>(0.05+Dodge))
{ // landed
if (R2<=(Crit+CritMH))
{ //crit
if (Time[6]==inf){AP*=1.1;WFap*=1.1;} // UR
Time[6]=min[1]+10; // UR
WFdamage+=(2*1.4*(MHdps + WFap/14)*MHspeed);
Flurry = 3;
}
else {WFdamage+=(1.4*(MHdps + AP/14)*MHspeed);} //hit
}
if(WF){WF=false;}
else {Time[1]=inf;}
break;
This part in particular:
if (R1>(0.05+Dodge))
{ // landed

is the 0.05 supposed to be the default miss rate? If so, then why don't you have +hit reducing that 0.05 result off the table? I know you mentioned a two-roll system for yellow attacks, but I don't see that anywhere in here - Is this somehow related to that?

Other than those things, I don't see any glaring mistakes (either on your part in the code, or mine in understanding it). Not to say that these mistakes might not explain the huge dps gaps seen - If you're not granting the WF AP bonus to MH WF hits, and if you only have WF hitting once instead of twice, that could easily explain the 200dps delta between your and tornhoof's models. But, if these are the only problems with it...

Then this, in fact, is by far the cleanest code I've seen, and makes the step by step versions (like mine ) look really ugly in comparison. Your method of finding the minimum value of the "next event" is so much more efficient - now I'm starting to understand why your sim runs so much quicker than mine ever could as I check every x milliseconds for an event.

I'm really impressed man :-) The only thing that I haven't mentioned so far that I'd like to see, that I haven't requested yet, is more detailed reporting - how many main hand hits were there, for how much damage. How many off hand glances, etc etc. That sort of thing really helps us compare the code results against empircal or theoretical examination.

Last edited by Disquette : 09/06/07 at 2:09 AM.

United States Offline
Old 09/06/07, 5:05 AM   #2198
Lujaar
King Hippo
 
Lujaar's Avatar
 
Orc Death Knight
 
Mal'Ganis
Originally Posted by Malan View Post
Unless I'm reading that haste/ppm thread wrong, the conclusion seems to be that the PTR behavior is the same as what we have on live.
I just did a test on this and it looks to me like you're correct. With 30% haste from flurry, mongoose seems to have the same proc rate on PTR as it does on live.

Results of the test are in the the PPM/haste thread if anyone's curious.

Offline
Old 09/06/07, 5:54 AM   #2199
Hedin
Ask me about my add-on.
 
Hedin's Avatar
 
Worgen Death Knight
 
Черный Шрам (EU)
I have a little question about SS...
I know that:
if MH SS is dodged/parryed then there is no OH hit
MH and OH can crit separately

What I don' know - can OH be dodged/parryed if MH hits? (I don't remember)
In this case using Attack Table we will get a much bigger chance for OH not to hit than for MH...

Hedd - My maxDPS in one icon addon.

Russia Offline
Old 09/06/07, 6:11 AM   #2200
Disquette
1) press clutch and break 2) turn key
 
Disquette's Avatar
 
Human Rogue
 
Sargeras
Originally Posted by Hedin View Post
I have a little question about SS...
I know that:
if MH SS is dodged/parryed then there is no OH hit
MH and OH can crit separately

What I don' know - can OH be dodged/parryed if MH hits? (I don't remember)
In this case using Attack Table we will get a much bigger chance for OH not to hit than for MH...
Yes, I believe this has been understood for a while to be actual stormstrike behavior.

United States Offline
 

Go Back   Elitist Jerks » Class Mechanics

Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
[Shaman] Elemental v. Enhance - balance QQ thread mek Class Mechanics 1 04/09/07 5:33 PM
Pally blessing priority for an enhance shaman? discofiend Public Discussion 31 10/05/06 11:47 PM