I’ve been looking for a while at a way to calculate the actual amount of reduced autoattacks due to swing resets. Despite mastery spawns and Expel Harm being fixed with 6.2, Surging Mists still resets the swing timer. I’m pretty sure this is by design, for a couple reasons. First, it wasn’t changed when the other two were. Second, I checked on a Shaman, and with 5-stack Maelstrom Weapon (the same as 5-stack Vital Mists, basically), Lightning Bolt and Chain Lightning don’t reset the swing timer, but Healing Surge does. In the combat log (link), too, you can see that it shows up differently: the heal has a “begins casting” line, which is probably what resets the swing timer.
Anyway, with only Surging Mists left to reset the swing timer, I thought it wouldn’t be too hard to see how many swings you actually lose over the long term. I started by figuring out how many autoattack swings I’d take per Surging Mists cast, and then thought it’d be straightforward to figure out a formula from there. (As a side note, this isn’t perfect, because Surging Mists casts aren’t perfectly regular due to your t30, power strikes, etc, but it’s not a huge deal I think). However, I got stuck there. I wasn’t sure how to look at it from a probability standpoint, specifically because a reset doesn’t just remove a swing, it instead delays the next and all subsequent swings.
I returned to the tried-and-true method I used for Tiger Strikes, writing a sim. You can see the code here (link). For this sim, you input your swing timer and resets per second, then it spits out how many swings you’d have if there was no reset, and how many swings actually go off. Then you can divide the second by the first to find the impact of the lost swings. I was expecting to find that the longer your swing timer is, the worse resetting is for you, since you can push the next attack back further. For shorter casts, each reset would add less time, so it wouldn’t be as bad. That’s not what I found.
Looking at my stats first, I ran it with a 1.508 swing timer and .1126 resets per second. I got 84.9% of swings going off. Then I checked what would happen if I instead had a 2 second swing timer. This time, the numbers came out to 90.1% of swings. I had to go to bed at that point, but today I ran some more tests, because two data points is too few. I today checked a 1s swing timer and .1126 resets per second, and to my surprise, that was also 90%. Now, I’m just really confused and not sure where to go from here. Any thoughts?