Continue assim ficou muito bom o trabalho ![]()
tem como fazer o sistema de task tbm plz?
info
Grupo: Campones
Registrado: 20/12/11
Posts: 45
Reputação: +11
Char no Tibia: Elrien

Continue assim ficou muito bom o trabalho ![]()
tem como fazer o sistema de task tbm plz?
info
Grupo: Visconde
Registrado: 21/08/11
Posts: 470
Reputação: +5
Char no Tibia: ...

vlw mano REP + so uma duvida quando o jogador é banido aparece uma brodclastle pra todos falando que o jogador tal foi banido ?
@ edit mais uma coisa tem um bug quando o player responde o sistema alguns segundos depois ele é kickado teria como arrumar isso de kickar o player depois que ele responder o sistema ?
Editado Dezembro 12 por KennyxD
Bugs corrigidos e broadcast adicionado.
Abraços.
info
Grupo: Campones
Registrado: 26/11/12
Posts: 72
Reputação: 0

Bacana a ideia, quando tiver uma solução pro problema vou por no meu tbm, legal, e dou rep+ tbm.
Opa editando, postei um pouco depois kkkkkkkk
quando add no server, vou testar, se funfar beleza rep+
tenho umas dúvidas tbm, se puder me ajudar...
http://www.xtibia.com/forum/topic/201195-pedidoduvida-duel-esp-evo/
abrass
Editado Dezembro 12 por zedarosquinha
info
Grupo: Infante
Registrado: 27/08/11
Posts: 1.9k
Reputação: +85
Gênero: Masculino
Char no Tibia: Bruno Maciel

So Uma Duvida !!
pega em versao 8.54 ??
info
Grupo: Visconde
Registrado: 21/08/11
Posts: 470
Reputação: +5
Char no Tibia: ...

vlw por arrumar os bugs e adicionar o brodcastle
so mais 2 pedidos de modificações no script 1 pode ser pra todos mesmo o outro pode ser individual te darei + 1 REP assm que chegar
1º colocar pro sistema não abordar os players que estiverem sem batle porque se não vai abordar os players afk no templo etc.
agora o segundo é individual porque nen todos usam o sistema de ban = do radbr feito pelo luckoake
2º teria como colocar pra min pra banir usando esse tipo de ban aki dai no caso você so pegaria a função dele de banir e colocaria no sitema pra min porque no meu otserver trabalho com sistema de warnings quando é banido igual no radbr ^^
function onSay(cid, words, param)
local t = string.explode(param, ",")
local a = {
[1] = 20,
[2] = 40,
[3] = 60,
[4] = 90,
[5] = 120,
[6] = 150,
[7] = 250,
[8] = 350,
[9] = 500,
[10] = 750,
[11] = 999,
}
local b = a[t[3]]
if not t[2] or tonumber(t[2]) or t[3] and not tonumber(t[3]) or t[4] then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Especifique nome,motivo,warnings(opcional).") return true
elseif not getPlayerGUIDByName(t[1]) then
doPlayerSendCancel(cid, "O jogador "..t[1].." não existe.") return true
elseif isAccountBanished(getAccountIdByName(t[1])) then
doPlayerSendCancel(cid, "O player "..t[1].." já está banido.") return true
elseif t[3] and tonumber(t[3]) < 1 then
doPlayerSendCancel(cid, "Desculpe, mas o mínimo de warnings é 1.") return true
elseif t[3] and tonumber(t[3]) > 11 then
doPlayerSendCancel(cid, "Desculpe, mas o máximo de warnings é 11.") return true
elseif not getWarnings(t[1]) or getWarnings(t[1]) < 0 then
setWarnings(t[1], 0)
elseif t[3] and tonumber(t[3]) <= getWarnings(t[1]) then
doPlayerSendCancel(cid, "Desculpe, mas esse player já tem "..getWarnings(t[1]).." warnings.") return true
end
if getPlayerByName(t[1]) then
doRemoveCreature(getPlayerByName(t[1]))
end
if t[3] then
doAddAccountBanishment(getAccountIdByName(t[1]), target, os.time() + (a[tonumber(t[3])]*3600*24), 5, 2, t[2], 0)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você baniu o jogador "..t[1]..". Warnings setadas de "..getWarnings(t[1]).." para "..t[3]..".")
broadcastMessage("Jogador "..t[1].." banido por "..getCreatureName(cid)..". Warnings setadas de "..getWarnings(t[1]).." para "..t[3]..". Comentário: "..t[2]..".")
setWarnings(t[1], tonumber(t[3]))
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você baniu o jogador "..t[1]..". Warnings setadas de "..getWarnings(t[1]).." para "..(getWarnings(t[1])+1)..".")
broadcastMessage("Jogador "..t[1].." banido por "..getCreatureName(cid)..". Warnings setadas de "..getWarnings(t[1]).." para "..(getWarnings(t[1])+1)..". Comentário: "..t[2]..".")
setWarnings(t[1], getWarnings(t[1])+1)
doAddAccountBanishment(getAccountIdByName(t[1]), target, os.time() + (a[getWarnings(t[1])]*3600*24), 5, 2, t[2], 0)
end
return true
end
@ oneshot achei outro bug o sitema não está banindo quando o tempo chega a 0 o player é apenas kickado apareceu a mensagem
23:01 [sistema Anti-Cheater] O jogador Test Druid foi banido por uso de bot.
mas apenas foi kickado não foi banido.
É que depende muito de quais são os parâmetros funcionais do seu servidor nesta função:
doAddPlayerBanishment(getPlayerGUID(cid), 3, (os.time() + (24 * 60 * 60)), 12, 2, "[sISTEMA ANTI-BOT]")
Testei em duas revisões do The Forgotten Server 0.4.0, uma de 8.62 e outra de 8.71 e obtive total funcionalidade. Se você estiver usando um servidor diferente daqueles que testei, poste aqui, posso descobrir os parâmetros corretos nas sources, mas preciso delas.
Abraços.
Editado Dezembro 13 por Oneshot
info
Grupo: Visconde
Registrado: 21/08/11
Posts: 470
Reputação: +5
Char no Tibia: ...

meu servidor e verção 8.60 =( e ve se voce consegue colocar pra banir a account setando warnings igual esse script de ban que postei ai se você presisar entender melhor esse sistema de ban
é esse aki o veja no link http://www.xtibia.com/forum/topic/198165-radbr-banishment-system-atualizado/
info
Grupo: Artesão
Registrado: 27/10/12
Posts: 102
Reputação: +12
Char no Tibia: Não tenho

Tem como colocar um comando, para que tutores mandem antcheater para o player? Exemplo.
/checar PlayerName
Ai manda o antcheater para o jogador?
info
Grupo: Marquês
Registrado: 29/10/11
Posts: 1.2k
Reputação: +134
Gênero: Masculino

Nossa muito bom,adicionando em meu server.
Parabéns.
info
Grupo: Artesão
Registrado: 09/06/09
Posts: 146
Reputação: +4
Char no Tibia: Shared Elven

Show heim, vou ver se adiciono ao meu servidor, parabéns pelo script.
[/code]
@ oneshot achei outro bug o sitema não está banindo quando o tempo chega a 0 o player é apenas kickado apareceu a mensagem
23:01 [sistema Anti-Cheater] O jogador Test Druid foi banido por uso de bot.
mas apenas foi kickado não foi banido.
Aconteceu o mesmo comigo.. uhsahusa
Sistema funfou, não deu erro no console, porem ele apenas kikou o personagem e mostrou no brodcast a msg que o mesmo foi banido!
Tfs 0.3.5 8.54 Talvez por isso!
info
Grupo: Visconde
Registrado: 21/08/11
Posts: 470
Reputação: +5
Char no Tibia: ...

@ Oneshot achei outro bug no sistema se o player deslogar e logar ele vai continuar sendo abordado e pah ate ai tudo bem ta certinho ai o player responde o sistema corretare ai aparece que ele respondeu certo abordagen desativada etc ai alguns segundos depois o player é banido isso so acontece se ele deslogar e logar pra responder se ele responder o sistema sem deslogar ele não é banido.
info
Grupo: Marquês
Registrado: 05/07/09
Posts: 1.3k
Reputação: +732
Nome: Oneshot's Anti-bot
Autor: Oneshot
Tipo: Sistema
Descrição
Este é um sistema de anti-bot simples, que envia um código numérico de 6 dígitos para cada jogador online e pede para que, através de um comando, este código de verificação seja ativado. O jogador tem um limite de tempo para fazer isso, e caso não faça, este é banido por um tempo configurável ou então, preso em um certo lugar do mapa.
Instalação
1. Em data/lib, crie um arquivo chamado antibot.lua e cole o conteúdo abaixo:
ANTIBOT_STORAGE_1 = 109001 ANTIBOT_STORAGE_2 = 109002 ANTIBOT_STORAGE_3 = 109003 ANTIBOT_TYPE = 2 -- [1] = Banimento, [2] = Prisão ANTIBOT_DURATION = 120 -- Em segundos ANTIBOT_DURATION_DELAY = 10 -- Em segundos ANTIBOT_MESSAGE = "[Oneshot's Anti-bot]\nSeu código de verificação é %s, responda através do comando !antibot, caso contrário, será ".. (ANTIBOT_TYPE == 1 and "banido" or "preso") ..".\nVocê têm %s segundos." ANTIBOT_BAN_TIME = 24 * 60 * 60 ANTIBOT_PRISON = {x = 1019, y = 867, z = 7} ANTIBOT_PRISON_FROMPOSITION = {x = 1018, y = 865, z = 7} ANTIBOT_PRISON_TOPOSITION = {x = 1020, y = 869, z = 7} ANTIBOT_PRISON_DURATION = 3 * 60 * 60 ANTIBOT_TEMPLE = {x = 1027, y = 912, z = 5} function AntiBot(cid) if not isCreature(cid) then return end local time = getCreatureStorage(cid, ANTIBOT_STORAGE_1) local answer = getCreatureStorage(cid, ANTIBOT_STORAGE_2) if getPlayerAccess(cid) >= 3 or not(getPlayerAccountManager(cid) == MANAGER_NONE) then return end if isInRange(getThingPosition(cid), ANTIBOT_PRISON_FROMPOSITION, ANTIBOT_PRISON_TOPOSITION) then return end if time == -1 and answer == -1 then return end if os.time() >= time then doCreatureSetStorage(cid, ANTIBOT_STORAGE_1, -1) doCreatureSetStorage(cid, ANTIBOT_STORAGE_2, -1) doBroadcastMessage("[ANTI-BOT] O jogador ".. getCreatureName(cid) .." foi ".. (ANTIBOT_TYPE == 1 and "banido" or "preso") .." por uso de bot.") if ANTIBOT_TYPE == 1 then doAddAccountBanishment(getPlayerGUID(cid), 0, (os.time() + ANTIBOT_BAN_TIME), 12, 3, "[ANTI-BOT]") doRemoveCreature(cid) else doTeleportThing(cid, ANTIBOT_PRISON) doCreatureSetStorage(cid, ANTIBOT_STORAGE_3, os.time() + ANTIBOT_PRISON_DURATION) addEvent(function() if isCreature(cid) then doTeleportThing(cid, ANTIBOT_TEMPLE) end end, ANTIBOT_PRISON_DURATION * 1000) end else doPlayerSendTextMessage(cid, MESSAGE_STATUS_WARNING, ANTIBOT_MESSAGE:format(answer, (time - os.time()))) addEvent(AntiBot, ANTIBOT_DURATION_DELAY * 1000, cid) end end2. Crie um arquivo chamado antibot.lua em data/globalevents/scripts, cole o conteúdo abaixo
Adicione a seguinte linha em globalevents.xml
3. Crie um arquivo em data/creaturescripts/scripts, cole o conteúdo abaixo
Adicione a seguinte linha em seu creaturescripts.xml
4. Crie um arquivo chamado antibot.lua em data/talkactions/scripts, cole o conteúdo abaixo
Adicione a seguinte linha em seu talkactions.xml
Você pode fazer várias configurações na lib do sistema
ANTIBOT_STORAGE_1 = 109001 ANTIBOT_STORAGE_2 = 109002 ANTIBOT_STORAGE_3 = 109003 ANTIBOT_TYPE = 2 -- [1] = Banimento, [2] = Prisão ANTIBOT_DURATION = 120 -- Em segundos ANTIBOT_DURATION_DELAY = 10 -- Em segundos ANTIBOT_MESSAGE = "[Oneshot's Anti-bot]\nSeu código de verificação é %s, responda através do comando !antibot, caso contrário, será ".. (ANTIBOT_TYPE == 1 and "banido" or "preso") ..".\nVocê têm %s segundos." ANTIBOT_BAN_TIME = 24 * 60 * 60 ANTIBOT_PRISON = {x = 1019, y = 867, z = 7} ANTIBOT_PRISON_FROMPOSITION = {x = 1018, y = 865, z = 7} ANTIBOT_PRISON_TOPOSITION = {x = 1020, y = 869, z = 7} ANTIBOT_PRISON_DURATION = 3 * 60 * 60 ANTIBOT_TEMPLE = {x = 1027, y = 912, z = 5}Como a duração do ban, a posição da prisão, o tempo de prisão, dentre outras coisas.
Como não consegui fazer funcionar o banimento de um jogador só na versão 0.3.6pl1, sendo isto possível apenas na 0.4.0, resolvi colocar para o tipo de banimento ser na conta toda.
Abraços.
Editado Abril 9 por CyberBot