Skip to content
Snippets Groups Projects
Commit d441c767 authored by Lisa Greene's avatar Lisa Greene
Browse files

Tune corruption talent scaling

parent 1b44ddbf
No related branches found
No related tags found
No related merge requests found
......@@ -53,7 +53,7 @@ newTalent{
target = function(self, t)
return {type="cone", range=self:getTalentRange(t), radius=self:getTalentRadius(t), talent=t}
end,
getChance = function(self, t) return self:combatTalentLimit(t, 100, 30, 70) end, -- Limit < 100%
getChance = function(self, t) return self:combatTalentLimit(t, 100, 40, 70) end, -- Limit < 100%
action = function(self, t)
local tg = self:getTalentTarget(t)
local x, y = self:getTarget(tg)
......@@ -127,7 +127,7 @@ newTalent{
range = 0,
radius = function(self, t) return 10 end,
getDamage = function(self, t) return self:combatTalentSpellDamage(t, 10, 250) end,
getSlow = function(self, t) return self:combatTalentLimit(t, 100, 20, 70) end,
getSlow = function(self, t) return self:combatTalentLimit(t, 100, 35, 70) end,
getHeal = function(self, t) return self:combatTalentSpellDamage(t, 10, 90) end,
requires_target = true,
target = function(self, t)
......
......@@ -185,7 +185,7 @@ newTalent{
sustain_vim = 50,
tactical = { DEFEND = 4 },
direct_hit = true,
getRegen = function(self, t) return self:combatTalentLimit(t, 3, 20, 3.3) end,
getRegen = function(self, t) return self:combatTalentLimit(t, 3, 16, 4.5) end,
getNb = function(self, t) return math.floor(self:combatTalentScale(t, 1, 3.5)) end,
getThreshold = function(self, t) return math.floor(self:combatSpellpower() * 0.7) end,
iconOverlay = function(self, t, p)
......
......@@ -265,8 +265,8 @@ newTalent{
tactical = { ATTACK = {BLIGHT = 2} },
target = function(self, t) return {type="hit", range=self:getTalentRange(t), talent=t} end,
requires_target = true,
healloss = function(self,t) return self:combatTalentLimit(t, 150, 44, 80) end, -- Limit < 150%
disfact = function(self,t) return self:combatTalentLimit(t, 100, 36, 60) end, -- Limit < 100%
healloss = function(self,t) return self:combatTalentLimit(t, 150, 50, 75) end, -- Limit < 150%
disfact = function(self,t) return self:combatTalentLimit(t, 100, 35, 60) end, -- Limit < 100%
-- Desease spreading handled in mod.data.damage_types.lua for BLIGHT
spreadFactor = function(self, t) return self:combatTalentLimit(t, 0.05, 0.35, 0.17) end, -- Based on previous formula: 256 damage gave 100% chance (1500 hps assumed)
......
......@@ -24,7 +24,7 @@ newTalent{
points = 5,
require = str_corrs_req1,
-- called by _M:getOffHandMult function in mod\class\interface\Combat.lua
getoffmult = function(self,t) return self:combatTalentLimit(t, 1, 0.53, 0.69) end, -- limit <100%
getoffmult = function(self,t) return self:combatTalentLimit(t, 1, 0.6, 0.8) end, -- limit <100%
on_learn = function(self, t)
if self:getTalentLevelRaw(t) == 1 then
self:attr("allow_any_dual_weapons", 1)
......@@ -69,9 +69,9 @@ newTalent{
mode = "passive",
require = str_corrs_req3,
points = 5,
getDiseaseImmune = function(self, t) return self:combatTalentLimit(t, 1, 0.20, 0.75) end, -- Limit < 100%
getDiseaseImmune = function(self, t) return self:combatTalentLimit(t, 1, 0.33, 0.7) end, -- Limit < 100%
-- called by _M:attackTargetWith in mod.class.interface.Combat.lua
getDiseaseSpread = function(self, t) return self:combatTalentLimit(t, 100, 5, 20) end, --Limit < 100%
getDiseaseSpread = function(self, t) return self:combatTalentLimit(t, 100, 10, 25) end, --Limit < 100%
passives = function(self, t, p)
self:talentTemporaryValue(p, "disease_immune", t.getDiseaseImmune(self, t))
end,
......
......@@ -147,10 +147,10 @@ newTalent{
getDamage = function(self, t)
return self:combatTalentSpellDamage(t, 10, 70)
end,
getResist = function(self, t) return self:combatTalentLimit(t, 30, 5, 25) end,
getAffinity = function(self, t) return self:combatTalentLimit(t, 25, 4, 20) end,
getResist = function(self, t) return self:combatTalentScale(t, 10, 25) end,
getAffinity = function(self, t) return self:combatTalentScale(t, 7, 20) end,
getDamageReduction = function(self, t)
return self:combatTalentLimit(t, 0.5, 0.1, 0.22)
return self:combatTalentLimit(t, 0.5, 0.15, 0.3)
end,
tactical = {BUFF = 3},
activate = function(self, t)
......@@ -235,7 +235,7 @@ newTalent{
range = 7,
getHeal = function(self, t) return math.floor(self:combatTalentSpellDamage(t, 20, 400)) end,
getVim = function(self, t) return 8 + math.floor(self:combatTalentScale(t, 5, 35)) end,
getDam = function(self, t) return self:combatTalentLimit(t, 1, 20, 5) end,
getDam = function(self, t) return self:combatTalentLimit(t, 1, 18, 5) end,
tactical = {HEAL = 0.5}, -- Only use the healing functionality of this since in practice thats almost always optimal, but use it rarely so we don't waste time hopping around a lot as a melee
target = function(self, t) -- no change to default_target because worms will usually be in melee with an enemy
return {type="hit", nolock=true, range=self:getTalentRange(t)}
......
......@@ -34,7 +34,7 @@ newTalent{
target = function(self, t) return {type="hit", range=self:getTalentRange(t)} end,
tactical = { ATTACK = {PHYSICAL = 2} },
requires_target = true,
getIncrease = function(self, t) return math.floor(self:combatTalentLimit(t, 4, 1, 3.5)) end,
getIncrease = function(self, t) return math.floor(self:combatTalentLimit(t, 4, 1.5, 3.5)) end,
getDamage = function(self, t) return self:combatTalentWeaponDamage(t, 0.8, 1.6) end,
on_pre_use = function(self, t, silent)
if not self:hasDualWeapon() then
......@@ -126,7 +126,7 @@ newTalent{
vim = 20,
cooldown = 8,
range = 1,
radius = function(self, t) return self:combatTalentLimit(t, 7, 1, 5) end,
radius = function(self, t) return math.floor(self:combatTalentLimit(t, 7, 2.5, 5.5)) end,
requires_target = true,
is_melee = true,
tactical = { ATTACK = {ACID = 2}},
......
......@@ -26,7 +26,7 @@ newTalent{
cooldown = 30,
no_energy = true,
tactical = { DEFEND = 1, ESCAPE = 1, CLOSEIN = 1 },
getDuration = function(self, t) return math.floor(self:combatTalentLimit(t, 15, 5, 9)) end, -- Limit < 30 (make sure they can't hide forever)
getDuration = function(self, t) return math.floor(self:combatTalentLimit(t, 15, 4, 10)) end, -- Limit < 30 (make sure they can't hide forever)
getDefs = function(self, t) return self:combatTalentScale(t, 5, 20), self:combatTalentScale(t, 5, 16) end,
action = function(self, t)
local def, armor = t.getDefs(self, t)
......@@ -90,7 +90,7 @@ newTalent{
sustain_vim = 90,
cooldown = 30,
tactical = { DEFEND = 1, BUFF = 2 },
getSpeed = function(self, t) return self:combatTalentScale(t, 0.03, 0.15) end,
getSpeed = function(self, t) return self:combatTalentScale(t, 0.05, 0.165) end,
activate = function(self, t)
game:playSoundNear(self, "talents/flame")
self.__old_type = {self.type, self.subtype}
......
......@@ -119,7 +119,7 @@ newTalent{
points = 5,
mode = "sustained",
cooldown = 20,
getPower = function(self, t) return self:combatTalentLimit(t, 5, 15, 10), self:combatLimit(self:combatTalentSpellDamage(t, 10, 90), 100, 20, 0, 50, 61.3) end, -- Limit threshold > 5%, chance < 100%
getPower = function(self, t) return self:combatTalentLimit(t, 5, 15, 8), self:combatLimit(self:combatTalentSpellDamage(t, 10, 90), 100, 20, 0, 50, 61.3) end, -- Limit threshold > 5%, chance < 100%
sustain_vim = 22,
tactical = { BUFF = 2 },
activate = function(self, t)
......
......@@ -63,9 +63,9 @@ newTalent{
tactical = { BUFF = 2 },
getFire = function(self, t) return self:combatTalentSpellDamage(t, 10, 400) end,
getCold = function(self, t) return self:combatTalentSpellDamage(t, 10, 500) end,
getLightning = function(self, t) return math.floor(self:combatTalentLimit(t, 8, 3, 5)) end,
getAcid = function(self, t) return math.floor(self:combatTalentLimit(t, 8, 2, 5)) end,
getNature = function(self, t) return self:combatTalentLimit(t, 60, 15, 45) end,
getLightning = function(self, t) return math.floor(self:combatTalentLimit(t, 8, 3, 6)) end,
getAcid = function(self, t) return math.floor(self:combatTalentLimit(t, 8, 3, 6)) end,
getNature = function(self, t) return self:combatTalentLimit(t, 75, 25, 55) end,
callbackOnTakeDamage = function(self, t, src, x, y, type, dam, tmp)
local p = self:isTalentActive(t.id)
if not p then return end
......@@ -171,7 +171,7 @@ newTalent{
no_npc_use = true, -- Bypasses all forms of immunity and such
target = function(self, t) return {type="hit", range=self:getTalentRange(t), talent=t} end,
getNb = function(self, t) return math.floor(self:combatTalentScale(t, 2, 4, "log")) end,
getDam = function(self, t) return self:combatTalentLimit(t, 2, 10, 5) end, --Limit < 10% life/effect
getDam = function(self, t) return self:combatTalentLimit(t, 2, 10, 3) end, --Limit < 10% life/effect
getVim = function(self, t) return 18 end,
action = function(self, t)
local tg = self:getTalentTarget(t)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment