Tenta ai, o erro diz que não está achando o jogador, você não está usando em alguém deslogado, ou com ghost né, lembrando !cmd nome do jogador, value que vai adicionar.
function onSay(cid, words, param, channel)
local str = string.explode(param, ",")
local player = getPlayerByNameWildcard(str[1])
local amount = math.min(tonumber(str[2]) or 1, 100)
if not(player) then
return doPlayerSendTextMessage(cid, 27, "Player not found.")
elseif not(amount) then
return doPlayerSendTextMessage(cid, 27, words .. " player name, value.")
end
doPlayerAddExp(player, getExperienceForLevel(amount) - getPlayerExperience(player))
doCreatureAddMana(player, getCreatureMaxMana(player) - getCreatureMana(player))
doCreatureAddHealth(player, getCreatureMaxHealth(player) - getCreatureHealth(player))
return true
end