Working Principle of Attack Spped
Some useful definitions:
BAT: Base Attack Time
IAS: Increased Attack Speed
BAS: Base Attack Speed
DPS: Damage per Second
1 point of Agility gives +1% Increased Attack Speed, or IAS.
100% IAS = 1 IAS
( 1 + IAS ) / BAT = attacks per second
BAT of my hero:
BAT is 1.7 for all heroes except:
Vengeful Spirit: 1.77
Soul Keeper: 1.5
Soul Keeper (Metamorphosis): 1.6
Troll Warlord (Berserker Rage): 1.55
Lone Druid (True Form): 1.6
Lycanthrope (Shapeshift): 1.4
Alchemist (Chemical Rage Level 1): 1.45
Alchemist (Chemical Rage Level 2): 1.35
Alchemist (Chemical Rage Level 3): 1.25
How does IAS stack?
Increased attack speed stacks additively, not in compound amounts. Each point of Agility gives +1% IAS. So a hero with 40 agility (+40% IAS), a hyperstone (+55% IAS), and power treads (+30% IAS) has a total of 125% IAS.
What are the upper and lower limits to attack speed?
The upper limit is 500%, while the lower limit is 20%.
Technically, heroes can actually have negative attack speed; it ranges from -80% to 400% IAS. The range of 20% to 500% is due to the additional 100% that is added to IAS in the formula.
How exactly do I work out the attack speed of my hero?
A hero's total IAS is calculated by adding the hero's Agility to the sum of IAS given by any IAS items. Remember, 1 point of Agility adds 1% IAS. So, a Troll Warlord at level 1 (with 21 agility) equiped with a Hyperstone would have:
21% (Agility) + 55% (Hyperstone) = 76% IAS = 0.76 IAS
Jah'rakal has a BAT of 1.7 and thus, a BAS of:
1/1.7 = .5882352941 hits/second.
Therefore, Jah'rakal's current attack speed is:
(1 + 0.76)/1.7 == 1.035 hits/sec
And his current DPS is (assuming the Troll Warlord has an average of 50 damage):
50*1.035= 51.75 DPS
DPS is the number that really matters, and is what this calculation is for.