BE

[Creaturescript] Autosave_Player + Log_Ipplayer

Por Beeki, 06 de mar. de 2012 em Globalevents e Spells

sistema de save anti rollback
otserv
tibia
script
19
6.8k
BeekiB
06 de março de 2012 às 12:05

Bem esse script é baseado em um antigo post do Gustavo ( http://www.xtibia.co...to-save-player/ ) aqui no XTibia, um sistema que executa um save a cada 30 Minutos no Player assim evitando de rollback caso o servidor cair.

 

Sistema de LOG_IP, é uma boa eu uso pra gravar o IP do player, ajuda muito a identificar players que tentam Nukar o servidor, assim facilitando deletar os personagens dele !

 

savePlayer.lua

 

local save = {}
function saveRepeat(cid)
if not isPlayer(cid) then return true end
doPlayerSave(cid)
doPlayerSendTextMessage(cid,19, 'Your character\'s progress is saved.')
doSendMagicEffect(getThingPos(cid), 11)
save[cid] = addEvent(saveRepeat, math.random(30,43) *60*1000, cid)
end
function onLogin(cid)
save[cid] = addEvent(saveRepeat, math.random(30,43)*60*1000, cid)
return true
end
function onLogout(cid)
stopEvent(save[cid])
return true
end

 

vá no creaturescripts.xml e adicione isso.

 

 <event type="login" name="savePlayer" event="script" value="savePlayer.lua" />
 <event type="logout" name="savePlayer_L" event="script" value="savePlayer.lua" />

 

apos feito isso, vá até o login.lua e adicione isso antes o return true

 

registerCreatureEvent(cid, "savePlayer_L")

 

Sistema log_IP.lua

 

function onLogin(cid)
local tmp = {playerName = getPlayerName(cid), ip = getPlayerIp(cid)}
db.executeQuery("UPDATE `players` SET `ip` = '" .. doConvertIntegerToIp(tmp.ip) .. "' WHERE name = '"..tmp.playerName.."';")
return true
end

 

Após feito o arquivo do Script, execute esse comando no seu Banco de dados.

 

ALTER TABLE players ADD ip varchar(255) NOT NULL

 

Créditos: OTland Sync

Editado Março 6 por Beeki

alldakieA
06 de março de 2012 às 13:26

Ficou bom, continue trazendo conteudos para o Xtibia!

+REP

VodkartV
06 de março de 2012 às 13:43

achei que ficou legal o resultado

rep+

BeekiB
06 de março de 2012 às 13:51

De nada amigo, :D

06 de março de 2012 às 14:12

não precisava da parte do código de onLogout, era só vc colocar pra remover ele da tabela caso ele não encontrasse o player.

 

mas ta legal, té

BeekiB
06 de março de 2012 às 14:57

não precisava da parte do código de onLogout, era só vc colocar pra remover ele da tabela caso ele não encontrasse o player.

 

mas ta legal, té

 

vlw!

LolkskyL
06 de março de 2012 às 15:24

Isso não irá gerar lag não? ;s

BeekiB
06 de março de 2012 às 17:56

depende da Maquina que você utiliza, meu dedicado é 2.5 GB de ram e nunca tive problemas ao usar esse script, só não recomendo em VPS, até!

kelvinvictorK
09 de março de 2012 às 13:44

Xiii, eu ja ia usar no vps.

 

Mais só uma dúvida, como fasso para executar o comando no SQL não n MYSQL

BeekiB
10 de março de 2012 às 10:13

Xiii, eu ja ia usar no vps.

 

Mais só uma dúvida, como fasso para executar o comando no SQL não n MYSQL

 

Não sei amigo, nunca usei SQL, malz, até

Piabeta KunP
14 de março de 2012 às 06:46

creio que é muito bom, pena q concerteza geraria lags, em ot cheios, pois seria muitos players pra salvar ao msmo tempo e seria mais cabivel usar comand de save, salva qm quer a hora que quizer!

 

mais msmo assim pode ser muito ultilizavel, da hora!

BeekiB
15 de março de 2012 às 09:32

creio que é muito bom, pena q concerteza geraria lags, em ot cheios, pois seria muitos players pra salvar ao msmo tempo e seria mais cabivel usar comand de save, salva qm quer a hora que quizer!

 

mais msmo assim pode ser muito ultilizavel, da hora!

 

esse script não da save em todos os players de vez do OT, e sim em um por vez, tipo: eu Loguei as 3 Horas meu char so ira ser salvo as 3:30 já você que logou as 3:01 só ira ser salvo as 3:31 entende ?

Piabeta KunP
15 de março de 2012 às 09:52

msmo assim faraá muitos saves aleatorias isso da mais lagg do msmo jeito!

BeekiB
15 de março de 2012 às 10:11

msmo assim faraá muitos saves aleatorias isso da mais lagg do msmo jeito!

 

Amigo, o script ta ai, se não quer usar não use, até fui.

Piabeta KunP
15 de março de 2012 às 10:13

msmo assim faraá muitos saves aleatorias isso da mais lagg do msmo jeito!

 

Amigo, o script ta ai, se não quer usar não use, até fui.

 

nao entendi o pq da forma agressiva, eu fiz um comentario, nao usei palavras ruin contra niguem e nao pixei nada, aprende ver criticas construtivas! e nao me faça perder tempo vendo quotes idiotas!