• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

TFS 1.X+ What the Differents between COMBAT_FORMULA_LEVELMAGIC and onGetFormulaValues

Lopaskurwa

Well-Known Member
Joined
Oct 6, 2017
Messages
914
Solutions
2
Reaction score
50
Hi
can someone explain whats the different between these two types of spells when you use COMBAT_FORMULA_LEVELMAGIC or onGetFormulaValues


LUA:
local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatFormula(combat1, COMBAT_FORMULA_LEVELMAGIC, -1.0, 0, -1.0, 0)
LUA:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
combat:setArea(createCombatArea(AREA_BEAM5))

function onGetFormulaValues(cid, level, maglevel)
    min = -((level / 5) + (maglevel * 1.8) + 11)
    max = -((level / 5) + (maglevel * 3) + 19)
    return min, max
end
Is it something about damage increase by mag + lvl?
 
Solution
when used for formula:
combat:setFormula(type, mina, minb, maxa, maxb)
Code:
COMBAT_FORMULA_LEVELMAGIC -> math.random((level * 2 + magiclvl * 3) * mina + minb, (level * 2 + magiclvl * 3) * maxa + maxb)
COMBAT_FORMULA_SKILL -> math.random(minb, weapondamage * maxa + maxb) | or if no weapon | math.random(minb, maxb)
COMBAT_FORMULA_DAMAGE -> math.random(mina, maxa)

when used as callbacks:
Code:
COMBAT_FORMULA_LEVELMAGIC -> onGetFormulaValues(player, level, maglevel)
COMBAT_FORMULA_SKILL -> onGetFormulaValues(player, attackSkill, attackValue, attackFactor)
when used for formula:
combat:setFormula(type, mina, minb, maxa, maxb)
Code:
COMBAT_FORMULA_LEVELMAGIC -> math.random((level * 2 + magiclvl * 3) * mina + minb, (level * 2 + magiclvl * 3) * maxa + maxb)
COMBAT_FORMULA_SKILL -> math.random(minb, weapondamage * maxa + maxb) | or if no weapon | math.random(minb, maxb)
COMBAT_FORMULA_DAMAGE -> math.random(mina, maxa)

when used as callbacks:
Code:
COMBAT_FORMULA_LEVELMAGIC -> onGetFormulaValues(player, level, maglevel)
COMBAT_FORMULA_SKILL -> onGetFormulaValues(player, attackSkill, attackValue, attackFactor)
 
Last edited:
Solution
Back
Top