simulationcraft / simc

Simulationcraft engine/GUI
GNU General Public License v3.0
1.42k stars 704 forks source link

Unholy death knight's gargoyle strikes. #960

Closed navv1234 closed 9 years ago

navv1234 commented 9 years ago

Originally reported on Google Code with ID 961

On the live servers including PTR unholy death knight's gargoyle strikes has a 1.5sec
gcd.So she has maximum 20 strikes by summon.
But simcraft http://www.simulationcraft.org/430/Death_Knight_T13H.html said that a
her gcd can be less than 1.5sec (Execute Time per Execution=1.1947) and gargoyle strikes
more than 20 times.

Reported by Klyaks13 on 2011-11-09 08:22:03

navv1234 commented 9 years ago
This log proves otherwise:

http://www.worldoflogs.com/reports/rt-l4ppcv2s6snbfmj7/details/69/?s=1022&e=1194

Also every spell in-game benefits from a GCD reduction, so this spell would be the
exception to the rule.

Reported by swbusche on 2011-11-12 01:57:05

navv1234 commented 9 years ago
It's hard to examine that log since there are two unholy DKs and you've linked the combined
damage of two gargoyles.

Here's one:
http://goo.gl/qSIUm

17 attacks per summon, 2 summons. Given the 4-5 seconds of idle-time of a gargoyle
during summon at the beginning, that's about a 1.5 second GCD.

But then this log:
http://goo.gl/wLQUf

34 casts on the first gargoyle. There are a couple in the top 10s parses that show
34. Some kind of double-up pet bug I think.

Here's another:
http://goo.gl/UsQnt

17 again. I can't find any (non bugged) evidence of a GCD anywhere near 1.2. 1.5 seems
supported given unholy DKs are all stacking haste.

Seems possibly related to the recent fix not allowing pet energy regen benefit from
the DKs haste?

Reported by wowharly on 2011-11-13 15:36:50

navv1234 commented 9 years ago
The log I linked is only from one gargoyle. You can see that the other gargoyle from
the other DK had a different number of casts.

Browsing the log you can see that they're not being double recorded.

Reported by swbusche on 2011-11-13 17:32:13

navv1234 commented 9 years ago
Links to make life easy:

Gargoyle 1 (31): http://www.worldoflogs.com/reports/rt-l4ppcv2s6snbfmj7/details/69/?s=1022&e=1194
Gargoyle 2 (16): http://www.worldoflogs.com/reports/rt-l4ppcv2s6snbfmj7/details/74/?s=1022&e=1194

Log of Gargoyle Strikes, from both:

19:33:51.054] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:52.640] Ebon Gargoyle Gargoyle Strike Shannox 15089
[19:33:52.697] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:54.298] Ebon Gargoyle Gargoyle Strike Shannox 15057
[19:33:54.298] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:55.543] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:55.784] Ebon Gargoyle Gargoyle Strike Shannox *30101*
[19:33:55.935] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:56.349] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:57.074] Ebon Gargoyle Gargoyle Strike Shannox 12840
[19:33:57.212] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:57.578] Ebon Gargoyle Gargoyle Strike Shannox 15046
[19:33:57.578] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:57.962] Ebon Gargoyle Gargoyle Strike Shannox 12809
[19:33:58.014] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:58.775] Ebon Gargoyle Gargoyle Strike Shannox 12808
[19:33:58.775] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:59.196] Ebon Gargoyle begins to cast Gargoyle Strike
[19:33:59.196] Ebon Gargoyle Gargoyle Strike Shannox 15056
[19:33:59.482] Ebon Gargoyle Gargoyle Strike Shannox 12840
[19:33:59.614] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:00.441] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:00.441] Ebon Gargoyle Gargoyle Strike Shannox 12851
[19:34:00.488] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:00.868] Ebon Gargoyle Gargoyle Strike Shannox 15088
[19:34:01.289] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:01.507] Ebon Gargoyle Gargoyle Strike Shannox 12819
[19:34:01.651] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:02.032] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:02.079] Ebon Gargoyle Gargoyle Strike Shannox 15088
[19:34:02.219] Ebon Gargoyle Gargoyle Strike Shannox 12861
[19:34:02.875] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:02.999] Ebon Gargoyle Gargoyle Strike Shannox 12851
[19:34:03.319] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:03.319] Ebon Gargoyle Gargoyle Strike Shannox 15046
[19:34:03.670] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:03.966] Ebon Gargoyle Gargoyle Strike Shannox 12850
[19:34:04.500] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:04.796] Ebon Gargoyle Gargoyle Strike Shannox 12809
[19:34:04.908] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:04.908] Ebon Gargoyle Gargoyle Strike Shannox 15067
[19:34:05.339] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:05.533] Ebon Gargoyle Gargoyle Strike Shannox 12830
[19:34:06.139] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:06.340] Ebon Gargoyle Gargoyle Strike Shannox 12861
[19:34:06.532] Ebon Gargoyle Gargoyle Strike Shannox 15067
[19:34:06.532] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:06.946] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:07.180] Ebon Gargoyle Gargoyle Strike Shannox 12819
[19:34:07.742] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:08.072] Ebon Gargoyle Gargoyle Strike Shannox 12861
[19:34:08.147] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:08.381] Ebon Gargoyle Gargoyle Strike Shannox 15046
[19:34:08.584] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:08.812] Ebon Gargoyle Gargoyle Strike Shannox 12861
[19:34:09.404] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:09.750] Ebon Gargoyle Gargoyle Strike Shannox 12809
[19:34:09.835] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:09.835] Ebon Gargoyle Gargoyle Strike Shannox 15078
[19:34:10.199] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:10.612] Ebon Gargoyle Gargoyle Strike Shannox 12819
[19:34:11.013] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:11.337] Ebon Gargoyle Gargoyle Strike Shannox 12851
[19:34:11.445] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:11.555] Ebon Gargoyle Gargoyle Strike Shannox 15088
[19:34:11.830] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:12.111] Ebon Gargoyle Gargoyle Strike Shannox 12819
[19:34:12.668] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:12.906] Ebon Gargoyle Gargoyle Strike Shannox 12808
[19:34:13.047] Ebon Gargoyle Gargoyle Strike Shannox 15057
[19:34:13.047] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:13.462] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:13.740] Ebon Gargoyle Gargoyle Strike Shannox 12830
[19:34:14.296] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:14.528] Ebon Gargoyle Gargoyle Strike Shannox 12861
[19:34:14.691] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:14.691] Ebon Gargoyle Gargoyle Strike Shannox 15047
[19:34:15.086] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:15.312] Ebon Gargoyle Gargoyle Strike Shannox 12809
[19:34:15.905] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:16.166] Ebon Gargoyle Gargoyle Strike Shannox 12809
[19:34:16.291] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:16.291] Ebon Gargoyle Gargoyle Strike Shannox 15047
[19:34:16.701] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:17.012] Ebon Gargoyle Gargoyle Strike Shannox 12851
[19:34:17.564] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:17.944] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:17.944] Ebon Gargoyle Gargoyle Strike Shannox 12862
[19:34:18.342] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:18.342] Ebon Gargoyle Gargoyle Strike Shannox 15036
[19:34:19.005] Ebon Gargoyle Gargoyle Strike Shannox 12861
[19:34:19.166] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:19.771] Ebon Gargoyle Gargoyle Strike Shannox 12840
[19:34:19.972] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:20.549] Ebon Gargoyle Gargoyle Strike Shannox 12851
[19:34:20.784] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:21.533] Ebon Gargoyle Gargoyle Strike Shannox 12840
[19:34:21.626] Ebon Gargoyle begins to cast Gargoyle Strike
[19:34:22.439] Ebon Gargoyle Gargoyle Strike Shannox 12808
[19:34:23.225] Ebon Gargoyle Gargoyle Strike Shannox *25553*

Reported by swbusche on 2011-11-13 17:37:47

navv1234 commented 9 years ago
So you think it's believable that one would hit 16 times while another would hit 31?

That would suggest there are haste break points, or some bug that gives double hits.
It certainly puts the GCD of the cast below 1 second, given a gargoyle is only up for
30 seconds, 3 seconds is lost from summoning time, add to that the initial cast time.
 At a 1s GCD the max could only be 25.

Those logs make no sense at all for how the gargoyle is currently implemented in the
sim.

Look at the two logs I linked. That is the common theme for gargoyles. Either 17/16
hits, or over 30. If what you say is correct, there would be 20s, 21s, 22s, 23s, 24s,
... 29s, 30s.  Clearly your supposition isn't supported by the logs we have linked
so far.

Reported by wowharly on 2011-11-13 17:56:52

navv1234 commented 9 years ago
can't  be explained with lust. Both DKs in your log summoned their gargoyle over 10
seconds after time warp was cast:

http://goo.gl/1u66z

Reported by wowharly on 2011-11-13 18:02:35

navv1234 commented 9 years ago
Testing in my tank gear with 21.6% haste (601 rating +4.69) i get 11 hits with gargoyle.
Testing in my unholy gear with only 32.87% haste (1843 rating +14.39) and using Unholy
Frenzy I get 17 hits. Without Unholy Frenzy I get 16 hits.

So yes obviously haste reduces the cast time. But I can't see how 31 hits is remotely
possible. IF they aren't bugged parses, how do you explain 31-34 hits in 25.5 seconds?

Reported by wowharly on 2011-11-13 18:34:49

navv1234 commented 9 years ago
on another test I get the same with or without unholy frenzy. Also odd that I'm getting
17 hits with just 1800 haste and no blood lust, and parsers with lust are getting the
same number. It's looking that it inherits your base haste but not temporary buffs.

Reported by wowharly on 2011-11-13 18:44:45

navv1234 commented 9 years ago
ok reforged to full haste. 2500. blood lust and unholy frenzy.  still, 16 hits.

Went back to tank gear where it did 11 hits. Tested with bloodlust and unholy frenzy.
16 hits then.

It is looking to me that the GCD on the Gargoyle Strike cast has a lower cap of 1.5
seconds.

Reported by wowharly on 2011-11-13 18:56:20

navv1234 commented 9 years ago
Fix it how you find appropriate.

Reported by swbusche on 2011-11-13 19:47:02

navv1234 commented 9 years ago
--- sc_death_knight.cpp (revision 10293)
+++ sc_death_knight.cpp (working copy)
@@ -1063,6 +1063,8 @@
       // FIX ME!
       // Resist (can be partial)? Scaling?
       may_crit    = true;
+      trigger_gcd = true;
+      min_gcd = 1.5;

makes the average cast time 1.6562, where I would expect 1.5. It does however end up
with 17 hits so I think this accurately reflects all parses except those showing 30+
hits which I can't explain. It also puts unholy ever so marginally below frost, though
give how much I've tweaked the frost profile to squeeze out a few extra hundred dps
i'm sure it could be bumped up again.

Reported by wowharly on 2011-11-13 19:56:36

navv1234 commented 9 years ago
https://docs.google.com/spreadsheet/ccc?key=0At5SKPB4YWKEdElIdWVMTUlEUGt6UjQzSzZvT25tTWc

spreadsheet with the data from the tests I mentioned

Reported by wowharly on 2011-11-13 20:15:29

navv1234 commented 9 years ago
fixed in r10296 

Reported by wowharly on 2011-11-13 20:17:56