Authored by DarkGod
1 parent 619a5d7d

### Reduced damage mod on staves to 80%

`Channel Staff provides a 20% damage mod bonus to the staff firing`
Showing with 15 additions and 9 deletions
 ... ... @@ -1366,7 +1366,7 @@ function _M:combatStatLimit(stat, limit, low, high) 1366 1366 end 1367 1367 1368 1368 --- Gets the damage 1369 -function _M:combatDamage(weapon) 1369 +function _M:combatDamage(weapon, adddammod) 1370 1370 weapon = weapon or self.combat or {} 1371 1371 1372 1372 local sub_cun_to_str = false ... ... @@ -1380,6 +1380,11 @@ function _M:combatDamage(weapon) 1380 1380 if self.use_psi_combat and stat == "dex" then stat = "cun" end 1381 1381 totstat = totstat + self:getStat(stat) * mod 1382 1382 end 1383 + if adddammod then 1384 + for stat, mod in pairs(adddammod) do 1385 + totstat = totstat + self:getStat(stat) * mod 1386 + end 1387 + end 1383 1388 if self.use_psi_combat then 1384 1389 if self:knowTalent(self.T_GREATER_TELEKINETIC_GRASP) then 1385 1390 local g = self:getTalentFromId(self.T_GREATER_TELEKINETIC_GRASP) ... ... @@ -1401,7 +1406,7 @@ function _M:combatDamage(weapon) 1401 1406 1402 1407 local power = math.max((weapon.dam or 1), 1) 1403 1408 power = (math.sqrt(power / 10) - 1) * 0.5 + 1 1404 - --print(("[COMBAT DAMAGE] power(%f) totstat(%f) talent_mod(%f)"):format(power, totstat, talented_mod)) 1409 +-- print(("[COMBAT DAMAGE] power(%f) totstat(%f) talent_mod(%f)"):format(power, totstat, talented_mod)) 1405 1410 return self:rescaleDamage(0.3*(self:combatPhysicalpower(nil, weapon) + totstat) * power * talented_mod) 1406 1411 end 1407 1412 ... ...
 ... ... @@ -52,7 +52,7 @@ newEntity{ base = "BASE_STAFF", 52 52 dam = 10, 53 53 apr = 2, 54 54 physcrit = 2.5, 55 - dammod = {mag=1}, 55 + dammod = {mag=0.8}, 56 56 }, 57 57 wielder = resolvers.staff_wielder(), 58 58 } ... ... @@ -67,7 +67,7 @@ newEntity{ base = "BASE_STAFF", 67 67 dam = 15, 68 68 apr = 3, 69 69 physcrit = 3, 70 - dammod = {mag=1}, 70 + dammod = {mag=0.8}, 71 71 }, 72 72 wielder = resolvers.staff_wielder(), 73 73 } ... ... @@ -82,7 +82,7 @@ newEntity{ base = "BASE_STAFF", 82 82 dam = 20, 83 83 apr = 4, 84 84 physcrit = 3.5, 85 - dammod = {mag=1}, 85 + dammod = {mag=0.8}, 86 86 }, 87 87 wielder = resolvers.staff_wielder(), 88 88 } ... ... @@ -97,7 +97,7 @@ newEntity{ base = "BASE_STAFF", 97 97 dam = 25, 98 98 apr = 5, 99 99 physcrit = 4.5, 100 - dammod = {mag=1}, 100 + dammod = {mag=0.8}, 101 101 }, 102 102 wielder = resolvers.staff_wielder(), 103 103 } ... ... @@ -112,7 +112,7 @@ newEntity{ base = "BASE_STAFF", 112 112 dam = 30, 113 113 apr = 6, 114 114 physcrit = 5, 115 - dammod = {mag=1}, 115 + dammod = {mag=0.8}, 116 116 }, 117 117 wielder = resolvers.staff_wielder(), 118 118 } ... ...
 ... ... @@ -65,7 +65,7 @@ newTalent{ 65 65 if not x or not y then return nil end 66 66 67 67 -- Compute damage 68 - local dam = self:combatDamage(combat) 68 + local dam = self:combatDamage(combat, {mag=0.2}) 69 69 local damrange = self:combatDamageRange(combat) 70 70 dam = rng.range(dam, dam * damrange) 71 71 dam = self:spellCrit(dam) ... ... @@ -80,7 +80,8 @@ newTalent{ 80 80 local damagemod = t.getDamageMod(self, t) 81 81 return ([[Channel raw mana through your staff, projecting a bolt of your staff's damage type, doing %d%% staff damage. 82 82 The bolt will only hurt hostile targets, and pass safely through friendly ones. 83 - This attack always has a 100%% chance to hit, and ignores the target's Armour.]]): 83 + This attack always has a 100%% chance to hit, and ignores the target's Armour. 84 + When projecting a bolt with your staff its damage modifier is increased by 20%%.]]): 84 85 format(damagemod * 100) 85 86 end, 86 87 } ... ...