CA

Pass Sytem

Por caotic, 01 de jun. de 2012 em Globalevents e Spells

pass
segurança sytem
pass sytem
senha system
script
otserv
5
1.2k
caoticC
01 de junho de 2012 às 14:00

Pass sytem e um sistema de sub-senha.

As contas e as senhas fica guardado na database e assim possiveis "hackers" podem hackear contas e principalmente contas de god,cms e gms.

Então pensando nisso eu criei um sistema de sub-senha

O GOD,CM ou GM entra no otserv ele e exigido uma senha e se nao for dita em menos de 1 minuto e removido e seu ip e banido assim manda um mensagem global dizendo tentativa de hacker.

 

Para dizer a senha fale /pass(e a senha) como /pass CAOTIC

 

Alem de prevençao o sistema informa possiveis hackers assim saberá se estão tentando te hackear.

 

 

A senha e editavel e pode ser mudado a qualquer instante.

 

 

Vamos começar

 

 

 

Crie um arquivo lua chamado pass na pasta creaturescripts/scripts e adicione isto

 

local pass = {
exhausted = 60,
storage = 5858
}
function onThink(cid, interval, lastExecution, thinkInterval)
local ip = getPlayerIp(cid)
if getPlayerGroupId(cid) <= 4 then
return true
end
if getPlayerStorageValue(cid, 28008) == 1 then
return true
end
if not (getPlayerStorageValue(cid, pass.storage) > os.time() and getPlayerStorageValue(cid, pass.storage) < 100+os.time()) then
doPlayerBroadcastMessage(cid, "Uma tentatica de hacker foi anulada")
doRemoveCreature(cid)
doAddIpBanishment(ip)
return true
end
return true
end

Agora na mesma pasta CreatureScripts crie um novo arquivo lua chamado loginpass e coloque isto

 

 

local pass = {
exhausted = 60,
storage = 5858
}

function onLogin(cid)
if getPlayerGroupId(cid) <= 4 then
return true
end
setPlayerStorageValue(cid, pass.storage, os.time() + pass.exhausted)
doPlayerSendTextMessage(cid,22,"Diga a a senha de acesso adminstrador")
return true
end


 

 

 

 

No mesmo lugar crie um arquivo lua chamado logoutpass e adicone isso

 

 

 

 

function onLogout(cid)
setPlayerStorageValue(cid, 28008, 2)
return true
end

 

 

Agora vá em creaturescripts.xml abra e adicione

 

 

 

<event type="think" name="pass" event="script" value="pass.lua"/>
<event type="login" name="PlayerLogin" event="script" value="login.lua"/>
<event type="login" name="loginpass" event="script" value="loginpass.lua"/>

 

 

Agora vamos em creaturescripts/scripts e vamos registrar o evento antes do ultimo return adicione isto

 

	registerCreatureEvent(cid, "loginpass")
	registerCreatureEvent(cid, "logoutpass")
	registerCreatureEvent(cid, "pass")

 

 

 

Agora vá em talkations e crie um arquivo lua chamado pass

 

 

 

function onSay(cid, words, param)

if(param == '') then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command param required.")

 

return true

end

 

if(param == 'CAOTIC') then

setPlayerStorageValue(cid, 28008, 1)

doPlayerSendTextMessage(cid,22,"Sua senha esta correta")

doCreatureSetNoMove(cid, false)

return true

end

doPlayerSendTextMessage(cid,22,"Sua senha esta Incorreta")

return true

end

 

 

 

 

 

 

 

Agora coloque esta tag em talkations.xml

 

<talkaction words="/pass" case-sensitive="no" event="script" value="pass.lua"/>

 

 

 

 

 

Para editar a senha no lugar onde esta CAOTIC mude para a senha que quizer mais não retire os ''.

 

E não esqueça de falar a senha para seus gods,cms e gms

OneshotO
01 de junho de 2012 às 15:12

Bem legal, continue estudando Lua e criando mais scripts

 

Rep+

Editado Junho 1 por Oneshot

VodkartV
01 de junho de 2012 às 15:58

Excelente idéia caotic, vejo que você progrediu muito!

Da para melhorar o script sim, mas isso você é capaz, fora isso ta d+

parabéns, depois eu reputo porque acabou minha rep de hoje ='[

BeekiB
04 de junho de 2012 às 10:54

ótimo SCRAPT Caotic. KKK

 

Enfim, uma desafio para você. Que tal fazer esse sistema para os players também? esse sistema seria ideal para um servidor que estou projetando.

 

Abraços.

SubwatS
04 de junho de 2012 às 11:23

muito bom o script amigo, bem funcional você poderia fazer um script pro cara setar a password in-game exemplo o cara digita !setpass gean123 ae muda a pass pra gean123.

=)

 

só não reputo pq ja reputei hoje mas vlw ae =]