This may get complicated fast, so I’m going to leave out lots of details. If you didn’t already know, Steady Shot has become the most important shot in a hunter’s rotation. No cooldown and a good mana/damage ratio are balanced against interruptible casting time, and the possibility of delaying your next auto shot if done too late.
Here’s the problem: the flat 1.5 casting time means that in a 1:1 Steady to Auto Shot rotation, slower weapons lose. On the flip side, it is also possible to have a weapon that is so fast that with lag and reaction time, the casting time of Steady will always delay Auto Shot and reduce DPS.
Quick example of inferior slow weapon (1800 RAP):
Yes, a weapon with 4 more paper doll DPS loses 11 DPS because of a 0.2 second slower speed. (These calculations originally done by Cheeky here.)
Example of clipped Auto Shots (0.3 second reaction time / lag, 0.3 Auto Shot cast time, and Serpent’s Swiftness):
Consortium Blaster, 12 scope, 37 DPS ammo, and 1800 RAP Damage:
Auto Shot: 159 + 12 + 64.38 + 223.71 = 459.09 damage
Steady Shot: 150 + 185.5 + 360 = 695.5 damage
Ideal Cast time = (Weapon Speed / Quiver haste) / SS haste = (2.4 / 1.15) / 1.2 = (2.09) /1.2 = 1.74 seconds.
Reality Cast time = Steady reaction and lag + (Steady cast / SS haste) + Auto Shot cast = 0.3 + (1.5 / 1.2) + 0.3 = 0.6 + 1.25 = 1.85 seconds.
Ideal DPS = (459.09 + 695.5) / 1.74 = 1154.59 / 1.74 = 663.56 DPS
Real DPS = (459.09 + 695.5) / 1.85 = 1154.59 / 1.85 = 624.1 DPS
Net loss of 40 DPS. (Don’t worry about the DPS being higher. The first examples didn’t utilize haste at all.)
So there’s the problem, what’s the solution. Well there’s many, but not all are acceptable. First, we could make Auto Shot damage huge or Steady Shot damage tiny so that Steady doesn’t matter as much, but then any clipping would also be huge. So since we can’t really mess with damage, that leaves cast time.
We could reduce the cast time or eliminate it, but even if we make it zero, there’s still the newly discovered auto shot cast time, so we would clip if Steady could just be spammed as the GCD allowed. Not only that but I really like the finesse that Steady requires the payer to utilize, instead of the frantic button mashing of most classes.
So the better solution is to have the cast time scale with weapon speed somehow. But if cast time scales and damage doesn’t we haven’t really done anything, so damage must scale too. This means that DPS would have to remain constant. But if DPS scales and mana doesn’t then those that fire more slowly will use less mana, so mana must scale too.
There are a few ways to do this as well. First, there could be several versions of Steady at the same rank such as
O: 110 mana 1.5 sec cast for X damage.
1: 132 mana 1.8 sec cast for 1.2X damage
2: 154 mana 2.1 sec cast for 1.4X damage
3: 176 mana 2.4 sec cast for 1.6X damage
4: 198 mana 2.7 sec cast for 1.8X damage
This allows the user to select the best time based on their own personal reaction times and lag. The downside is that you can still run in to strange upgrades if the rank of Steady doesn’t change.
A second idea is just to have damage, mana, and cast time automatically scale with weapon speed. If it scales too closely, lag will clip, and if it scales to slowly, steady becomes worthless. My best guess is that 60% sounds right. A 2.0 second weapon would have a 1.2 second Steady cast which has plenty of room for error. A 3.0 second weapon would have 1.8 cast time, which is even enough to think about a second shot.
Now all of these solutions, do have their problems as well, but those are more intuitive. For instance, if I know I have slower reflexes and a bad connection, I know that if I use a fast weapon I will be more likely to clip. That’s a problem, but it’s one that makes sense to the player. The problem of getting a weapon with 4 more DPS but losing over all 4 DPS (sunfire vs. wolfslayer) is something that most players will _not_ think about.