• 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] Formula that uses a storage!

sebas182

New Member
Joined
Aug 10, 2008
Messages
121
Reaction score
1
Lua:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA)
setCombatParam(combat, COMBAT_PARAM_USECHARGES, true)

local area = createCombatArea(AREA_SWEEP1)
setCombatArea(combat, area)

function onGetFormulaValues(cid, level, skill, attack, factor)
	local skillTotal, levelTotal = ((skill*1.1) + attack)/2, level/5/2
	return -(skillTotal + levelTotal), - (skillTotal + levelTotal)*2
end

setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")

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

Look this! It's an edited formula from Exori, that I modified for a weaker knight (warrior in my server) spell...
Now I want to use the same to make a spell that uses some values... The formula is:

local firelv = getPlayerStorageValue(cid, 24012)

((firelv * 1.8) + (magiclevel * 1.8))/2 + 1 -- between this min
((firelv * 1.8) + (magiclevel * 1.8))/2 + 15 -- and this max

In sample, firelv == 10 and magiclevel == 10 so:
((10*1.8) + (10*1.8))/2 + 1
(36)/2 + 1
18 + 1
19

((18) + (18))/2 + 15
(36)/2 + 15
18 + 15
33

Damage between 19 to 33.

I really need it, please help me! :D
Things like graphics and type I already know to modify, just need help in the FORMULA. PLEASE!
 
Like this maybe?
Lua:
local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_HITAREA)
setCombatParam(combat, COMBAT_PARAM_USECHARGES, true)
 
local area = createCombatArea(AREA_SWEEP1)
setCombatArea(combat, area)


function onGetFormulaValues(cid, level, skill, attack, factor)
	local firelv = getPlayerStorageValue(cid, 24012)
        local magiclevel = -- no idea what the function is called :/
	local _min = ((firelv * 1.8) + (magiclevel * 1.8))/2 + 1
	local _max = _min + 14

	return -_min, -_max
end
 
setCombatCallback(combat, CALLBACK_PARAM_SKILLVALUE, "onGetFormulaValues")
function onCastSpell(cid, var)
	return doCombat(cid, combat, var)
end
 
Last edited:
Back
Top