Ir para conteúdo

Anti Multi-Client


giovanerox

Posts Recomendados

Nome: Anti MC 1.0

Compativel: Testado em servidor 8.54, acredito que funcione em todos.

Se for postar o script em outro local poste meus créditos.

 

Anti Mc 1.0

 

O script foi feito para proibir o uso de MC em seu servidor, espero que faça bom uso.

 

Vá em data\creaturescripts\scripts e crie um arquivo chamado antiMc.lua, coloque isso dentro, salve e feche:

 

--[[
    Anti MC
    By Fox
]]--

local serverNameInScroll = getConfigInfo('serverNameInScroll')

local config = {
       max = 0,     -- 
       text = "Multi-Client é proibido no "..serverNameInScroll.."!",  -- 
       group_id = 1  -- (normal players)
}

local accepted_ip_list = {}    --

local function antiMC(p)
       if #getPlayersByIp(getPlayerIp(p.pid)) >= p.max then
               doRemoveCreature(p.pid)

       end
       return TRUE
end

function onLogin(cid)
       if getPlayerGroupId(cid) <= config.group_id then
               if isInArray(accepted_ip_list,getPlayerIp(cid)) == FALSE then
                       addEvent(antiMC, 250, {pid = cid, max = config.max+1})
		doPlayerPopupFYI(cid, "Você foi expulso porque você está usando o Multi-Client.")
               end
       end
       return TRUE
end 

 

 

Agora vá em data\globalevents\creaturescripts.xml e adicione essa TAG:

 

<event type="antimc" name="antiMc" event="script" value="antiMc.lua"/>

 

Pronto, seu Anti MC ja está em seu servidor.

Editado por Fox1
Link para o comentário
Compartilhar em outros sites

Cara esse é do bom.. auishaiushauis x)

Favoritei no script, da pra evitar magebomb em wars, etc..

 

Só não dou rep+, porque ja não tenho mais pontos.. rsrs'

Abraços

Link para o comentário
Compartilhar em outros sites

Me desculpa se falar bobagem, mais ele kicka por IPs iguais certo? E no meu caso que tenha irmão que também joga os Ots junto comigo :worriedsmiley:

Mais é pc diferente? aqui em casa meu irmão joga no pc dele e eu no meu não é o mesmo IP não.

Link para o comentário
Compartilhar em outros sites

Parabéns manolo, eu tenho certeza que esse script vai ajudar muita gente, eu inclusive pretendo usar no meu servidor, sem mais.

 

Aff nem deu pra dar Rep++, mais depois eu dou :)

------------------------------------------------------------------------------------------------------------------------------------

- Att. Saymon

Editado por Saymon14
Link para o comentário
Compartilhar em outros sites

Este system só irá kickar tal player com o mesmo IP andress, se for em Lan House como os IPS São iguais, os caras não conseguiram jogar, e também se o pc for compartilhado como moskitinho disse.

 

 

Abraço!

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

Cara tenho quase certeza absoluta que não foi você que fez esse script, no minimo você pegou ele da otland, pois já vi vários desses por lá... Você não soube nem explicar as funções da configuração do script doreito.

 

Aah ele também não funcionará se você não adicionar o type de login ao invéz de "antimc" na TAG do .xml, assim:

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

Fiz o favor de arrumar e organizar o script, olha ai:

-- [( XTibia.com )] --

local config = {
max = 0, -- Maximo de Multi-Cliets permitidos.
text = "Sorry, multi-client is not permited!", -- Texto que irá aparecer!
group = 1 -- Grupo que será proibido usar MC. (Esta para player normal)
}

local ip_accepted = {} -- Aqui você colocará IPS que serão aceitados Multi-Client...

function antiMC(p)
	if #getPlayersByIp(getPlayerIp(p.pid)) >= p.max then
		doRemoveCreature(p.pid)
	end
return TRUE
end

function onLogin(cid)
       if getPlayerGroupId(cid) <= config.group then
	if isInArray(ip_accepted, getPlayerIp(cid)) == FALSE then
			addEvent(antiMC, 250, {pid = cid, max = config.max+1})
			doPlayerPopupFYI(cid, config.text)
		end
	end
return TRUE
end

Até mais... ;)

Editado por Doidin
Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

E... parece-me rip tambem ;/

Se liga ai, pra que isso ?

addEvent(antiMC, 250, {pid = cid, max = config.max+1}) <- Esse wait não é nescessario.

doPlayerPopupFYI(cid, config.text)

E mais facil assim:

doPlayerPopupFYI(cid, config.text)

antiMC(...)

 

/\ E se um evento remover o player nesses 250 milésimos de segundo ? BUG!

 

Até mais.

Link para o comentário
Compartilhar em outros sites

  • 3 months later...
×
×
  • Criar Novo...