Jump to content


Photo

Team Robot Simulator and Gear Comparison Tool


  • Please log in to reply
71 replies to this topic

#41 Cochice

Cochice

    dorf

  • Members
  • 213 posts

Posted 01 March 2010 - 09:50 PM

Your default Enhance rotation has SS, SS_0 (SS w/ no SS debuff) and ES_SS (ES with SS debuffs up). It's been shown that having both SS_0 and ES_SS is redundant in a rotation, since if there are no debuffs up, the logic will hit the SS_0 before it hits the ES_SS. On a related note, there seems to be no ES in the rotation (ie when no debuff up).

This is obviously fixable in the custom rotation, however, the redundancy should be removed from the default.

#42 Rouncer

Rouncer

    Deeper Shade of Blue

  • Allied Members
  • 4132 posts

Posted 01 March 2010 - 09:56 PM

EnhSim version 1.9.7.1

................................................................................


MH:
miss                278930         8.77%
dodge               0              0.00%
glancing            762807         23.98%
hit                 224470         7.06%
crit                1914438        60.19%
average ap          8861.20
clip                0              0.00%

MH Windfury:
procs/hits          14.62%
procs/swings        13.47%
miss                0              0.00%
dodge               0              0.00%
hit                 353369         36.81%
crit                606649         63.19%
average ap          8860.43

MH Storsmtrike:
miss                0              0.00%
dodge               0              0.00%
hit                 141061         36.87%
crit                241530         63.13%
average ap          8855.59

OH:
miss                279074         8.77%
dodge               0              0.00%
glancing            764502         24.04%
hit                 225325         7.08%
crit                1911749        60.11%
average ap          8867.47
clip                0              0.00%

OH Flametongue:
miss                0              0.00%
hit                 2099688        56.17%
crit                1638625        43.83%
average sp          3470.17

OH Stormstrike:
miss                0              0.00%
dodge               0              0.00%
hit                 141234         36.92%
crit                241357         63.08%
average ap          8870.56

Earth Shock:
miss                0              0.00%
hit                 161109         56.12%
crit                125946         43.88%
average sp          3469.65

Flame Shock:
miss                0              0.00%
hit                 105988         56.27%
crit                82374          43.73%
average sp          3459.67
dots hit            1037622        100.00%
dots crit           0              0.00%
average dot sp      3465.69

Lava Lash:
miss                0              0.00%
dodge               0              0.00%
hit                 167123         36.80%
crit                287023         63.20%
average ap          8861.95

Lightning Bolt:
miss                0              0.00%
hit                 234587         56.22%
crit                182665         43.78%
average sp          3478.08

Fire Nova:
miss                0              0.00%
hit                 191948         56.11%
crit                150148         43.89%
average sp          3472.27

Lightning Shield:
miss                0              0.00%
hit                 820815         100.00%
crit                0              0.00%
average sp          3473.68

Spirit Wolves:
miss                0              0.00%
dodge               0              0.00%
glancing            458348         24.02%
hit                 1229932        64.47%
crit                219596         11.51%
average ap          8910.35

Searing Totem:
miss                0              0.00%
hit                 535904         56.17%
crit                418163         43.83%
average sp          3470.95

Fire Elemental Melee:
miss                21967          8.01%
dodge               11572          4.22%
glancing            65984          24.06%
hit                 166596         60.73%
crit                8185           2.98%

Fire Elemental Fire Shield:
miss                0              0.00%
hit                 311639         91.99%
crit                27150          8.01%

Fire Elemental Fire Nova:
miss                0              0.00%
hit                 126140         91.97%
crit                11012          8.03%

Fire Elemental Fire Blast:
miss                0              0.00%
hit                 130135         92.03%
crit                11270          7.97%

Fire Elemental stats:
average ap          8859.55
average sp          3405.43
MPS                 65.54
MPCooldown          7864.94
Out of mana time    0.00%
MRPCooldown         2825.22
MRPS                23.65

Fire Elemental      MRPS without overregen
mana regen          3.31      14.07%
judgement of wisdom 20.23     85.93%


Maelstrom Weapon:
PPM                 57.61
efficiency          60.36%

flurry uptime                  95.02%
unleashed rage uptime          100.00%
elemental devastation uptime   84.00%
mh enchant uptime              53.93%
oh enchant uptime              49.78%
stormstrike debuff uptime      78.81%
flame shock uptime             88.55%
lightning shield uptime        98.78%
searing totem uptime           55.86%
fire elemental uptime          28.57%

trinket2 uptime                27.95%
racial uptime                  14.29%
totem uptime                   100.00%
gloves enchant uptime          20.00%
ring proc uptime               16.57%


Set bonus uptimes:
Frost Witch's Battlegear 2 piece        25.00%

                    MRPS without overregen
mana regen          0.00      0.00%
mp5                 13.01     8.47%
replenishment       32.02     20.83%
unrelenting storm   0.00      0.00%
judgement of wisdom 79.71     51.86%
shamanistic rage    28.97     18.84%
mana potion         0.00      0.00%
misc                0.00      0.00%
stormstrike         0.00      0.00%

                    DPS                 PPM       MPS
white               3575.47   34.92%    106.02
windfury            1250.42   12.21%    8.00
flametongue         934.45    9.13%     62.31
stormstrike         485.35    4.74%     6.38      35.13     22.71%
lava lash           419.51    4.1%      7.57      14.90     9.63%
searing totem       349.71    3.42%     0.71      3.44      2.23%
earth shock         395.75    3.86%     4.78      17.14     11.08%
flame shock         290.46    2.84%     3.14      10.81     6.99%
lightning bolt      846.49    8.27%     6.95      41.57     26.88%
fire nova           345.52    3.37%     5.70      25.87     16.73%
lightning shield    471.41    4.6%      1.76      0.00      0.00%
spirit wolves       433.45    4.23%     0.43      3.54      2.29%
fire elemental      442.08    4.32%     0.14      2.26      1.46%
  melee             243.90    55.17%    4.57
  fire shield       15.81     3.58%     5.65
  fire nova         117.05    26.48%    2.29
  fire blast        65.32     14.77%    2.36

DPS                 10240.06
MPS                 154.67
MP2min              18560.29
MRPS                463.69
Out of mana time    0.00%

elapsed simulation time: 1000.00h
elapsed real time: 12.12s
simulation speed: 296931x

~55% uptime over a 7 minute encounter under normal priorities.

Up the Fire Elemental to top priority and Searing Totem to directly under it.

EnhSim version 1.9.7.1

................................................................................


MH:
miss                279627         8.79%
dodge               0              0.00%
glancing            761983         23.96%
hit                 225036         7.08%
crit                1913970        60.18%
average ap          8861.11
clip                0              0.00%

MH Windfury:
procs/hits          14.63%
procs/swings        13.48%
miss                0              0.00%
dodge               0              0.00%
hit                 354094         36.88%
crit                605916         63.12%
average ap          8860.13

MH Storsmtrike:
miss                0              0.00%
dodge               0              0.00%
hit                 140255         36.97%
crit                239138         63.03%
average ap          8850.25

OH:
miss                279317         8.78%
dodge               0              0.00%
glancing            764070         24.02%
hit                 224763         7.07%
crit                1912472        60.13%
average ap          8866.12
clip                0              0.00%

OH Flametongue:
miss                0              0.00%
hit                 2098019        56.18%
crit                1636449        43.82%
average sp          3470.36

OH Stormstrike:
miss                0              0.00%
dodge               0              0.00%
hit                 139662         36.81%
crit                239731         63.19%
average ap          8865.43

Earth Shock:
miss                0              0.00%
hit                 160623         56.09%
crit                125743         43.91%
average sp          3469.04

Flame Shock:
miss                0              0.00%
hit                 105807         56.00%
crit                83134          44.00%
average sp          3460.72
dots hit            1039878        100.00%
dots crit           0              0.00%
average dot sp      3466.43

Lava Lash:
miss                0              0.00%
dodge               0              0.00%
hit                 167361         36.88%
crit                286409         63.12%
average ap          8862.54

Lightning Bolt:
miss                0              0.00%
hit                 234604         56.09%
crit                183686         43.91%
average sp          3478.61

Fire Nova:
miss                0              0.00%
hit                 190070         56.15%
crit                148422         43.85%
average sp          3473.78

Lightning Shield:
miss                0              0.00%
hit                 816068         100.00%
crit                0              0.00%
average sp          3474.73

Spirit Wolves:
miss                0              0.00%
dodge               0              0.00%
glancing            456056         23.97%
hit                 1227994        64.53%
crit                218786         11.50%
average ap          8909.31

Searing Totem:
miss                0              0.00%
hit                 554923         56.22%
crit                432115         43.78%
average sp          3470.08

Fire Elemental Melee:
miss                21924          7.99%
dodge               11669          4.25%
glancing            65847          24.01%
hit                 166692         60.77%
crit                8172           2.98%

Fire Elemental Fire Shield:
miss                0              0.00%
hit                 312170         91.98%
crit                27204          8.02%

Fire Elemental Fire Nova:
miss                0              0.00%
hit                 126248         92.05%
crit                10904          7.95%

Fire Elemental Fire Blast:
miss                0              0.00%
hit                 130106         92.04%
crit                11246          7.96%

Fire Elemental stats:
average ap          8798.21
average sp          3437.35
MPS                 65.53
MPCooldown          7863.23
Out of mana time    0.00%
MRPCooldown         2823.79
MRPS                23.64

Fire Elemental      MRPS without overregen
mana regen          3.31      14.09%
judgement of wisdom 20.22     85.91%


Maelstrom Weapon:
PPM                 57.60
efficiency          60.51%

flurry uptime                  95.02%
unleashed rage uptime          100.00%
elemental devastation uptime   83.92%
mh enchant uptime              54.04%
oh enchant uptime              49.64%
stormstrike debuff uptime      78.34%
flame shock uptime             88.86%
lightning shield uptime        98.45%
searing totem uptime           69.41%
fire elemental uptime          28.57%

trinket2 uptime                28.04%
racial uptime                  14.29%
totem uptime                   99.98%
gloves enchant uptime          20.00%
ring proc uptime               16.57%


Set bonus uptimes:
Frost Witch's Battlegear 2 piece        25.00%

                    MRPS without overregen
mana regen          0.00      0.00%
mp5                 13.03     8.49%
replenishment       32.11     20.91%
unrelenting storm   0.00      0.00%
judgement of wisdom 79.92     52.06%
shamanistic rage    28.46     18.54%
mana potion         0.00      0.00%
misc                0.00      0.00%
stormstrike         0.00      0.00%

                    DPS                 PPM       MPS
white               3571.81   34.86%    106.02
windfury            1248.88   12.19%    8.00
flametongue         933.51    9.11%     62.24
stormstrike         480.29    4.69%     6.32      34.84     22.53%
lava lash           420.32    4.1%      7.56      14.89     9.63%
searing totem       363.22    3.54%     0.84      4.05      2.62%
earth shock         395.16    3.86%     4.77      17.09     11.05%
flame shock         290.97    2.84%     3.15      10.94     7.07%
lightning bolt      854.28    8.34%     6.97      41.64     26.93%
fire nova           344.05    3.36%     5.64      25.41     16.43%
lightning shield    468.83    4.58%     1.75      0.00      0.00%
spirit wolves       432.30    4.22%     0.43      3.54      2.29%
fire elemental      443.73    4.33%     0.14      2.26      1.46%
  melee             244.56    55.12%    4.57
  fire shield       15.89     3.58%     5.66
  fire nova         117.70    26.53%    2.29
  fire blast        65.57     14.78%    2.36

DPS                 10247.35
MPS                 154.66
MP2min              18558.75
MRPS                464.90
Out of mana time    0.00%

elapsed simulation time: 1000.00h
elapsed real time: 12.08s
simulation speed: 298087x

97.98% uptime between the two totems combined. So where was that lost minute of uptime? Could this be because the sim isn't set up to clip Searing totem and waits till it has expired before refreshing it according to it's place in the priority list?

Searing Totem is catching up to Magma but that's just due to the incredible amounts of Attack Power present in current raiding gear. Average of almost 3500 spellpower per refresh and I still have a lot of upgrades left out of ICC. Combine that with the GCD savings and Searing Totem starts to be an acceptable alternative in full BiS gear.

All that said, stop badmouthing EnhSim unless you have proof that it is doing something wrong.

#43 pintor

pintor

    Von Kaiser

  • Members
  • 61 posts

Posted 01 March 2010 - 10:04 PM

Yes, that seems to be the issue. Just having searing totem down near where magma is in the priority results in lost uptime because it can be several seconds before it gets refreshed, adding up to quite a bit of lost time.

#44 Yellowsix

Yellowsix

    Piston Honda

  • Members
  • 166 posts

Posted 01 March 2010 - 10:31 PM

I'm not bad-mouthing EnhSim, I'm simply reporting what I see. This is a pretty minor thing anyway -- every program has its bugs, Team Robot included, EnhSim included. My ultimate goal is to simply model Searing Totem correctly, and comparing to another simulator is a great way to confirm my results.

Here's your proof:

I put in the following priority in EnhSim:
FE
ST

That's it: just use fire elemental first, then searing totem. I did a 5-minute fight:

EnhSim version 1.9.7.1

................................................................................

...
[omitted for brevity]
...

searing totem uptime           47.15%
fire elemental uptime          40.00%

...
[omitted for brevity]
...

If only those two abilities are being used, searing totem should be near 60%, with the only reduction coming from the player's reaction time after the fire elemental despawns. Somewhere, 38 seconds of searing totem up-time are disappearing. This indicates either a bug in the up-time report calculation, or a flaw in the priority logic.

#45 Rouncer

Rouncer

    Deeper Shade of Blue

  • Allied Members
  • 4132 posts

Posted 01 March 2010 - 11:45 PM

Your sim doesn't seem to have racials implemented except for the proc ones, is there any way to manually add them in? My profile is currently showing as uncapped because it's missing the 5 expertise from Weapon Spec.

Also any time-table on the implementation of Reaction Time?
Black Magic is missing as a weapon enchant option.

DPS is also showing as much higher then expected but I think that may have a lot to do with the missing reaction time.

#46 Yellowsix

Yellowsix

    Piston Honda

  • Members
  • 166 posts

Posted 02 March 2010 - 12:26 AM

Most racials have been implemented, but it appears that there is a bug where the expertise bonus is not being applied for fist weapons for orcs. If you equip an axe, you will see that it is working. The issue is easy to fix though: in the armory, it returns "Fist Weapon" as the type, but I was checking for just "Fist". When I get a chance, I'll post an update.

I'll add black magic to the list of available enchants for enhancement.


That reaction time constant would have little to no effect on the current enhancement simulator. There is only one exceedingly rare case that it would change... it's so rare that I doubt it actually happens. I can discuss the details if you desire, but for now, suffice it to say that the decision logic already handles the majority of the cases that I believe you are referring to. For example:

If maelstrom weapon's 5th stack procs, a player will not be able to respond to this until at least 200ms or so after it happens. Or in other words, a player will not know that 5 stacks of MW exist until 200ms after it actually happened.

This is already taken into account by default, and there is currently no way to switch it off.


When I run the same priority in both EnhSim and Team Robot for my test characters, EnhSim usually comes out just slightly higher DPS than Team Robot. I'll have to try it with your character and do a comparison. When you say "much higher", how much higher? I personally do not consider a 1-3% difference in DPS between two independently-developed simulators to be "high". If it gets beyond that... ok, maybe we should start to think about it.

#47 Rouncer

Rouncer

    Deeper Shade of Blue

  • Allied Members
  • 4132 posts

Posted 02 March 2010 - 01:45 AM

That 5th stack timing thing is the thing that I am interested in as both EnhSim and your sim are showing significantly higher 4T10 uptime then is currently being seen in game. If that is already being accounted for in the logic then your model is as bugged regarding the bonus as EnhSim.

EnhSim is also bugged right now and showing about 200-250dps higher then it should even not taking the 4T10 bonus issue into account. That is due to the armor discrepancy you noted earlier. If you want to see where EnhSim should be so you can get a decent gauge on how your model is working then remove the minor armor debuff and set the major armor debuff to 11.8% in EnhSim and the values you will get will translate properly to those seen in game.

If you are setting that reaction time at 200ms by default then you might want to check some of the information available on Human Reaction times to visual stimuli. Average should be at least 215ms and latency should be added to that before you could know that the 5th stack actually occurred. I like the model of letting people determine their own reaction times but if you are moving away from that model for simplicities sake it's understandable.

I tested my own earlier and averaged 220ms, guess age is already starting to catch up with me.

#48 Yellowsix

Yellowsix

    Piston Honda

  • Members
  • 166 posts

Posted 02 March 2010 - 03:16 AM

Rouncer, don't go bad-mouthing Team Robot and EnhSim without proof that they are doing something wrong.

Firstly, I'm not exactly sure what you are talking about concerning 4T10 up-time. I feel like you are confusing concepts, or referring to some special mechanic around that set bonus that I am not aware of. If there is something special about it, please let me know. I just implemented it "straight up": the simulator does what the tooltip says.

I ran a quick simulation using Team Robot, and the proc rate on 4T10 looks correct: 15%. The simulation cast 44 instant lightning bolts, and got 6 4T10 procs. That is correct.

So, what you seem to really be talking about, is that you think the simulator is casting too many instant lightning bolts with the 5-stack of maelstrom weapon. Further, you are claiming that the reason for this is due to human reaction time and latency.

Could you provide me data that quantifies this discrepancy between the game and the simulators, represented as a comparison of number of lightning bolts cast?

I have no doubt that human reaction time would have some kind of impact on the number of LBs you can get, but I don't have a good feel for how much of an impact it would make. It seems highly variable depending on luck and timing. Sometimes you'll get lucky, and that 5th MW stack will come with plenty of time to respond. Sometimes it'll seem to proc at just the wrong time, delaying your LBs slightly.

The simulator currently gets about 44 LBs in 5 minutes. That averages 1 every 6.8 seconds. Let's say that your latency and your reaction time really suck, so you are unable to respond to a 5-stack of MW until 1 second after it shows up. So now you're talking an LB every 7.8 seconds, let's round up to 8 to be conservative. So over a 5-minute fight, you're losing about 8 LBs, for 55k damage in really good gear, and you'll get one less 4T10 proc. And this is a worst-case estimate. I think that your concept of "significant" may be a little too generous, if worst-case napkin math produces only a 1.5% DPS difference and one less 4T10 proc.

There is another aspect to simulating a player besides reaction time that is far more important: independently modeling when a player decides what action to do, from when he actually does it. A real player will decide his next action before he actually presses the button. This is far more significant than reaction time, and is being modeled by Team Robot, and also by SimulationCraft. I am not certain about EnhSim. This feature prevents many of the "improbable" MW5->LB transitions.

Poke through a Team Robot combat log: look at when LB is cast, and the 5th MW proc before it. A quick glance shows that many of the MW5->LB transitions are indeed humanly possible. I'm sure a few that are too short will slip in there, but it is far from the norm.

#49 Lumb

Lumb

    Von Kaiser

  • Members
  • 88 posts

Posted 02 March 2010 - 01:36 PM

I noticed that if you remove LoTP from the buffs list, the feral spirits never crit. They do actually have a base crit chance. There seems to be a further discrepency between the crit chance of the wolves reported by Enhsim and Mr.Robot, I'm seeing 3% from Mr. Robot and 11% from Enhsim.

#50 Mman

Mman

    Piston Honda

  • Members
  • 198 posts

Posted 02 March 2010 - 02:03 PM

Firstly, I'm not exactly sure what you are talking about concerning 4T10 up-time.


There seems to be a difference in real world observed uptime and the simulated uptime (in both TRS and enhsim). This is either through some unnacounted for human reaction or a difference in the actual mechanic and what we see in on the tooltip.

#51 Rouncer

Rouncer

    Deeper Shade of Blue

  • Allied Members
  • 4132 posts

Posted 02 March 2010 - 02:09 PM

Feral Spirits should get 5% from LoTP, 3% from Heart of the Crusader and then they get SoE as well. Turning off all raid buffs shows the wolves with 1.35%. Adding SoE brings them to 3.45% and then add the 8% from raid buffs and you get the 11.45% shown.

11.45% correlates pretty well with the 12.16% crit rate I saw from them on my last Festergut kill so seems EnhSim is working as intended.

Shock and Awe should turn on your pet panel for the wolves when they are summoned so you can easily confirm their base stats and their stats when buffed with SoE. They can also be buffed by things like scrolls/battleshout/blessings but besides battleshout it generally isn't worth the effort.

There seems to be a difference in real world observed uptime and the simulated uptime (in both TRS and enhsim). This is either through some unnacounted for human reaction or a difference in the actual mechanic and what we see in on the tooltip.



Which is exactly what I was trying to talk about. Thing is that the 4T10 mechanic conforms exactly to it's tooltip, I've confirmed that with dummy testing so that leaves Human Reaction time and Maelstrom Weapon efficiency to explain the discrepancy. There is a large variance in Maelstrom Power uptime even at similar efficiency levels but that seems more likely to be due to the small sample size inherent in looking through parses.

Still efficiency is something easily measured from the outputs of EnhSim or TeamRobot and by varying latency settings and moving MW5-LBs position in the priority list I can get the uptimes to correlate better. EnhSim only lets me adjust latency as a solid block though so it effects everything which was why I was hoping TeamRobot's additional settings options would let me fine-tune that more for my own individual performance.

The 200ms spacing after the 5th charge is reached but before it enters the priority list is a great start but it also needs to be applied to more reactive things and should have latency added to it as well since the report has to reach your computer from the server before it can be responded to as well. The additional reactive things would be LS and Flame Shock and then anything with a conditional such as SS_0 or LL_QE but I don't think those types of conditional priorities are incorporated into TRS yet anyway (and we should probably stop using them in EnhSim until we get the latency/reaction time mechanics nailed down better as well).

Flame Shock is also an interesting one since it would only be reactive if you are actively trying to prevent clipping DoT ticks. If you use a set ratio of FS to ES then it is just a cooldown ability (Shocks) without any reactive component. I'd love to be able to simulate differences on that level to see if it's just better to stick to a set ratio or stay with trying to be reactive in when to Flame Shock.

Mind filling us in a bit more on how exactly TRS simulates the client/server interaction and how it relates to ability use from the priority list? Also what your plans are regarding Reaction Time and if it will be able to simulate things to the level that I could use it to define whether a set ratio is better for Shocks or if I should stick to reactive Flame Shocking.

#52 Lumb

Lumb

    Von Kaiser

  • Members
  • 88 posts

Posted 02 March 2010 - 02:51 PM

Also it looks like there may be something wrong with the way Windfury is being modeled.

5 Minute Fight
Festergut HM kill: 94 Windfury Attacks
World of Logs - Real Time Raid Analysis

Mr Robot says: 38 Windfury Attacks
http://i50.tinypic.com/i3fp7k.png

3 Minute 50 Fight
Festergut normal kill: 62 Windfury Attacks
World of Logs - Real Time Raid Analysis

Mr Robot says: 30 Windfury Attacks
http://i45.tinypic.com/2llksgx.png

Simulations were done with the same gear I have on in my armory, aside from the fact that I switched black bruise heroic out for black bruise normal since that is what I was wearing for both kills.

#53 revulva

revulva

    Piston Honda

  • Members
  • 105 posts

Posted 02 March 2010 - 02:58 PM

Hmm, we'll have to look into this. On first glance, I am thinking that maybe our reporting is treating both WF attacks as "one" count? The % of total damage seems to be in a plausible range. It looks like maybe it is being reported as one hit that is twice as hard, instead of two hits...

#54 Rouncer

Rouncer

    Deeper Shade of Blue

  • Allied Members
  • 4132 posts

Posted 02 March 2010 - 03:10 PM

Hmm, we'll have to look into this. On first glance, I am thinking that maybe our reporting is treating both WF attacks as "one" count? The % of total damage seems to be in a plausible range. It looks like maybe it is being reported as one hit that is twice as hard, instead of two hits...


If that is the case you are going to have to rework it out to separate hits since each is individually capable of critting and proccing additional effects like Maelstrom Weapon, Static Shock, Berserking and trinkets like Tiny Abom.

#55 revulva

revulva

    Piston Honda

  • Members
  • 105 posts

Posted 02 March 2010 - 03:21 PM

Yes, I was careful to say it is a reporting error. We have modeled each WF hit, as far as I am aware.

#56 Rouncer

Rouncer

    Deeper Shade of Blue

  • Allied Members
  • 4132 posts

Posted 02 March 2010 - 04:09 PM

Yes, I was careful to say it is a reporting error. We have modeled each WF hit, as far as I am aware.


Might want to check on that too. I just simulated out the gear I used for my last Festergut (with the exception of swapping my Seducer offhand to another Slicer because of the Orc racial missing fist weapons). It shows 42 Lightning Orb attacks and then another 5 from the 2T9 bonus (47 total) but I had 57 from my parse. If you add up all the melee attacks (doubling up for Windfury) there would be 556 attacks which should equal 50 procs (2T9). Without doubling up it would be 524 melee attacks which would be 47 procs.

#57 Yellowsix

Yellowsix

    Piston Honda

  • Members
  • 166 posts

Posted 02 March 2010 - 07:55 PM

It looks like the two windfury hits are getting lumped together as a single event... I'll fix that.

I'll make sure to adjust the feral spirit crit rate. If I'm reading this correctly, feral spirits probably do not suffer from the 4.8% melee crit suppression against bosses that normal players do?


Regarding latency and reaction time:

Wouldn't flame shock never be a "reactive" ability? You can use some kind of mod to track the DoT duration, and anticipate when it will end, thus making it not a purely reactive choice? I haven't played enhancement myself, so it's possible that I'm missing something.

Right now, latency is handled in a pretty simple way: if you say "do flameshock" at time 2.0, and your latency is 200ms, it actually executes flameshock at time 2.2. I think that is the only use of latency right now.

With regards to latency... I basically assume that the people who coded the game are a lot smarter than me. For instance, if I have a 200ms ping, and I press a button at time 2.0... I highly doubt that the game does this:

2.0: client executes command
2.2: server receives command and executes it
2.4: client receives response that command was executed, and shows its effects

That would be some pretty crappy network code. I don't even pretend to know the details, but I would hope that the game does some kind of more sophisticated synchronization that can lessen the effects of latency, and deal with the fact that multiple clients with variable latency are interacting in the same environment.


The other piece in the Team Robot code is asynchronous decision logic. It goes something like this:

2.00: player casts stormstrike, triggers a GCD
2.20: stormstrike actually executes (after 200ms latency)
3.25: 250ms before the GCD is up, use the current conditions of the simulator to decide the next action
3.50: execute the next action

That 250ms is hard-coded right now... it's basically the player's "anticipation" time -- how far in advance does the player need to decide in order to time up his next key press with the end of the previous GCD? For casters, a similar mechanic is used: you can chain-cast with the server spell queue, which necessitates deciding which action to use prior to the previous cast completing. 250ms is definitely closer to robot-efficiency, so I might make that a configurable parameter.

Using this current mechanic, let's examine the MW5 scenario:

If the 5th stack of MW is applied at or before time 3.25, the simulator will recognize it, and thus choose LB as the action to perform at time 3.50. Note that as long as your human reaction time is less than 250ms, you don't need a separate reaction time constant to get a decent simulation: you see MW5 proc, make the decision, then you have 250ms to press the button in response to that stimulus. The timing is definitely tight right now, but I think that it's a pretty realistic model overall.


The not-yet-implemented reaction time constant only comes into play in the following scenario: if at time 3.25 the simulator can't find any action to perform, it will wait for the next "significant" action. If the next significant action is the 5th proc of MW, and it happens at time 3.60, the player could not realistically respond to that until time 3.60+[human reaction time].

Note that if the next significant action were one of the following, human reaction time is not relevant: a cooldown finishing, a DoT running its duration and expiring. A human can anticipate these events, and if your timing is impeccable, completely negate reaction time. It's very hard to do sometimes... but it's humanly possible.


One aspect of latency that I haven't tested or modeled, is if there is a latency-related delay between when an auto attack occurs, and procs from that attack happen. e.g. if I auto-attack at time 2.0, does windfury happen at time 2.0 or 2.2? I don't know the answer to this, so I don't model a delay right now.

#58 Rouncer

Rouncer

    Deeper Shade of Blue

  • Allied Members
  • 4132 posts

Posted 02 March 2010 - 08:24 PM

Windfury would occur at 2.2 based on the testing I've done.

#59 Levva

Levva

    In Awe of Shocks

  • Members
  • 792 posts

Posted 02 March 2010 - 10:27 PM

I'm not bad-mouthing EnhSim, I'm simply reporting what I see. This is a pretty minor thing anyway -- every program has its bugs, Team Robot included, EnhSim included. My ultimate goal is to simply model Searing Totem correctly, and comparing to another simulator is a great way to confirm my results.

Here's your proof:

I put in the following priority in EnhSim:
FE
ST

That's it: just use fire elemental first, then searing totem. I did a 5-minute fight:

If only those two abilities are being used, searing totem should be near 60%, with the only reduction coming from the player's reaction time after the fire elemental despawns. Somewhere, 38 seconds of searing totem up-time are disappearing. This indicates either a bug in the up-time report calculation, or a flaw in the priority logic.


Can you confirm from the snipped data that the EnhSim DAMAGE is right but the UPTIME is wrong? ie: is it a problem that its showing the wrong damage or is it that the uptime calc is displaying wrongly?


Re: network lag issues.

It is my understanding that the game implements a Spell Queue for a SINGLE spell in the buffer. This queue is active 250ms before the GCD finishes. ie: if within 250ms of the GCD expiring you press a key that spell goes into the buffer and is executed on the server the instant the GCD finishes. Now of course it takes time for the data about the key press to leave the client and reach the server and if your network lag is greater than 250 its going to arrive after the GCD has finished thus giving you "idle" time. This is why addons like Quartz show red lag bars so you have an idea of when to send the next spell.

The better players learn to press the button up to 0.25 sec before the GCD finishes and thus get off their next ability with zero idle time. If you press the key BEFORE the 0.25 sec before the GCD finishes (eg: 0.3 sec before) then you get the "That ability is not ready yet" error.

The idea behind this 250 ms spell "queue" is to compensate for the effects of network lag. Note that you cannot queue up more than one ability.
Author of ShockAndAwe Enhancement Shaman max dps addon
Please use the EnhSim by Ziff & others to simulate what gear, priorities etc are the best dps. You can use ShockAndAwe to export your paperdoll stats to EnhSim.

#60 Yellowsix

Yellowsix

    Piston Honda

  • Members
  • 166 posts

Posted 02 March 2010 - 11:13 PM

I did some extensive in-game tests around lag and spell queuing when I was writing the moonkin module. My tests showed the following:

For spells with a cast time, the server-side spell queue eliminates any effects of latency. As long as you send your next spell close to the end of your current cast (people say there's about a 300ms window), the server will perfectly chain your casts with no gaps between them.

For instant abilities that are GCD limited (I use Earth Shock, wait for GCD to end, then use Stormstrike), I didn't notice any queuing mechanism. As far as I could tell, the game would not accept input until the GCD was complete. I tried my hardest to precisely time up my next ability to hit the edges of such a queue... and I simply wasn't seeing it, or it is smaller than 250ms.

That said, a player with good timing can nearly perfectly time up GCD-limited abilities. I was able to chain-cast moonfire for 2 minutes without accumulating any significant delay: over 2 minutes, I cast the theoretical maximum number of spells that was possible at my level of haste.

It can be pretty tough to get timing that tight though... you have to really focus on it. The Team Robot simulator will let you put a little lag after a GCD before the next command is input, which defaults to 50ms. Whether there is a queue around the GCD or not shouldn't matter too much -- the current code wouldn't need to be changed, since it already does "anticipated" decision logic.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users