Ir para conteúdo

[Pedido] Sistema Anti-Mc


Fprince

Posts Recomendados

Ola pessoal, estou aqui porque presciso de um sistema-anti Multi-client compativel com meu ot, que eh o Carlin War 8.6 (http://www.xtibia.com/forum/topic/146454-860-carlin-war/), eu ja testei muitos sistemas, acho que mais de 10 qeu eu achei aqui no xtibia e em outros forums, mais nenhum funcionou, entaum se alguem souber fazer ou ja tiver esse sistema compativel com o meu server por favor me passe! Obrigado!!

Link para o comentário
Compartilhar em outros sites

Bem vamos ao script:

Va na pasta do seu server,data,creaturescripts,creaturescripts.xml

E add isso:

<event type="login" name="playercheck" script="playercheck.lua"/>

 

Agora va na pasta scripts e crie um arquivo com o nome playercheck.lua

 

E add isso dentro:

 

function onLogin(cid, words, param, channel)

local _ip = nil

local p = 0

local list, ips = {}, {}

local players = getPlayersOnline()

for i, pid in ipairs(players) do

local ip = getPlayerIp(pid)

local tmp = table.find(ips, ip)

if(tmp ~= nil and (not _ip or _ip == ip)) then

if(table.countElements(list, ip) == 0) then

list[players[tmp]] = ip

end

 

list[pid] = ip

end

 

table.insert(ips, ip)

end

 

if(table.maxn(list) > 0) then

meip = getPlayerIp(cid)

mename = getCreatureName(cid)

for pid, ip in pairs(list) do

local metmp = table.find(ips, meip)

if (metmp ~= nil) then

p = p + 1

end

end

if (p <= XXX) then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce tem ".. p .." chars Online!")

end

 

if (p > XXX) then

doRemoveCreature(cid, mename)

end

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Voce tem ".. p+1 .." char Online!")

end

 

return true

end

 

 

 

Legenda:

XXX:Ai voce poem quantas contas entraram no server com o mesmo ip.

 

Fim.

 

Creditos:

90%Zerosky

10%TheDevilZ

Link para o comentário
Compartilhar em outros sites

mesmo esquema do de cima, só que vc só configura o limite ali...

 

LIMITE = 1 -- limite de players com mesmo ip

function onLogin(cid, words, param, channel)
x  = {}
for _, pid in pairs(getPlayersOnline()) do
	if getPlayerIp(pid) == getPlayerIp(cid) then
		table.insert(x, pid)
	end
end
if #x > LIMITE then
	for _,pid in pairs(x) do
		doPlayerSendTextMessage(pid, 27, "Este Char Será logado em 5 segundos por haver outro char com mesmo ip.")
		addEvent(doRemoveCreature, 5000, pid)
	end
end
return true
end

 

se variso players tiver em lan, vai ser meio tenso.

Link para o comentário
Compartilhar em outros sites

  • 6 months later...
  • 2 months later...
×
×
  • Criar Novo...