Ir para conteúdo
Entre para seguir isso  
Flatronez

Player Logger

Recommended Posts

Flatronez    1
Flatronez

Nome: Player Logger

.

Versão: 8.4x(acho que funciona em 8.5)

.

Tipo do script: CreatureScript + Global Event

.

Servidor Testado: TFS 0.3.4 Crying Damson

.

Autor: Flatronez

 

Funcionamento: Monitora os players. Registra quando o player entra, sai, mata ou morre. Também salva a posição e experiência do player a cada 1 hora.

____________________

Instalação:

1- Na pasta CreatureScripts, abra o arquivo creaturescripts.xml e adicione as seguintes tags nele: [spoiler=Tags]

[color=Black]<event type[/color][color=Black]=[/color][color=Black]"login"[/color] name[color=Black]=[/color][color=Black]"PlayerLogin" event[/color][color=Black]=[/color][color=Black]"script" value[/color][color=Black]=[/color][color=Black]"log_login.lua"[/color][color=Black]/>
[/color] [color=Black]<event type[/color][color=Black]=[/color][color=Black]"death" name[/color][color=Black]=[/color][color=Black]"Log_Death" event[/color][color=Black]=[/color][color=Black]"script"[/color] value[color=Black]=[/color][color=Black]"log_death.lua"[/color][color=Black]/>
[/color] [color=Black]<event type[/color][color=Black]=[/color][color=Black]"logout" name[/color][color=Black]=[/color][color=Black]"Log_Logout" event[/color][color=Black]=[/color][color=Black]"script"[/color] value[color=Black]=[/color][color=Black]"log_logout.lua"[/color][color=Black]/>
[/color] [color=Black]<event type[/color][color=Black]=[/color][color=Black]"kill" name[/color][color=Black]=[/color][color=Black]"Log_Mata" event[/color][color=Black]=[/color][color=Black]"script" value[/color][color=Black]=[/color][color=Black]"log_kill.lua"[/color][color=Black]/>[/color]

 

 

2- Depois coloque os scripts abaixo dentro da pasta scripts.

[spoiler=Arquivo: log_death.lua]

function onDeath(cid, corpse, killer)
        local nome = getCreatureName(cid)
        local killer = getCreatureName(killer)
        local ip = doConvertIntegerToIp(getPlayerIp(cid))
        teste = io.open(getDataDir().."/logs/Player_Logger/"..nome..".txt", "a+")
        teste:write(os.date("%d/%m/%y - %H:%M:%S - ")..ip.." - Killed by "..killer.."\n")
        teste:close()
        return TRUE
end    

 

[spoiler=Arquivo: log_kill.lua]

function onKill(cid,target)
        local nome = getCreatureName(cid)
        local target = getCreatureName(target)
        local ip = doConvertIntegerToIp(getPlayerIp(cid))
        teste = io.open(getDataDir().."/logs/Player_Logger/"..nome..".txt", "a+")
        teste:write(os.date("%d/%m/%y - %H:%M:%S - ")..ip.." - Killed a "..target.."\n")
        teste:close()  
        return TRUE
end

 

[spoiler=Arquivo: log_logout.lua]

function onLogout(cid)
        local nome = getCreatureName(cid)
        local ip = doConvertIntegerToIp(getPlayerIp(cid))
        teste = io.open(getDataDir() .."/logs/Player_Logger/".. nome ..".txt", "a+")
        teste:write(os.date("%d/%m/%y - %H:%M:%S - ") .. ip .." - Logged Out with IP: " .. ip .. "\n")
        teste:close()
        return TRUE
end

 

[spoiler=Arquivo: log_login.lua]

function onLogin(cid)
        registerCreatureEvent(cid, "Log_Death")
        registerCreatureEvent(cid, "Log_Logout")
        registerCreatureEvent(cid, "Log_Mata")
        local nome = getCreatureName(cid)
        local ip = doConvertIntegerToIp(getPlayerIp(cid))
        teste = io.open(getDataDir() .."/logs/Player_Logger/".. nome ..".txt", "a+")
        teste:write(os.date("%d/%m/%y - %H:%M:%S - ") .. ip .." - Logged In with IP: " .. ip .. "\n")
        teste:close()
        return TRUE
end

 

 

3- Na pasta GlobalEvents abra o arquivo globalevents.xml e adicione a seguinte tag:

[spoiler=Tag]

<globalevent name="log" interval="3600" event="script" value="log_status.lua"/>

 

 

4- Depois coloque o script abaixo dentro da pasta scripts.

[spoiler=Arquivo: log_status.lua]

function onThink(interval, lastExecute)
        local players = getOnlinePlayers()
        for id, it in pairs(players) do
        local cid = getPlayerByName(players[id])
        local exp = getPlayerExperience(cid)
        local posi = getCreaturePosition(cid)
        local ip = doConvertIntegerToIp(getPlayerIp(cid))
        local tabela = io.open(getDataDir().."/logs/Player_Logger/".. players[id] ..".txt", "a+")
        tabela:write(os.date("%d/%m/%y - %H:%M:%S - ").. ip .." - Experience: ".. exp .." - Position:  x:".. posi.x .." y: ".. posi.y .." z: ".. posi.z .."\n")
        tabela:close()
        end
        return TRUE
end

 

 

Para o sistema funcionar, crie o seguinte caminho: data/logs/Player_Logger

 

Qualquer dúvida/sugestão/bug podem postar =D

Compartilhar este post


Link para o post
Gpwjhlkdcf    21
Gpwjhlkdcf

  • Aprovado e Movido para Download de Ações.

 

Observação: Hiper lemon ultra super hazzard info tech mega blaster acid aprovado! o/

Compartilhar este post


Link para o post
Nighandy    0
Nighandy

Vo comeca a usa isso :D

Compartilhar este post


Link para o post
Shyzoul    0
Shyzoul

oO'

da pa monitora os player msm :P

Compartilhar este post


Link para o post
Gorgulf    0
Gorgulf

Nossa muito bom

curti :P

Super Iper Mega Power Chuck Norris O.O

Compartilhar este post


Link para o post
toninho_xd    0
toninho_xd

Não entendi a utilidade disso .. poderia me explicar?=x

Compartilhar este post


Link para o post
GOD Weber    0
GOD Weber

Demais, valeu msm isso é mt necessário.

[#01] Uma pergunta:

Para o sistema funcionar, crie o seguinte caminho: data/logs/Player_Logger

È para criar um arquivo normal de texto?

[#02] Toninho_xd: Isso é para monitorar os seus players, que hrs morreram, logaram, qual ip que ele logo, e tals, é bem útil.

Compartilhar este post


Link para o post
Flatronez    1
Flatronez

@GOD Weber:

 

vc tem que criar a pasta 'logs' dentro da pasta data e nessa pasta vc cria a pasta 'Player_Logger'

 

o resto o script faz =]

Compartilhar este post


Link para o post
FriesMur    0
FriesMur

Bem Legal...

Gratz :]

Compartilhar este post


Link para o post
LaaH    0
LaaH

Mt mara

 

Gostei mt *-*

Compartilhar este post


Link para o post
MaximusZerk    0
MaximusZerk

Não tem uma versão dessa pro 0.3.5/8.52 não?

Compartilhar este post


Link para o post
Flatronez    1
Flatronez

Ainda não, mas logo logo atualizo o tópico.

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×