Leech: Difference between revisions

From Path of Exile Wiki
Jump to navigation Jump to search
>Illviljan
m (→‎Recovery rate: added modifier colors)
>Illviljan
(The duration of leech is independent of other leech instances. Edited and updated (hopefully) all affected parts by this change.)
Line 13: Line 13:


===Recovery rate===
===Recovery rate===
{| class="wikitable" align = right
|+ Values of the Base Leech Rates<ref name="AwakeningLeech" />
|-
! Symbol !! Value  !! Description !! Unit
|-
| <tt>''q''</tt> || 2 % <br> 2 % || Base Life Leech Rate <br> Base Mana Leech Rate ||  s<sup>-1</sup> <br> s<sup>-1
|-
| <tt>''q<sub>max</sub>''</tt> || 20 % <br> 20 % || Base Maximum Life Leech Rate <br> Base Maximum Mana Leech Rate || s<sup>-1</sup> <br> s<sup>-1</sup>
|}
The leech recovery rate <tt>''r''</tt> is given by
The leech recovery rate <tt>''r''</tt> is given by
: <tt>''r = p * n * q * (1 + m)''</tt>
: <tt>''r = p * n * q * (1 + m)''</tt>
Line 19: Line 28:
There is a upper limit of the leech recovery rate which is defined as
There is a upper limit of the leech recovery rate which is defined as
: <tt>''r<sub>max</sub> = p * (q<sub>max</sub> + m<sub>max</sub>)''</tt>
: <tt>''r<sub>max</sub> = p * (q<sub>max</sub> + m<sub>max</sub>)''</tt>
where <tt>''q<sub>max</sub>''</tt> is the Base Maximum Leech Rate and <tt>''m<sub>max</sub>''</tt> is the sum of all the {{c|mod|+#% of maximum Life/Mana per second to maximum Life/Mana Leech rate}} modifiers.  
where <tt>''q<sub>max</sub>''</tt> is the Base Maximum Leech Rate and <tt>''m<sub>max</sub>''</tt> is the sum of all the {{c|mod|#% of maximum Life/Mana per second to maximum Life/Mana Leech rate}} modifiers.  


If <tt>''r > r<sub>max</sub>''</tt> those values will be substituted with <tt>''r<sub>max</sub>''</tt>.  
If <tt>''r > r<sub>max</sub>''</tt> those values will be substituted with <tt>''r<sub>max</sub>''</tt>.  
The total amount of active leech instances allowed, <tt>''n<sub>tot</sub>''</tt>, can be solved by
The total amount of active leech instances allowed, <tt>''n<sub>tot</sub>''</tt>, is
 
<tt>''n<sub>tot</sub> = (q<sub>max</sub> + m<sub>max</sub>) / (q * (1 + m))''</tt>
 
{| class="wikitable collapsible collapsed"
! Derivation of n<sub>tot</sub>
|-
|
: <tt>''r = r<sub>max</sub>''</tt>  
: <tt>''r = r<sub>max</sub>''</tt>  
: <tt>''p * n<sub>tot</sub> * q * (1 + m) = p * (q<sub>max</sub> + m<sub>max</sub>)''</tt>
: <tt>''p * n * q * (1 + m) = p * (q<sub>max</sub> + m<sub>max</sub>)''</tt>
solving for n<sub>tot</sub> gives
solving for n yields
: <tt>''n<sub>tot</sub> = (q<sub>max</sub> + m<sub>max</sub>) / (q * (1 + m))''</tt>
: <tt>''n<sub>tot</sub> = n = (q<sub>max</sub> + m<sub>max</sub>) / (q * (1 + m))''</tt>
|}


===Leech duration===
The leech recovery duration for each instance in seconds is given by <ref name="LeechdurationMark" />
: <tt>''t<sub>dur</sub> = d * l / (p * q) ''</tt>
where <tt>''d''</tt> is the damage inflicted on the enemy, <tt>''l''</tt> is the total amount of leech.


To be able to sustain the max recovery rate, <tt>''r<sub>max</sub>''</tt>, against a single target the total amount of instances allowed needs to be active at all times, <tt>''n<sub>tot</sub>''</tt>. The attack time between each hit, <tt>''t<sub>att</sub>''</tt>, needs to be
: <tt>''t<sub>att</sub> ≤ t<sub>dur</sub> / n<sub>tot</sub>''</tt>
===Modifiers===
Modifiers that alters the leech recovery rate increases the value of Life/Mana you're gaining per second for each leech effect. However, it does not affect the duration, <tt>''t<sub>dur</sub>''</tt>, of the leech effects, meaning that more total life/mana will be gained from each leech instance as a result.<ref name="AwakeningLeech" /> This also implies that by increasing the Life/Mana Leeched per seconds gives a larger total of life leeched compared to [[Vaal Pact]].
Modifiers that alters the leech recovery rate increases the value of Life/Mana you're gaining per second for each leech effect. However, it does not affect the duration, <tt>''t<sub>dur</sub>''</tt>, of the leech effects, meaning that more total life/mana will be gained from each leech instance as a result.<ref name="AwakeningLeech" /> This also implies that by increasing the Life/Mana Leeched per seconds gives a larger total of life leeched compared to [[Vaal Pact]].


Line 35: Line 60:
* For life leech by a [[skill]] supported by the {{sl|Life Leech}} gem.
* For life leech by a [[skill]] supported by the {{sl|Life Leech}} gem.
* Vorici's master modifier also offers {{c|mod|#% increased Life Leeched per second}}.
* Vorici's master modifier also offers {{c|mod|#% increased Life Leeched per second}}.
The table below displays values of the base leech rates.<ref name="AwakeningLeech" />
{| class="wikitable"
|-
! Symbol !! Value  !! Description !! Unit
|-
| <tt>''q''</tt> || 2 % <br> 2 % || Base Life Leech Rate <br> Base Mana Leech Rate ||  s<sup>-1</sup> <br> s<sup>-1
|-
| <tt>''q<sub>max</sub>''</tt> || 20 % <br> 20 % || Base Maximum Life Leech Rate <br> Base Maximum Mana Leech Rate || s<sup>-1</sup> <br> s<sup>-1</sup>
|}
===Leech duration===
The leech recovery duration in seconds is given by
: <tt>''t<sub>dur</sub> = d * l / r<sub>0</sub>''</tt>
where <tt>''d''</tt> is the damage inflicted on the enemy, <tt>''l''</tt> is the total amount of leech and
: <tt>''r<sub>0</sub> = p * n * q''</tt>
<tt>''r<sub>0</sub>''</tt> is the recovery rate without any modifiers. If <tt>''r<sub>0</sub> > r<sub>0max</sub>''</tt> those values will be substituted with <tt>''r<sub>max</sub>''</tt> and
: <tt>''r<sub>0max</sub> = p * q<sub>max</sub>''</tt>
To be able to sustain the max recovery rate, <tt>''r<sub>max</sub>''</tt>, against a single target the total amount of instances allowed needs to be active at all times, <tt>''n<sub>tot</sub>''</tt>. The duration with <tt>''n<sub>tot</sub>''</tt> instances is
: <tt>''t<sub>max</sub> = d * l / r<sub>0max</sub>''</tt>
The attack time between each hit, <tt>''t<sub>att</sub>''</tt>, needs to be
: <tt>''t<sub>att</sub> ≤ t<sub>max</sub> / n<sub>tot</sub>''</tt>
or
: <tt>''t<sub>att</sub> ≤ d * l * q * (1 + m)^2 / (p * (q<sub>max</sub> + m<sub>max</sub>)^2)''</tt>


===Examples===
===Examples===
Line 70: Line 68:
: l = 1 % life leech
: l = 1 % life leech


====1 Enemy hit====
====1 enemy hit====
: n = 1 leech instances/Enemies
: n = 1 leech instances/Enemies
: m = 0% increased Life Leeched per second
: m = 0% increased Life Leeched per second
Line 82: Line 80:


The time it takes to recover the total amount of life leeched is  
The time it takes to recover the total amount of life leeched is  
: <tt>''t<sub>dur</sub> = d * l / r<sub>0</sub> = 1000 * 0.01 / (1 * 5000 * 0.02) = 0.1 seconds''</tt>
: <tt>''t<sub>dur</sub> = d * l / (p * q) = 1000 * 0.01 / (5000 * 0.02) = 0.1 seconds''</tt>
which gives the total life leeched
which gives the total life leeched
: <tt>''HP(t<sub>dur</sub>) = r * t<sub>dur</sub> = 100 * 0.1 = 10 Life''</tt>
: <tt>''HP(t<sub>dur</sub>) = r * t<sub>dur</sub> = 100 * 0.1 = 10 Life''</tt>
Line 98: Line 96:


The time it takes to recover the total amount of life leeched is  
The time it takes to recover the total amount of life leeched is  
: <tt>''t<sub>dur</sub> = d * l / r<sub>0</sub> = 1000 * 0.01 / (5 * 5000 * 0.02) = 0.02 seconds''</tt>
: <tt>''t<sub>dur</sub> = d * l / (p * q) = 1000 * 0.01 / (5000 * 0.02) = 0.1 seconds''</tt>
which gives the total life leeched
which gives the total life leeched
: <tt>''HP(t<sub>dur</sub>) = r * t<sub>dur</sub> = 500 * 0.02 = 10 Life''</tt>
: <tt>''HP(t<sub>dur</sub>) = r * t<sub>dur</sub> = 500 * 0.1 = 50 Life''</tt>


====11 enemies hit at once====
====11 enemies hit at once====
Line 111: Line 109:
Make sure that the recovery rate doesn't exceed the maximum recovery rate which is  
Make sure that the recovery rate doesn't exceed the maximum recovery rate which is  
: <tt>''r<sub>max</sub> = ''p * (q<sub>max</sub> + m<sub>max</sub>) = 5000 * (0.2 + 0) = 1000 HP/sec''</tt>
: <tt>''r<sub>max</sub> = ''p * (q<sub>max</sub> + m<sub>max</sub>) = 5000 * (0.2 + 0) = 1000 HP/sec''</tt>
The limit has been exceeded, therefore the recovery rate needs to be changed to <tt>''r = 1000 HP/sec''</tt>.
The limit '''has been exceeded''', therefore the recovery rate needs to be changed to <tt>''r = 1000 HP/sec''</tt>.


The time it takes to recover the total amount of life leeched is  
The time it takes to recover the total amount of life leeched is  
: <tt>''t<sub>dur</sub> = d * l / r<sub>0max</sub> = 1000 * 0.01 / (5000 * 0.2) = 0.01 seconds''</tt>
: <tt>''t<sub>dur</sub> = d * l / (p * q) = 1000 * 0.01 / (5000 * 0.2) = 0.1 seconds''</tt>
which gives the total life leeched
which gives the total life leeched
: <tt>''HP(t<sub>dur</sub>) = r * t<sub>dur</sub> = 1000 * 0.01 = 10 Life''</tt>
: <tt>''HP(t<sub>dur</sub>) = r * t<sub>dur</sub> = 1000 * 0.1 = 100 Life''</tt>


==Passive skills==
==Passive skills==
Line 203: Line 201:
{{reflist|refs=
{{reflist|refs=
<ref name="LeechClarification">{{cite web|author=Mark_GGG|date=March 4, 2014|title=Leech: GGG clarify please!|url=http://www.pathofexile.com/forum/view-thread/811113/page/3#p7054873|publisher=Official Path of Exile Forums|accessdate=March 6, 2014}}</ref>
<ref name="LeechClarification">{{cite web|author=Mark_GGG|date=March 4, 2014|title=Leech: GGG clarify please!|url=http://www.pathofexile.com/forum/view-thread/811113/page/3#p7054873|publisher=Official Path of Exile Forums|accessdate=March 6, 2014}}</ref>
<ref name="Mechanics">{{cite web|url=http://www.pathofexile.com/forum/view-thread/11707/#p216023|title=Mechanics Thread|author=Malice|publisher=Path of Exile Forum|date=November 13, 2011|accessdate=March 8, 2014}}</ref>
<ref name="AwakeningLeech">{{cite web|url=https://www.pathofexile.com/forum/view-thread/1274806/page/1|title=Upcoming changes to Leech Thread|author=GGG_Neon|publisher=Path of Exile Forum|date=May 18, 2015|accessdate=July 20, 2015}}</ref>
<ref name="AwakeningLeech">{{cite web|url=https://www.pathofexile.com/forum/view-thread/1274806/page/1|title=Upcoming changes to Leech Thread|author=GGG_Neon|publisher=Path of Exile Forum|date=May 18, 2015|accessdate=July 20, 2015}}</ref>
<ref name="LeechMark">{{cite web|url=http://www.reddit.com/r/pathofexile/comments/3a0818/cb_vitality_void_leech_cluster/cs99982|title=Vitality Void: Leech Cluster Thread|author=GGG_Mark|publisher=Path of Exile subreddit|date=June 20, 2015|accessdate=July 20, 2015}}</ref>
<ref name="LeechMark">{{cite web|url=http://www.reddit.com/r/pathofexile/comments/3a0818/cb_vitality_void_leech_cluster/cs99982|title=Vitality Void: Leech Cluster Thread|author=GGG_Mark|publisher=Path of Exile subreddit|date=June 20, 2015|accessdate=July 20, 2015}}</ref>
 
<ref name="LeechdurationMark">{{cite web|url=https://www.pathofexile.com/forum/view-thread/1431325/page/1#p11773119|title=Life leech (wiki)|author=GGG_Mark|publisher=Path of Exile forum|date=October 1, 2015|accessdate=October 12, 2015}}</ref>
}}
}}


[[Category:Game mechanics]]
[[Category:Game mechanics]]

Revision as of 16:51, 12 October 2015

"Life Leech" redirects here. For the support gem, see Life Leech (support gem). For the passive skill, see Life Leech (passive skill).
"Mana Leech" redirects here. For the support gem, see Mana Leech (support gem).

Life leech restores over time an amount of life relative to damage inflicted on an enemy. Likewise, mana leech restores mana in the same way.


Leech mechanics in The Awakening

In the Awakening expansion the leech mechanics was changed with the goal to make it harder to leech against a single enemy. Earlier the leech recovered at a constant rate, this method does not take into account how many enemies that were hit by the skill. The leech mechanic was therefore changed to vary how fast the leech recovered depending on how many enemies were hit; with more targets hit by the skill the faster the character healed from the leech.

The total amount of life or mana leeched without Vaal Pact can be described as

HP(t) = r * t

where r is the leech recovery rate and t is the time. The leech recovery rate, r, varies depending on how many enemies have been hit and how many times the enemies have been hit. [1]

Recovery rate

Values of the Base Leech Rates[2]
Symbol Value Description Unit
q 2 %
2 %
Base Life Leech Rate
Base Mana Leech Rate
s-1
s-1
qmax 20 %
20 %
Base Maximum Life Leech Rate
Base Maximum Mana Leech Rate
s-1
s-1

The leech recovery rate r is given by

r = p * n * q * (1 + m)

where p is the character's maximum life (for life leech) or mana (for mana leech), n is the number of active leech instances, q is the Base Leech Rate and m is the sum of all the #% increased (or reduced) Life/Mana Leeched per second modifiers.

There is a upper limit of the leech recovery rate which is defined as

rmax = p * (qmax + mmax)

where qmax is the Base Maximum Leech Rate and mmax is the sum of all the #% of maximum Life/Mana per second to maximum Life/Mana Leech rate modifiers.

If r > rmax those values will be substituted with rmax. The total amount of active leech instances allowed, ntot, is

ntot = (qmax + mmax) / (q * (1 + m))

Leech duration

The leech recovery duration for each instance in seconds is given by [3]

tdur = d * l / (p * q)

where d is the damage inflicted on the enemy, l is the total amount of leech.

To be able to sustain the max recovery rate, rmax, against a single target the total amount of instances allowed needs to be active at all times, ntot. The attack time between each hit, tatt, needs to be

tatt ≤ tdur / ntot

Modifiers

Modifiers that alters the leech recovery rate increases the value of Life/Mana you're gaining per second for each leech effect. However, it does not affect the duration, tdur, of the leech effects, meaning that more total life/mana will be gained from each leech instance as a result.[2] This also implies that by increasing the Life/Mana Leeched per seconds gives a larger total of life leeched compared to Vaal Pact.

There are only a couple of ways for these factors to be altered, besides the passive tree:[4][2]

  • The of Smothering modifier for maps slows life and mana leech recovery rate by 50%.
  • For life leech by a skill supported by the Module Error: No skills found with q_where = skill.active_skill_name="Life Leech" gem.
  • Vorici's master modifier also offers #% increased Life Leeched per second.

Examples

When using skills such as Module Error: Too many skills found with q_where = skill.active_skill_name="Dual Strike". Please choose only one of the following ids:
AzmeriDualStrikeDemonDualStrike - N/A (page)
DualStrikeRoyale - (50-77)% increased Critical Strike Chance, +(0-0.1) metres to Melee Strike Range, 100% more Critical Strike Chance against Enemies that are on Full Life, +30% more Damage with Hits and Ailments against Enemies that are on Full Life (page)
linked with Module Error: No skills found with q_where = skill.active_skill_name="Melee Splash" several enemies are hit at once, the leech rate will vary considerably depending on how many enemies are hit. The character used in the example has the following stats:

p = 5000 maximum life
d = 1000 damage to enemy
l = 1 % life leech

1 enemy hit

n = 1 leech instances/Enemies
m = 0% increased Life Leeched per second
mmax = 0% of maximum Life per second to maximum Life Leech rate

The recovery rate is:

r = n * p * q * (1 + m) = 1 * 5000 * 0.02 * (1 + 0) = 100 HP/sec

Make sure that the recovery rate doesn't exceed the maximum recovery rate which is

rmax = p * (qmax + mmax) = 5000 * (0.2 + 0) = 1000 HP/sec

The limit has not been exceeded, meaning that no substitution is necessary.

The time it takes to recover the total amount of life leeched is

tdur = d * l / (p * q) = 1000 * 0.01 / (5000 * 0.02) = 0.1 seconds

which gives the total life leeched

HP(tdur) = r * tdur = 100 * 0.1 = 10 Life

5 enemies hit at once

n = 5 leech instances/Enemies
m = 0% increased Life Leeched per second
mmax = 0% of maximum Life per second to maximum Life Leech rate

The recovery rate is:

r = n * p * q * (1 + m) = 5 * 5000 * 0.02 * (1 + 0) = 500 HP/sec

Make sure that the recovery rate doesn't exceed the maximum recovery rate which is

rmax = p * (qmax + mmax) = 5000 * (0.2 + 0) = 1000 HP/sec

The limit has not been exceeded, meaning that no substitution is necessary.

The time it takes to recover the total amount of life leeched is

tdur = d * l / (p * q) = 1000 * 0.01 / (5000 * 0.02) = 0.1 seconds

which gives the total life leeched

HP(tdur) = r * tdur = 500 * 0.1 = 50 Life

11 enemies hit at once

n = 11 leech instances/Enemies
m = 0% increased Life Leeched per second
mmax = 0% of maximum Life per second to maximum Life Leech rate

The recovery rate is:

r = n * p * q * (1 + m) = 11 * 5000 * 0.02 * (1 + 0) = 1100 HP/sec

Make sure that the recovery rate doesn't exceed the maximum recovery rate which is

rmax = p * (qmax + mmax) = 5000 * (0.2 + 0) = 1000 HP/sec

The limit has been exceeded, therefore the recovery rate needs to be changed to r = 1000 HP/sec.

The time it takes to recover the total amount of life leeched is

tdur = d * l / (p * q) = 1000 * 0.01 / (5000 * 0.2) = 0.1 seconds

which gives the total life leeched

HP(tdur) = r * tdur = 1000 * 0.1 = 100 Life

Passive skills

There are passive skills that grant passive leech or bonuses to leech.

Life Leech

There are passive skills that grant passive life leech or bonuses to life leech. Template:Passive table

Minion Life Leech

These passive skills grant life leech for minions.

Template:Passive table

Miscellaneous

These keystone passive are related, but don't add any life leech as a percentage of physical damage.

The Vaal Pact Keystone will allow life leech to apply immediately at the cost of losing life regeneration. Ghost Reaver applies life leech to energy shield instead of life.

Template:Passive table

Mana Leech

There are passive skills that grant passive mana leech or bonuses to mana leech.

Template:Passive table

Immunity to leech

A player can become immune to being life leeched from by enemies through allocating the Bloodless notable passive skill.

Template:Passive table

Immunity can also be achieved by equipping certain unique items.

Lua error in Module:Item_table at line 1971: bad argument #2 to 'format' (string expected, got nil).

Cannot Leech

Certain unique items prevent the user from leeching life and/or mana.

Lua error in Module:Item_table at line 1971: bad argument #2 to 'format' (string expected, got nil).

References

  1. GGG_Mark (June 20, 2015). "Vitality Void: Leech Cluster Thread". Path of Exile subreddit. Retrieved July 20, 2015.
  2. 2.0 2.1 2.2 GGG_Neon (May 18, 2015). "Upcoming changes to Leech Thread". Path of Exile Forum. Retrieved July 20, 2015.
  3. GGG_Mark (October 1, 2015). "Life leech (wiki)". Path of Exile forum. Retrieved October 12, 2015.
  4. Mark_GGG (March 4, 2014). "Leech: GGG clarify please!". Official Path of Exile Forums. Retrieved March 6, 2014.