Ability Range: Difference between revisions

Rephrase calculation section to call it 'diminishing returns' instead of 'multiplicative' and to clarify the way it diminishes
Calculation: rewrite to use https://www.mediawiki.org/wiki/Extension:Variables
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
[[File:Ability Range.png|thumb|[[Shiv]]'s Slice and Dice ability, improved by bonus [[Ability Range]] and [[Spirit Power]] stats.|class=notpageimage]]
[[File:Ability Range.png|thumb|[[Shiv]]'s Slice and Dice ability, improved by bonus [[Ability Range]] and [[Spirit Power]] stats.|class=notpageimage]]


[[Ability Range]] determines the effective distance and cast range of hero abilities. It is measured in a distance of meters, and stat gains are measured in percentages.
[[Ability Range]] determines the effective distance and cast range of hero abilities and items. It is measured in a distance of meters, and stat gains are measured in percentages.


For example, [[Shiv]]'s '''Slice and Dice''' ability has a dash range of '''12 meters'''. Purchasing [[Mystic Expansion]] improves this by '''35%''', making the new effective dash range of the ability '''16.2 meters'''.
For example, [[Shiv]]'s '''Slice and Dice''' ability has a dash range of '''12 meters'''. Purchasing [[Mystic Expansion]] improves this by '''35%''', making the new effective dash range of the ability '''16.2 meters'''.
The range of [[Active Items]] does not consider height and their cast range is shaped like a cylinder. This means their range can be greater than expected when targeting heroes above or below the player.


== Calculation ==
== Calculation ==
Multiple sources of Ability Range stack with diminishing returns, rather than multiplicatively or additively. Additional sources of Ability Range contribute less the closer the effective bonus gets to 100%, and the effective bonus can never actually reach 100%.


<math>\text{Effective Ability Range bonus} = 1 - (1 - R_1) \times (1 - R_2) \dots</math>
=== Calculating Ability Range ===
Multiple sources of Ability Range stack '''multiplicatively''', not additively:
 
<math>\text{Total Ability Range} = 1 - (1 - R_1) \times (1 - R_2) \dots</math>


'''Example:'''
'''Example:'''
With '''35%''' from {{ItemIcon|Greater Expansion}} and '''10%''' from {{ItemIcon|Divine Barrier}}:
With '''{{ItemData|{{#vardefineecho: Item1|Greater Expansion}}|TechRangeMultiplier}}''' from {{ItemIcon|Greater Expansion}} and '''{{ItemData|{{#vardefineecho: Item2|Divine Barrier}}|TechRangeMultiplier}}''' from {{ItemIcon|Divine Barrier}}:
# Convert percentages to decimals: 0.35 and 0.10.
# Convert percentages to decimals: {{ItemData|{{#var: Item1}}|TechRangeMultiplier}} to {{#vardefineecho: Item1Range|{{#expr: {{#replace: {{ItemData|{{#var: Item1}}|TechRangeMultiplier}}|%|}} / 100}}}} and {{ItemData|{{#var: Item2}}|TechRangeMultiplier}} to {{#vardefineecho: Item2Range|{{#expr: {{#replace: {{ItemData|{{#var: Item2}}|TechRangeMultiplier}}|%|}} / 100}}}}.
# Take the complement with 1: (1 - 0.35) = '''0.65''' and (1 - 0.10) = '''0.90'''.
# Subtract from 1: (1 - {{#var: Item1Range}}) = '''{{#expr: 1 - {{#var: Item1Range}}}}''' and (1 - {{#var: Item2Range}}) = '''{{#expr: 1 - {{#var: Item2Range}}}}'''.
# Multiply the complements: 0.65 × 0.90 = '''0.585'''.
# Multiply the differences: {{#expr: 1 - {{#var: Item1Range}}}} × {{#expr: 1 - {{#var: Item2Range}}}} = '''{{#vardefineecho: CombinedItemRange|{{#expr: (1 - {{#var: Item1Range}}) * (1 - {{#var: Item2Range}}) round 4}}}}'''.
# Take the complement with 1: 1 - 0.585 = '''0.415'''.
# Subtract from 1: 1 - {{#var: CombinedItemRange}} = '''{{#expr: 1 - {{#var: CombinedItemRange}} round 4}}'''.
# Effective Ability Range bonus is approximately '''41.5%''', not 45%.
# Total Ability Range bonus is '''{{#expr: (1 - {{#var: CombinedItemRange}}) * 100}}%''', not {{#expr: ({{#var: Item1Range}} + {{#var: Item2Range}}) * 100 round 1}}%.
Of note is that


== Sources of Ability Range ==
== Sources of Ability Range ==