{T}ive um idéia babaca enquanto estava atoa em casa...
.-.
porque não fazer um anti-bot system?
lol
Gtz champz!!! ¬¬
{A}lguns detalhes do sistema:
1º - Para não atrapalhar wars ele não faaz a verificação o player está PZ Locked.
2º - Se você der logout sem fazer a verificação, ao entrar novamente ele lhe informará o último código não confirmado por você.
3º - Os gods/gms/account managers não recebem nenhuma msg por motivos óbvios.
{E}m globalevents.xml localizado na pasta data\globalevents coloque a linha abaixo antes de </globalevents>:
<globalevent name="anthaab" interval="900" event="script" value="anthaab.lua"/>
{A}pós fazer isto, vamos criar o script correspondente ao evento. Crie um arquivo chamado anthaab.lua em data\globalevents\scripts com o code abaixo:
function onThink(interval, lastExecution)
for x=1,#getOnlinePlayers() do
if getPlayerAccess(getCreatureByName(getOnlinePlayers()[x])) < 4 and (not isPlayerPzLocked(getCreatureByName(getOnlinePlayers()[x]))) and getOnlinePlayers()[x] ~= "Account Manager" then
if getPlayerStorageValue(getCreatureByName(getOnlinePlayers()[x]),9564) == -1 then
local numero = math.random(0,99999)
doPlayerSendTextMessage(getCreatureByName(getOnlinePlayers()[x]), MESSAGE_STATUS_WARNING, 'Anti-bot system by Antharaz. Seu número de confirmação anti-bot é: '..numero..'. Por favor digite !anthaab XXXXX onde XXXXX é seu número de confirmação.')
setPlayerStorageValue(getCreatureByName(getOnlinePlayers()[x]),9564,numero)
elseif getPlayerStorageValue(getCreatureByName(getOnlinePlayers()[x]),9565) == -1 then
setPlayerStorageValue(getCreatureByName(getOnlinePlayers()[x]),9565,1)
doPlayerSendTextMessage(getCreatureByName(getOnlinePlayers()[x]), MESSAGE_STATUS_WARNING, 'Último aviso. Confirme seu número gerado pelo sistema anti-bot pelo comando !anthaab ou você será banido.')
elseif getPlayerStorageValue(getCreatureByName(getOnlinePlayers()[x]),9565) == 1 then
doAddAccountBanishment(getAccountIdByName(getOnlinePlayers()[x]))
setPlayerStorageValue(getCreatureByName(getOnlinePlayers()[x]),9565,-1)
doRemoveCreature(getCreatureByName(getOnlinePlayers()[x]))
end
end
end
return TRUE
end
{A}gora vá em talkactions.xml na pasta data/talkactions e adicione a linha abaixo antes de </talkactions>:
<talkaction words="!anthaab" event="script" value="anthaab.lua"/>
{A}gora em data/talkactions/scripts crie um arquivo chamado anthaab.lua com o code abaixo:
function onSay(cid, words, param, channel)
if getPlayerAccess(cid) > 3 then
return false
elseif getPlayerStorageValue(cid,9564) == -1 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, 'Você ainda não recebeu um novo número de confirmação anti-bot.')
elseif tonumber(param) == getPlayerStorageValue(cid,9564) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, 'Confirmado com sucesso. Bom jogo.')
doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, 'Antha anti-bot system by Antharaz')
setPlayerStorageValue(cid,9564,-1)
setPlayerStorageValue(cid,9565,-1)
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING,'Número de confirmação errado. O seu número de confirmação é '..getPlayerStorageValue(cid,9564)..'.')
end
return true
end
{A}gora vá em data\creaturescripts\scripts, abara o arquivo login.lua e coloque o código abaixo antes do return true:
if getPlayerStorageValue(cid,9564) > -1 then
doPlayerSendTextMessage(cid,MESSAGE_STATUS_WARNING,'Você não confirmou seu último número do sistema anti-bot. Ele é: '..getPlayerStorageValue(cid,9564)..'.')
end
{V}ídeo:
http://www.screencast.com/t/MmM5NjFiY
PS:.. o vídeo demora um pouco para começar mesmo...