So I've taken a stab at the new macro and how to model it.
During my investigations I discovered something no one had been talking about, but which is part of why the macro works like it does. Auto Shot's cast speed is not 0.5s in practice. I analyzed almost 100 times when chained Steady Shots would clip an Auto and measured the time between the last Steady Shot and the Auto Shot. I understand there is jitter in the combat logs, so I'm hoping the sample size is enough to draw some conclusions. Here are the results:
1 - 70 of the 96 test cases showed a difference under 0.5s. 26 showed over.
2 - Over
all test cases there was an average of 0.44823s between Auto and the previous Steady.
3 - This works out to an 11.55% haste effect over the tooltip 0.5s cast time.
Using that data, and what we've seen regarding client-only GCD, I've modified the Shot Rotation matrix as follows:
1 - Latency is no longer added to Steady Shot cast time.
2 - If the shot previous to a GCD-using shot was an Auto Shot, I readjust the GCD start to be the greater of previous GCD or previous Auto Shot cast time + latency.
3 - Auto Shot's cast time is adjusted by the 11.55% haste factor I've found above.
With those changes to both the regular Shot Rotation and Quick Shots I also added 2 new "Steady Spam" buttons. These check Auto vs. Steady cooldowns for each shot and pick whatever is next.
Doing all that, using a 0.15s latency and my gear, led to the following DPS totals (Hunter only):
[Serpent Spine Longbow] - 827 DPS, 17:33 Auto:Steady in regular, 22:28 in QS
[Sunfury Bow of the Phoenix] - 863 DPS, 20:30, 23:27
[Steelhawk Crossbow] - 840 DPS, 20:30, 24:26
[Wolfslayer Sniper Rifle] - 847 DPS, 20:30, 25:25
[Barrel-Blade Longrifle] - 848 DPS, 22:28, 25:25
If this holds true (see caveats below) then the sweet spot of weapon speed seems to be about 2.9s. This also seems to be what the anecdotal evidence is saying. We may still be weapon speed dependant, just on a different, much more narrow speed now.
Caveats:
0 - This was a modified version 40 of the spreadsheet, it was only to look at timings.
1 - We need much more testing under different constant haste effects to determine exactly how Auto Shot's cast time is modified.
2 - With jitter in latency, it will be almost impossible to ever model this in a way that can be replicated consistently in game. I saw variances in Auto Shot cast time from 0.17 - 0.8s.
3 -
This whole mechanic is so fucking stupid I'm seriously thinking about giving up on modeling Hunters. I can't for the life of me figure out how any of this is "working as intended" and I really wish Blizzard would at least give us some indication of what they'd like our mechanics to be.
4 - I could be completetly wrong about all of this, but it's the only model I've been able to come up with that fits the facts I've seen. The logs with 4-5 Steady chains still worry me, and it may be related to a small window for clobbering available right before an Auto Shot is cast (maybe the time between the 0.5s base cast time and the hasted time?)
If we get some concensus on whether or not this model is sound I can release it. I hope to provide a spreadsheet of the Auto Shot data I collected later tonight.