• 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!

Lua Spell's Formula Problem

Hrsha

Member
Joined
May 30, 2010
Messages
450
Reaction score
21
Location
Egypt
Hello Guys

this is exori vis script and it does not work cuz of formula function
i wana know how this kind of Formula works cuz its the best kind

Code:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)

function onGetFormulaValues(cid, level, maglevel)
	return -(((maglevel + 30) * 3) + (level * 2)), -((maglevel + 30) + (level / 4)), 0
end

function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end

how i can set this function on spells ?


Code:
function onGetFormulaValues(cid, level, maglevel)
	min = (level * 2 + maglevel * 3) * 2.3 - 25
	max = (level * 2 + maglevel * 3) * 2.6
 
	if min < 750 then
		min = 750
	end
 
	return min, max
end

and

could anyone explain to me this formula ?
Code:
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1)
it has more than 4 numbers why ?

Thanks for reading ...
 
Instead of adding a separate function, just do some basic math like this.

LUA:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_ENERGYAREA)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)

function onGetFormulaValues(cid, level, maglevel)
	local min = (level * 2 + maglevel * 3) * 2.3 + 750  --- add the minimum you want outside parenthesis it will be added last. So for lvl 0 and ml 0, min damage = 750
	local max = (level * 2 + maglevel * 3) * 2.6 + 1000 --- here 1000 is the minimum max value
	return -min, -max
end

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")
function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end
 
so ..

u mean to make this function works
Code:
function onGetFormulaValues(cid, level, maglevel)

i have to put this line

Code:
setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues")

...........

what about this line ?
Code:
setCombatFormula(combat, COMBAT_FORMULA_LEVELMAGIC, -1, -10, -1, -20, 5, 5, 1.4, 2.1)

what is these numbers ?!
 
i have other problem

when i set 2 function of Formula

and i put

setCombatCallback(combat, CALLBACK_PARAM_LEVELMAGICVALUE, "onGetFormulaValues") < 2 lines

it gives me error < could not find onGetFormulaValues
 
Back
Top