Math Formula
From FFXIV Classic Wiki
Formula functions to reproduce values the client derives from its own scripts. Presented in LUA.
Scaled experience reward from quests
function calcSkillPoint(player, lvl, weight) weight = weight / 100 return math.ceil(expTable[lvl] * weight) -- expTable is a table listing total XP needed per level end
Command MP cost
local commandCost = { -- Some example base MP costs before the formula scales the cost to current level ["raise"] = 150, ["cure"] = 40, ["cura"] = 100, ["curaga"] = 150, ["firaga"] = 255, ["thundara"] = 135, }; function calculateCommandCost(skillName, level) if skillName and level and commandCost[skillName] then if level <= 10 then return math.ceil((100 + level * 10) * (commandCost[skillName] * 0.001)); elseif level <= 20 then return math.ceil((200 + (level - 10) * 20) * (commandCost[skillName] * 0.001)); elseif level <= 30 then return math.ceil((400 + (level - 20) * 40) * (commandCost[skillName] * 0.001)); elseif level <= 40 then return math.ceil((800 + (level - 30) * 70) * (commandCost[skillName] * 0.001)); elseif level <= 50 then return math.ceil((1500 + (level - 40) * 130) * (commandCost[skillName] * 0.001)); elseif level <= 60 then return math.ceil((2800 + (level - 50) * 200) * (commandCost[skillName] * 0.001)); elseif level <= 70 then return math.ceil((1500 + (level - 60) * 320) * (commandCost[skillName] * 0.001)); else return math.ceil((8000 + (level - 70) * 500) * (commandCost[skillName] * 0.001)); end; end; return 1; end