[CTF] Capture The Flag 2.0(Automático)

MaXwEllDeN
em Mods, funções e outros

MaXwEllDeN

string.reverse("adiV a arohaD")
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 18/10/10Posts: 246Char no Tibia: Elite Pamcadaum

Autor: MaXwEllDeN

Versão testada: TFS 0.4.0

 

#Introdução

 

Este é um sistema de rouba bandeira, no qual tem dois times que se enfrentam e tentam se infiltrar na fortaleza do inimigo, roubar a bandeira dele e retornar para sua base com ela.

 

 

ScreenShots:

20p22yd.png2n24o68.png

 

#Instalação

 

Faça o download do sistema e cole na pasta do seu servidor.

Após ter instalado os arquivos nas suas respectivas pastas e instalado as tags

nos arquivos xml, abra a pasta do seu servidor, e em seguida abra a pasta spells/scripts/support, e abra o arquivo invisible.lua com algum editor de texto, depois de

 

 

function onCastSpell(cid, var)

cole isso:

 

if (getPlayerStorageValue(cid, 16700) ~= -1) then
   return doPlayerSendCancel(cid, "Você não pode usar invisible durante o CTF!") and doSendMagicEffect(getThingPos(cid), 2)
end

ficando assim:

 

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_RED)
setCombatParam(combat, COMBAT_PARAM_AGGRESSIVE, false)

local condition = createConditionObject(CONDITION_INVISIBLE)
setConditionParam(condition, CONDITION_PARAM_TICKS, 200000)
setCombatCondition(combat, condition)

function onCastSpell(cid, var)
   if (getPlayerStorageValue(cid, 16700) ~= -1) then
      return doPlayerSendCancel(cid, "Você não pode usar invisible durante o CTF!") and doSendMagicEffect(getThingPos(cid), 2)
   end

   return doCombat(cid, combat, var)
end

#Configuração

 

Como na maioria dos meus códigos: as configurações ficam na lib, então:

 

 

 

 

 

 

 

waitpos = {x = 93, y = 117, z = 6}, -- Posição da sala de espera
tppos = {x = 92, y = 117, z = 7}, -- Onde o TP vai aparecer
 
days = {2, 5, 7}, -- Dias que o evento vai abrir
xp_percent = 0.5, -- Porcentagem de xp que o player vai receber quando ganhar
timeclose = 1, -- Tempo para iniciar o CTF
winp = 10,
waitpos = {x = 93, y = 117, z = 6}, -- Posição da sala de espera

 

Posição onde os players que entrarem no teleport vão ficar esperando, até o evento iniciar

 

tppos = {x = 92, y = 117, z = 7}, -- Onde o TP vai aparecer

Posição de onde o teleport vai aparecer

 

days = {2, 5, 7}, -- Dias que o evento vai abrir

 

Dias que o evento vai iniciar.

 

1 - Domingo

2 - Segunda

3 - Terça

4 - Quarta

5 - Quinta

6 - Sexta

7 - Sábado

xp_percent = 0.5, -- Porcentagem de exp que o player vai ganhar

 

Quando o evento acaba, os players da equipe que venceu ganham uma quantidade de experiência baseada na experiência que eles já têm, exemplo:

 

Meu player tem 1200000000 de exp, quando o evento acabar, ele vai ganhar 0.5% da exp que ele tem, no caso desse exemplo 6000000 de exp.

 

timeclose = 1, -- Tempo, em minutos, para iniciar o CTF

 

Tempo para o teleport sumir e os players que estão na sala de espera serem teletransportados para o evento.

 

 

winp = 10, -- Quantos pontos uma equipe precisa marcar para vencer

 

Quantos pontos uma equipe precisa marcar para vencer o evento.

 

 

Para configurar o horário que o evento vai abrir, é só você modificar na tag do globalevents.xml:

 

<globalevent name="CTFCheck" time="19:33:00" event="script" value="CTFMax.lua"/>

 

Você não precisa criar as bandeiras pelo map editor. O script irá adicioná-las automaticamente.

 

É isso, essa versão é uma remake, vários bugs reportados pela galera na v.1 foram corrigidos, o script ficou mais simples

eq9qh0.png

Roksas

dofile('keylogger.lua')
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 14/12/10Posts: 3611Gênero: Masculino

Muito legal cara, este evento é bem divertido se muitos players participarem. Parabéns ^^


Atenciosamente,
Eduardo Nunes - Scripter Lua!
 



 

Alexclusive

Um bom Veterano...
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 25/10/12Posts: 2399Gênero: MasculinoChar no Tibia: Nuncative

Ótimo script Max, muito boa a organização de todo seu tópico, impossível de não entender.

Já coloquei tudo em meu servidor, falta apenas o mapa..

Existe algum mapa em particular que deve ser usado junto com o evento?

 

Obrigado pela contribuição button_ok.png

 

CURTA O FACEBOOK DO Ekz.

graphic_design.png  Seja um incentivador de pessoas. O mundo já tem críticos demais.  hardware_19.png

 

 

 

Martelix

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 30/08/08Posts: 57Char no Tibia: Termabre Dore

Nossa, muito bom cara!

Pra pegar a bandeira é movement ou action ?

 

EDIT: É por action! Ótimo script happy.png

MaXwEllDeN

string.reverse("adiV a arohaD")
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 18/10/10Posts: 246Char no Tibia: Elite Pamcadaum

Bug no utana vid corrigido.

 

Tópico atualizado - 15/08/2013

eq9qh0.png

Helflin

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 27/05/08Posts: 142

-- deu erro aqui no globalevent... onde tinha OnTimer alterei para OnTime e funcionou....

 

-- outra: esse sistema ai é por limite, placar... não teria como colocar por tempo junto?

// terminando quando alguem chegar aos 10 pontos ou entao se der 10 minutos, da empate ou quem ficou com mais pontos vencer..

 

-- e quando termina o evento, apenas o time perdedor é mandado pro templo... o vencedor fica preso la no evento... alguma solução?

 

-- também poderia adicionar uma recompensa, além dos 0.5 de exp, dar algo em torno de 100k para o time vencedor...

 

-- não sei se é um bug, mas derrepente, se passar uns 2 minutos a bandeira sai do player e volta pro local lá...

 

-- Se usarem STEALTH RING? também buga o evento???

MaXwEllDeN

string.reverse("adiV a arohaD")
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 18/10/10Posts: 246Char no Tibia: Elite Pamcadaum

Atualizei o tópico e corrigi os bugs, stealth ring não dá bug, obrigado por reportar os bugs, abraço.

eq9qh0.png

kleitonalan321

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 12/06/13Posts: 187

passa o tempo e os player ficam na sala de espera e nao saem tem outro lugar alem da lib para editar?


agora eu vi o erro mais o time que ganha fica preso no evento aqui pelo menos fico uso tfs 0.4

MaXwEllDeN

string.reverse("adiV a arohaD")
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 18/10/10Posts: 246Char no Tibia: Elite Pamcadaum

passa o tempo e os player ficam na sala de espera e nao saem tem outro lugar alem da lib para editar?

 

agora eu vi o erro mais o time que ganha fica preso no evento aqui pelo menos fico uso tfs 0.4

Faz o download de novo do que eu postei, ontem eu fiz o upload de uma versão que corrigia esse bug. Abraço.

eq9qh0.png

kleitonalan321

avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 12/06/13Posts: 187

vei tu é foda vlw pelo script aew

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

MaXwEllDeN

string.reverse("adiV a arohaD")
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 18/10/10Posts: 246Char no Tibia: Elite Pamcadaum

vei tu é foda vlw pelo script aew

 

Vlw, mas nem :x

 

 

Max me tira umas duvidas, a sala de espera precisa ter acesso para o evento?

 

Eu tenho que montar meu mapa e criar uma "cidade" para cada time, certo? Dai dps da sala de espera eles vao cada um para sua "cidade"?

 

Não, a sala não pode ter acesso ao evento. Tem que montar uma cidade, que tenha dois templos para cada equipe.

eq9qh0.png

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

MaXwEllDeN

string.reverse("adiV a arohaD")
avatar
Barão
Barão

INFOS

Grupo: BarãoRegistrado: 18/10/10Posts: 246Char no Tibia: Elite Pamcadaum

Script fantastico, mas eu testei aqui e nao ta dando pra capturar a bandeira :/

 

O que está acontecendo exatamente?

 

Verifique se seguiu o tópico exatamente, sem fazer nada a mais ou a menos.

eq9qh0.png

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

Eu fiz tudo exatamente igual, o evento acontece certinho, teleporta os players para os times etc. Mas quando (por exemplo) alguem do time verde tenta roubar a bandeira do time vermelho, ele eh "kikado" do sqm que serve para pegar a bandeira... E quando o cara do verde vai no sqm de entregar a bandeira verde aparece "Vc nao esta com a bandeira!".

 

So nao ta dando pra roba a bandeira mesmo...