Elitist Jerks
Register
Blogs
Forums


Go Back   Elitist Jerks » Class Mechanics » Druids

Closed Thread
 
LinkBack Thread Tools
Old 03/21/09, 2:32 PM   #76
dedmonwakeen
Bald Bull
 
dedmonwakeen
Undead Priest
 
No WoW Account
Originally Posted by Wulfmanjack View Post
Why are these gaps so long?
If you add log=1 to the config or cmd-line execution, then it will perform just one iteration and write out a combat log. This is very helpful to see exactly what happens.....

Obviously, this is most helpful when doing single-player sims......


Offline
Old 03/21/09, 3:24 PM   #77
Allev
King Hippo
 
Allev's Avatar
 
Tauren Druid
 
Mal'Ganis
There's no "intelligent" behavior to space out Rips versus SRs. This is actually fine for the FB rotation, because you'll be running SR/Rip/FB in a fairly strict rotation, and the Rip downtime isn't a big deal. When you don't FB, though, the things that you change-- like refreshing SR early, or energy pooling at 3CP to run a 3SR/5Rip cycle-- simply aren't done in the model.

I haven't worked on a non-FB cycle yet, but I know more uptime should be possible (since it is in-game). Maybe that'll be my afternoon theorycraft...

Offline
Old 03/21/09, 3:35 PM   #78
dedmonwakeen
Bald Bull
 
dedmonwakeen
Undead Priest
 
No WoW Account
Originally Posted by Allev View Post
There's no "intelligent" behavior to space out Rips versus SRs. This is actually fine for the FB rotation, because you'll be running SR/Rip/FB in a fairly strict rotation, and the Rip downtime isn't a big deal. When you don't FB, though, the things that you change-- like refreshing SR early, or energy pooling at 3CP to run a 3SR/5Rip cycle-- simply aren't done in the model.

I haven't worked on a non-FB cycle yet, but I know more uptime should be possible (since it is in-game). Maybe that'll be my afternoon theorycraft...
If you can describe decision-making process, then we can model it. If there are conditionals missing, please let us know. We want to make sure you guys have the tools to construct the AI exactly how you want....


Offline
Old 03/21/09, 11:37 PM   #79
nightcrowler
Don Flamenco
 
nightcrowler's Avatar
 
Night Elf Druid
 
Runetotem (EU)
You can easly test 2-roll system in action. symply remove all your hit/expertise, go to the target dummy, hit for 10 min and see your crit % drop considerably.

You can easly use 2-roll mechnic with only 1 random number, from my sim code:

double ymiss=miss+dodge+parry;
	double ycrit=(1-ymiss)*crit;
	double yhit=(1-ymiss)-ycrit;

Offline
Old 03/22/09, 12:13 AM   #80
dedmonwakeen
Bald Bull
 
dedmonwakeen
Undead Priest
 
No WoW Account
Originally Posted by nightcrowler View Post
You can easly test 2-roll system in action. symply remove all your hit/expertise, go to the target dummy, hit for 10 min and see your crit % drop considerably.
So can I assume that ALL Rogue/Druid specials use 2-roll mechanics?


Offline
Old 03/22/09, 3:18 AM   #81
nightcrowler
Don Flamenco
 
nightcrowler's Avatar
 
Night Elf Druid
 
Runetotem (EU)
All specials use 2-roll system (druid/rogue/warrior/dk/paladins..)

For example is good to use maul/heroic strike (apart from extra damage/threat) because it uses 2-roll system instead of 1-roll so it doesn't glance.

Offline
Old 03/22/09, 12:51 PM   #82
dedmonwakeen
Bald Bull
 
dedmonwakeen
Undead Priest
 
No WoW Account
Originally Posted by nightcrowler View Post
All specials use 2-roll system (druid/rogue/warrior/dk/paladins..)

For example is good to use maul/heroic strike (apart from extra damage/threat) because it uses 2-roll system instead of 1-roll so it doesn't glance.
Thanks, Nightcrowler. I'll be making some architectural changes shortly.......


Offline
Old 03/23/09, 4:45 PM   #83
Allev
King Hippo
 
Allev's Avatar
 
Tauren Druid
 
Mal'Ganis
Notes after playing around last night.

Only damaging attacks which cost energy/rage/mana consume clearcasts. A side effect of this is that Savage Roar does not consume a clearcast-- it costs its normal energy even after an OoC proc and does not consume the clearcast. Gift of the Wild doesn't consume a clearcast, either. (I don't know if faerie fire consumes a clearcast, for the moonkins out there, but I'm sure they can give you an answer).

This shouldn't have an effect on overall DPS, since the always-shred-on-clearcast rule (which I'd like to test to see if it's true) means that SR can never be clearcasted.

BTW-- I tried a bunch of optimizations for mangle kitties yesterday, and I haven't found a method of significantly increasing DPS (more than ~20) while not compromising Mangle uptime. I still need to try where-in-the-cycle optimizations (i.e. energy pooling when SR is next attack, burn when Rip/FB is next attack). However, I'm pretty sure that it won't be worth the risk of less Rip uptime to energy hoard on shred.

One thing that could be useful is an indication of number of shreds which have procced the increased Rip time on the shred glyph.

Another would be saying "savage_roar>=rip" in the context of knowing which finisher you'd want to apply next. If rip expires first, I want to try to rip instead of refreshing Roar early.

Finally-- is there proper terminology for when a buff is down? Say I want to mangle when savage roar is down and I'm at 0 CP (because it's preferable to raking with SR down). So I tried both of these:

actions+=/mangle_cat, savage_roar<=0
actions+=/mangle_cat, savage_roar=0

Neither work as hoped-- is there some syntax I'm missing?

Offline
Old 04/02/09, 3:03 PM   #84
dedmonwakeen
Bald Bull
 
dedmonwakeen
Undead Priest
 
No WoW Account
Originally Posted by Allev View Post
One thing that could be useful is an indication of number of shreds which have procced the increased Rip time on the shred glyph.

Another would be saying "savage_roar>=rip" in the context of knowing which finisher you'd want to apply next. If rip expires first, I want to try to rip instead of refreshing Roar early.

Finally-- is there proper terminology for when a buff is down? Say I want to mangle when savage roar is down and I'm at 0 CP (because it's preferable to raking with SR down). So I tried both of these:

actions+=/mangle_cat, savage_roar<=0
actions+=/mangle_cat, savage_roar=0
Sorry for the delay in answering........ Not sure how I missed this.

The number of rip "extensions" could easily be added as a conditional. I can look into that.

The "savage_roar>=rip" option would be much harder to do generically, but we might be able to put custom conditionals on savage_roar and rip to accomplish the same thing.

Regarding terminology for when a buff is down: Unfortunately, using a value of zero deactivates the parameter, but I believe that "savage_roar<=-1" would work. I'm going to change the code to initialize the parameters to -1, so that zero can be used as an actual value.

EDIT: Forgot to mention the reason I came to this thread: SimulationCraft now uses a 2-roll system for all special attacks.


Offline
Old 04/02/09, 5:37 PM   #85
Allev
King Hippo
 
Allev's Avatar
 
Tauren Druid
 
Mal'Ganis
2-roll, excellent. That definitely places hit rating in the right ballpark of where it should be.

But, as far as scale factors go, expertise is out of whack.

For all intents and purposes for ferals, dodges and misses are the same thing. Hit rating and expertise rating both reduce the non-hits to an equal degree. So their rating values should be equal in regards to scale factors.

For the PTR, did you reverse the expertise buff which we momentarily had when they buffed Armor Penetration/haste? The expertise got reverted on the PTR soon afterwards.

But that isn't the whole difference, because the non-PTR results page doesn't show hit = expertise, either.

I'll try to make time to go code-diving later tonight to see if I can track where the difference is happening.

Offline
Old 04/02/09, 6:39 PM   #86
dedmonwakeen
Bald Bull
 
dedmonwakeen
Undead Priest
 
No WoW Account
Originally Posted by Allev View Post
2-roll, excellent. That definitely places hit rating in the right ballpark of where it should be.

But, as far as scale factors go, expertise is out of whack.

For all intents and purposes for ferals, dodges and misses are the same thing. Hit rating and expertise rating both reduce the non-hits to an equal degree. So their rating values should be equal in regards to scale factors.

For the PTR, did you reverse the expertise buff which we momentarily had when they buffed Armor Penetration/haste? The expertise got reverted on the PTR soon afterwards.

But that isn't the whole difference, because the non-PTR results page doesn't show hit = expertise, either.

I'll try to make time to go code-diving later tonight to see if I can track where the difference is happening.
Thanks. This is the broad "pattern analysis" I need from experts to truly make sure our models are solid.

Regarding the expertise rating buff/reverse..... I'm pretty sure it got "undone", but I'll make sure.


Offline
Old 04/08/09, 12:41 AM   #87
Allev
King Hippo
 
Allev's Avatar
 
Tauren Druid
 
Mal'Ganis
2-roll isn't expressing itself properly.

What I mean is, less hit rating/expertise rating should mean fewer crits. When I remove all hit rating and all expertise rating from gear, the number of crits remain the same. The expected crit should be around .88 x the original number of crits. So instead of seeing 44.4% or so, I should see 39.2% or so without any hit/expertise gear.

Edit:
I set out to find the difference between losing 4% miss and 4% dodge, but I only have the outputs which can point to places to look at.

After 100,000 iterations, I feel like I got differences to a consistent level. From the report:

Player=Druid_T8_00_55_16_Half_Hit  DPS=6728.2 (Error=+/-1.2 Range=+/-812)  DPR=534.1  RPS=12.6/12.4  (energy)
  Core Stats:  strength=91  agility=1138  stamina=1117  intellect=115  spirit=135  health=18644  mana=3466
  Spell Stats:  power=0  hit=5.0%  crit=13.8%  penetration=0  haste=9.1%  mp5=0
  Attack Stats:  power=6581  hit=4.0%  crit=25.9%  expertise=6.4  penetration=19.2  haste=11.8%
  Actions:
    ferocious_bite        Count=  6.5|43.3sec  DPE=13868| 4%  DPET=12060  DPR= 219.0  Miss=4.0%  Hit=7537  Crit=17137|23186|69.2%  Dodge=0.1%
    melee                 Count=426.0| 0.7sec  DPE= 1354|29%  DPET= 1946  DPR=   0.0  Miss=4.0%  Hit= 924  Crit= 2104| 2787|44.3%  Glance= 695|24.0%  Dodge=0.1%
    rake                  Count= 31.8| 9.5sec  DPE= 8009|13%  DPET= 6964  DPR= 241.8  Miss=4.0%  Hit= 750  Crit= 1701| 2100|44.3%  Dodge=0.1%  TickCount=90  Tick=2437
    rip                   Count= 10.4|28.2sec  DPE=46744|24%  DPET=40645  DPR=1675.1  Miss=4.0%  Dodge=0.1%  TickCount=127  Tick=2352  CritTick=5333|5467|49.2%
    shred                 Count= 84.4| 3.5sec  DPE= 7000|30%  DPET= 6086  DPR= 280.3  Miss=4.0%  Hit=4587  Crit=10427|12824|44.5%  Dodge=0.1%

Player=Druid_T8_00_55_16_No_Expertise  DPS=6661.2 (Error=+/-1.4 Range=+/-980)  DPR=529.6  RPS=12.6/12.4  (energy)
  Core Stats:  strength=91  agility=1138  stamina=1117  intellect=115  spirit=135  health=18644  mana=3466
  Spell Stats:  power=0  hit=9.9%  crit=13.8%  penetration=0  haste=9.1%  mp5=0
  Attack Stats:  power=6581  hit=7.9%  crit=25.9%  expertise=2.5  penetration=19.2  haste=11.8%
  Actions:
    ferocious_bite        Count=  6.4|43.9sec  DPE=13850| 4%  DPET=12043  DPR= 219.4  Miss=0.1%  Hit=7519  Crit=17104|23186|69.2%  Dodge=4.0%
    melee                 Count=426.0| 0.7sec  DPE= 1354|29%  DPET= 1946  DPR=   0.0  Miss=0.1%  Hit= 924  Crit= 2104| 2787|44.3%  Glance= 695|24.0%  Dodge=4.0%
    rake                  Count= 30.7| 9.8sec  DPE= 8008|12%  DPET= 6964  DPR= 241.9  Miss=0.1%  Hit= 749  Crit= 1701| 2100|44.3%  Dodge=4.0%  TickCount=87  Tick=2437
    rip                   Count= 10.0|29.2sec  DPE=46742|24%  DPET=40646  DPR=1678.9  Miss=0.1%  Dodge=4.0%  TickCount=123  Tick=2352  CritTick=5333|5467|49.3%
    shred                 Count= 85.3| 3.5sec  DPE= 6993|30%  DPET= 6081  DPR= 277.1  Miss=0.1%  Hit=4584  Crit=10421|12824|44.5%  Dodge=4.0%
Observations:
1) It's clear that 129 rating (whether hit or expertise) is the source of 4% of hits not landing. So it's not anything to do with rating conversion.
2) The differences between 4% hit and 4% expertise are very simple. DPEs are more or less the same, but the difference is that when you lose expertise, you lose 1 shred, 1 rake (all 3 ticks), and 4 ticks of rip (possibly from the CP lost from 2 attacks?) Add those attacks up, and you end up with ~80 DPS over 300 seconds. That's exactly the damage gap we're trying to cross.

First suspect, energy regen. So we'd see somewhere in the neighborhood of 2 procs of OoC missing somewhere, or lots of refunded energy differences. The energy regen, however, doesn't really bear that out:

    Druid_T8_00_55_16_Half_Hit:
        energy_refund=103.8
        energy_regen=2953.9
        omen_of_clarity=1161.0
        primal_precision=16.2
        tigers_fury=598.1

    Druid_T8_00_55_16_No_Expertise:
        energy_refund=104.0
        energy_regen=2953.6
        omen_of_clarity=1154.5
        primal_precision=15.7
        tigers_fury=593.6
So 8 energy from OoC, 80% return from 35ish energy (so 29 energy), and about 6 from Tiger's Fury. OK, so that might explain half the difference-- 43 total energy, when we're missing a rake and 40% of a rip... Weird that it's an issue across multiple sources, though.

No conclusions yet on that, but here's another issue, looking through a debug run:
221.40   Druid_T8_00_55_16_No_Hit gains 1 (1) energy from energy_regen (40)
221.42   Druid_T8_00_55_16_No_Hit schedules execute for ferocious_bite
221.42   Druid_T8_00_55_16_No_Hit performs ferocious_bite
221.42   Fluffy Pillow avoids ferocious_bite (dodge)
221.42   Druid_T8_00_55_16_No_Hit gains 28 (28) energy from primal_precision (28)
Ferocious Bite only consumes "extra" energy when it lands. Otherwise, you lose the energy of the base cost of the attack. So...
Without Primal Precision:
FB at 40 energy hits, consumes 40 energy, 0 left.
FB at 40 energy avoided, consumes 35 energy, 5 left.
With Primal Precision:
FB at 40 energy hits, consumes 40 energy, 0 left.
FB at 40 energy avoided, consumes 35*.2=7 energy, 33 left.

Edit2:

result_is_miss() in sc_action.cpp should include dodges as well as misses/resists! I think this is the real problem.

So what this does, later on, is dodged DoTs end up sharing a cooldown with landed DoTs. When this happens, rakes can't land for that 9 second period (even though it's not doing damage). Given 30 rakes in 300 seconds, and 4% chance to miss, losing approximately 1 rake is ballpark correct. We also lose Rip uptime for the same reasons-- with 80-85% uptime and a tick every 2 seconds, that's 120-135 ticks, of which we lost 4-- ballpark correct to 4% (I'd like to see 5, but...). Losing that rake means we have more energy we have fewer OoC procs, which explains the small energy loss in OoC, and since I'm using the energy pooling method I put up a few posts ago, Tiger's Fury is eligible less of the time.

And then, expertise falls back to normal (hopefully) in scaling rankings because it's not negating the this phantom bleed scenario, final damage with hit/expertise capped gear is still in the right place (shouldn't change much), and maybe I can finally start working on improving the cycle. (The FB nerf means the thresholds on it should change, to start.)

Last edited by Allev : 04/08/09 at 4:14 AM.

Offline
Old 04/08/09, 8:39 AM   #88
dedmonwakeen
Bald Bull
 
dedmonwakeen
Undead Priest
 
No WoW Account
r2072
result_is_miss() now triggers on DODGE
ferocious_bite no longer consumes energy on a miss

Of course......... I should have read EJ before putting out a new release this morning........ Bah.

I'll put out another release shortly.


Offline
Old 04/08/09, 9:53 AM   #89
Starfox
King Hippo
 
Starfox's Avatar
 
Tauren Druid
 
Destromath (EU)
Originally Posted by Allev View Post
2-roll isn't expressing itself properly.

What I mean is, less hit rating/expertise rating should mean fewer crits. When I remove all hit rating and all expertise rating from gear, the number of crits remain the same. The expected crit should be around .88 x the original number of crits. So instead of seeing 44.4% or so, I should see 39.2% or so without any hit/expertise gear.
Nate implemented it, but the lines were commented out, was fixed in:
r2039 - simulationcraft - Google Code
New release is already out.
Player=Druid_T8_00_55_16  DPS=7031.8 (Error=+/-5.9 Range=+/-803)  DPR=572.8  RPS=12.3/12.0  (energy)
  Core Stats:  strength=91  agility=1138  stamina=1117  intellect=115  spirit=135  health=14590  mana=1445
  Spell Stats:  power=0  hit=9.9%  crit=13.8%  penetration=0  haste=9.1%  mp5=0
  Attack Stats:  power=6581  hit=7.9%  crit=32.4%  expertise=6.4  penetration=19.2  haste=11.8%
  Defense Stats:  armor=2276
  Actions:
    ferocious_bite        Count=  8.7|33.4sec  DPE=14786| 6%  DPET=12853  DPR= 351.6  Miss=0.1%  Hit=7491  Crit=17112|23186|75.9%  Dodge=0.1%
    melee                 Count=422.4| 0.7sec  DPE= 1467|30%  DPET= 2109  DPR=   0.0  Miss=0.1%  Hit= 924  Crit= 2105| 2787|50.8%  Glance= 695|24.0%  Dodge=0.1%
    rake                  Count= 26.8|11.2sec  DPE= 8394|11%  DPET= 7300  DPR= 256.2  Miss=0.1%  Hit= 757  Crit= 1720| 2100|50.6%  Dodge=0.1%  TickCount=79  Tick=2434
    rip                   Count=  9.6|30.6sec  DPE=50743|24%  DPET=44120  DPR=1841.3  Miss=0.1%  Dodge=0.1%  TickCount=121  Tick=2352  CritTick=5333|5467|55.7%
    shred                 Count= 80.4| 3.7sec  DPE= 7555|29%  DPET= 6569  DPR= 288.8  Miss=0.1%  Hit=4586  Crit=10429|12824|50.9%  Dodge=0.1%

Player=Druid_T8_00_55_16_NoHitExp  DPS=6524.9 (Error=+/-6.3 Range=+/-776)  DPR=483.7  RPS=13.5/13.2  (energy)
  Core Stats:  strength=91  agility=1138  stamina=1117  intellect=115  spirit=135  health=14590  mana=1445
  Spell Stats:  power=0  hit=0.0%  crit=13.8%  penetration=0  haste=9.1%  mp5=0
  Attack Stats:  power=6581  hit=0.0%  crit=32.4%  expertise=2.5  penetration=19.2  haste=11.8%
  Defense Stats:  armor=2276
  Actions:
    ferocious_bite        Count=  8.1|34.9sec  DPE=13009| 5%  DPET=11311  DPR= 303.0  Miss=8.0%  Hit=7526  Crit=17087|23186|67.0%  Dodge=4.2%
    melee                 Count=422.4| 0.7sec  DPE= 1354|30%  DPET= 1946  DPR=   0.0  Miss=8.0%  Hit= 920  Crit= 2100| 2787|50.7%  Glance= 694|24.0%  Dodge=4.0%
    rake                  Count= 29.3|10.2sec  DPE= 7388|11%  DPET= 6424  DPR= 224.9  Miss=8.0%  Hit= 755  Crit= 1713| 2100|44.5%  Dodge=4.0%  TickCount=76  Tick=2432
    rip                   Count= 10.4|28.0sec  DPE=44810|24%  DPET=38965  DPR=1629.2  Miss=7.8%  Dodge=3.9%  TickCount=116  Tick=2351  CritTick=5330|5467|55.7%
    shred                 Count= 84.4| 3.5sec  DPE= 6646|29%  DPET= 5779  DPR= 236.5  Miss=8.0%  Hit=4575  Crit=10399|12824|44.9%  Dodge=4.0%

Hello.
Light the fuse.
For all my homies.
Do not run, we are your friends.
SimulationCraft Druid Guy

Austria Offline
Old 04/08/09, 9:57 AM   #90
dedmonwakeen
Bald Bull
 
dedmonwakeen
Undead Priest
 
No WoW Account
Please delete. (Starfox already answered the issue.)


Offline
Closed Thread

Go Back   Elitist Jerks » Class Mechanics » Druids

Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
SimulationCraft Model Development dedmonwakeen Public Discussion 616 02/22/13 10:01 AM
SimulationCraft for Hunters dedmonwakeen Hunters 214 07/03/12 9:44 AM
SimulationCraft for Rogues dedmonwakeen Rogues 268 10/01/10 11:39 PM
From TheoryCraft to SimulationCraft dedmonwakeen Class Mechanics 18 06/09/07 5:03 PM