Closed ChthonVII closed 2 years ago
The slowing factor does not use startframe values. I tested Sorceress's Werebear Normal Attack wielding a Mighty Scepter (1HS so startframe=2) (0 WSM) with 0 additional EIAS. When startframe=2, EIAS=0 gives 15 FPA. When startframe=0, EIAS=0 gives 16 FPA. I tested for 16 FPA at 0 EIAS and that is what I found. Here's the testing, though it doesn't really have any more information that what I've listed here: https://docs.google.com/spreadsheets/d/1eo3VeIrSG3PvE0woLRqtG3tofafjaXEaBDsCU0uETvU/edit#gid=2053047957
Sorc's 1HS has a whopping 20 framesperdirection. In order to match the observed data, I had to remove the startframe term from the nerf factor, but then use the human startframe value instead of the wereform's startframe value when doing the animation loop.
In my opinion, this is buggy in two respects:
There remains an open question here, but it's only relevant to modders: Does the startframe come from the human's A1 animation or from its current animation? (I.e., if a mod made it possible to use Hunger as a bear sorc, where would the startframe value be borrowed from?) That's probably not worth the time and effort to answer, so I plan on closing this issue unless you want to look into it.
I wasn't aware there were startframe values for wereforms. They weren't used in the original calculator (d2.lc/IAS). It may be erroneous to test only one breakpoint assuming it uses the human's startframe when a wereform's startframe might be used (even though the human's values are used everywhere else).
I'm not interested in testing things that don't apply to the live (or soon-to-be live) game. I'll let someone else handle that if they want to.
Everything has a startframe value, it's just usually zero. All the wereform stuff has startframe=0.
If the 0 EIAS speed on a 1HS is 16 fpa, then I only see one way to get there: The human framesperdirection is 20. So not using the human startframe in any way should give 19 fpa at 0 EIAS (with a possible off-by-one). If we pro-rate the human startframe value, either by subtracting it from human_framesperdirection when computing the slow factor or by setting the initial counter value to (human_startframe 256 slow factor), then we'd get 17 fpa at 0 EIAS (the same as a human sorc). In order to get to 16 fpa, we need to use the human startframe value without pro-rating it -- set the initial counter value to (human_startframe * 256).
Presently, the calculator is pro-rating the zon and sorc startframe values into the slowing factor. This is simply a guess because it seems like the sensible way to do it. Of course, there's no guarantee Blizzard does what's sensible. So, some empirical data points would be much appreciated.