Seguinte Galera to com problema grave no meu server, ele é versão 8.60, acontece o seguinte problema, tipo quando eu dou !deathlist em um player que nunca morreu aparece direitinho, mais se eu der !deathlist em um player que já morreu o serve fecha. Já tentei mudar o Distro, Database, e o Script no talktions mais até agora nada. Aguardo resposta mais rapido possivel.
Death List

Aparece alguma mensagem de erro na janela do servidor ao aplicar o comando, ou até mesmo na abertura do servidor? E precisamos de mais dados. Qual o core que você usa? E qual o script usado pro comando !deathlist no seu servidor?
Back from hell.
Cara Antigamente quando nao sabia mecher muinto em Scripting meu Otserv dava Varios Debugs com o DeathList ate que tentei Trocar por este e nunca mais deu Problema.. Tente usar Este
Data>Talkactions.xml Adicione isso:
<talkaction words="!deathlist" event="script" value="deathlist.lua"/>
Agora em Data>Talkactions>Scripts crie uma pasta.lua chamada deathlist e coloque isso:
-- [( Created by: GT Thionix, edited by: DoidinMapper for XTibia.com )] -- function onSay(cid, words, param, channel) local config = {displayLimit = 10} local target = db.getResult("SELECT `name`, `id` FROM `players` WHERE `name` = " .. db.escapeString(param) .. ";") if(target:getID() == -1) then doPlayerSendCancel(cid, "Esse Player nao Existe.") return TRUE end local targetName = target:getDataString("name") local targetGUID = target:getDataInt("id") target:free() local str = "" local deaths = db.getResult("SELECT `time`, `level`, `killed_by`, `altkilled_by` FROM `player_deaths` WHERE `player_id` = " .. targetGUID .. " ORDER BY `time` DESC;") if(deaths:getID() ~= -1) then local n = 0 local breakline = "" repeat n = n + 1 if(str ~= "") then breakline = "\n" end local time = os.date("%d %B %Y %X ", deaths:getDataInt("time")) local level = deaths:getDataInt("level") local lastHitKiller = deaths:getDataString("killed_by") local mostDamageKiller = deaths:getDataString("altkilled_by") local killed = "" if(tonumber(lastHitKiller)) then killed = getPlayerNameByGUID(tonumber(lastHitKiller)) else killed = getArticle(lastHitKiller) .. " " .. string.lower(lastHitKiller) end if(mostDamageKiller ~= "") then if(tonumber(mostDamageKiller)) then killed = killed .. " and by " .. getPlayerNameByGUID(tonumber(mostDamageKiller)) else killed = killed .. " and by " .. getArticle(mostDamageKiller) .. " " .. string.lower(mostDamageKiller) end end str = str .. breakline .. " " .. time .. " Died at Level " .. level .. " by " .. killed .. "." until not(deaths:next()) or n > config.displayLimit deaths:free() else str = "No deaths recorded." end doPlayerPopupFYI(cid, "Deathlist for player: " .. targetName .. ".\n\n" .. str) return TRUE end
Obs> Delete Tudo, de DeathList antigos que tu tenha na pasta do seu otserv para nao dar debug..
Abraços..
Contato: DevilMoon@Xtibia.com
DevilMoon você quase resolveu meu problema agora o serve não fecha mais e a death list funciona só que não fala por quem o player foi morto so fala quando e em que level, e tem um erro no distro assim:
[26/08/2010 17:58:23] Error during getDataInt(time).
[26/08/2010 17:58:23] Error during getDataString(killed_by).
[26/08/2010 17:58:23] Error during getDataString(altkilled_by).
Aparece isso sempre que eu dou deathlist.