Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Evento Devovorga

testado TFS 1.0 tíbia 10.37 mapa global

 

breve explicação do evento

obejetivo: mata os 5 bosses do evento rise devovorga para liberar acesso a sala do boss devovorgar com tempo de 5 horas para conclusão do evento.

bosses: 

Anmothra

Irahsae
Teneshpar
Phrodomo
Chikhaton
 
vamus para os scripts

Data/creaturescripts/scripts

cria uma pasta com nome "evento devovorga" dentro da pasta cria arquivo com nome bossdevovorga.lua copia e cola tudo dentro:


local bosses = {
["devovorga"] = 206
}

function onKill(cid, target)
if(bosses[string.lower(getCreatureName(target))]) then
if(string.lower(getCreatureName(target)) == "") then
setGlobalStorageValue(bosses[string.lower(getCreatureName(target))], getGlobalStorageValue(bosses[string.lower(getCreatureName(target))]) < 1 and 1 or 2)
if(getGlobalStorageValue(bosses[string.lower(getCreatureName(target))]) == 2) then
end
return true
end
broadcastMessage("Thanks to the mighty and fearless Tibians who drove Devovorga back into her abyss, your regeneration has been improved.", MESSAGE_EVENT_ADVANCE)
broadcastMessage("You made it - Devovorga, the incredibly powerful weapon sealed deep below Vengoth, was destroyed.", MESSAGE_EVENT_ADVANCE)
broadcastMessage("Upon her death, energy was released all over the world - the next month, it will boost your health and mana regeneration.", MESSAGE_EVENT_ADVANCE)
broadcastMessage("Congratulations, Tibians!", MESSAGE_EVENT_ADVANCE)
setGlobalStorageValue(bosses[string.lower(getCreatureName(target))], 2)
addEvent(setGlobalStorageValue, 3 * 60 * 1000, bosses[string.lower(getCreatureName(target))], 0)
end
return true
end

proximo passo

Data/creaturescripts/scripts

cria uma pasta com nome "evento devovorga" dentro da pasta cria arquivo com nome bosses.lua copia e cola tudo dentro:

local tpId = 11798
local tps = {
        ["Anmothra"] = {pos = {x=32955, y=31519, z=9}, toPos = {x=32950, y=31514, z=9}, time = 18000},
		["Irahsae"] = {pos = {x=32942, y=31514, z=9}, toPos = {x=32937, y=31510, z=9}, time = 18000},
		["Teneshpar"] = {pos = {x=32947, y=31506, z=9}, toPos = {x=32936, y=31524, z=9}, time = 18000},
		["Phrodomo"] = {pos = {x=32937, y=31521, z=9}, toPos = {x=32913, y=31515, z=9}, time = 18000},
		["Chikhaton"] = {pos = {x=32913, y=31527, z=9}, toPos = {x=32946, y=31516, z=10}, time = 18000},
}

function removeTp(tp)
        local t = getTileItemById(tp.pos, tpId)
        if t then
                doRemoveItem(t.uid, 1)
                doSendMagicEffect(tp.pos, CONST_ME_POFF)
        end
end

function onDeath(cid)
        local tp = tps[getCreatureName(cid)]
        if tp then
                doCreateTeleport(tpId, tp.toPos, tp.pos)
                doCreatureSay(cid, "O teleport irá sumir em 5 horas corra grandes aventureiros", TALKTYPE_ORANGE_1)
                addEvent(removeTp, tp.time*1000, tp)
        end
        return TRUE
end

proximo passo

Data/creaturescripts

abra o arquivo creaturescripts.xml adicione essas duas linhas:

<event type="death" name="teleport" script="evento devovorga/bosses.lua"/>
<event type="kill" name="bossdevovorga" script="evento devovorga/bossdevovorga.lua"/>

arquivos creaturescripts finalizado

 

proximo passo

Data/movements/scripts

criar um arquivo chamado teleportarea.lua copiar e colar tudo dentro:

function onStepIn(cid, item, position, fromPosition)
	local teleport = {
		action = item.actionid,
		[17001] = {x=32975, y=32427, z=8},
		[17002] = {x=32976, y=32429, z=7},
		[17003] = {x=32634, y=32305, z=8},
		[17004] = {x=32629, y=32329, z=7},
		[17005] = {x=32131, y=31835, z=8},
		[17006] = {x=32169, y=31829, z=7},
		[17007] = {x=31936, y=31538, z=8},
		[17008] = {x=31965, y=31582, z=7},
		[17009] = {x=33325, y=31741, z=8},
		[17010] = {x=33325, y=31741, z=7},
		[17011] = {x=32956, y=31516, z=8},
		[17012] = {x=32949, y=31520, z=7},
		[17013] = {x=32956, y=31519, z=9},
		[17014] = {x=32943, y=31514, z=9},
		[17015] = {x=32947, y=31507, z=9},
		[17016] = {x=32937, y=31522, z=9},
        [17017] = {x=32948, y=31520, z=7}		

	}

	if(not isPlayer(cid)) then
		return true
	end

	doTeleportThing(cid, teleport[item.actionid])

	return true
end

proximo

Data/movements/scripts

criar um arquivo chamado devo.lua copiar e colar tudo dentro:

local teleports2 = {
	[2181] = {text = "Ate o Proximo Evento", newPos = {x = 32948, y = 31520, z = 7}, storage = 7},
}

local teleports = {	
	[2182] = {boss = true, text = "Parabéns você concluiu o Evento Rise of Devovorga", bossStorage = 206, newPos = {x = 32945, y = 31521, z = 9}, storage = 7},

}

function onStepIn(cid, item, position, lastPosition)
	if (item.uid == 2181) then
		if(getPlayerStorageValue(cid,1050) <= teleports2[item.uid].storage) then
			setPlayerStorageValue(cid, 1050, teleports2[item.uid].storage)
		end
		doTeleportThing(cid, teleports2[item.uid].newPos)
		doSendMagicEffect(teleports2[item.uid].newPos, CONST_ME_TELEPORT)
		doCreatureSay(cid, teleports2[item.uid].text, TALKTYPE_ORANGE_1)
	return true	
	end
	if(teleports[item.uid].boss) then
		if(getGlobalStorageValue(teleports[item.uid].bossStorage) == 2) then
			if(getPlayerStorageValue(cid,1050) <= teleports[item.uid].storage) then
				setPlayerStorageValue(cid, 1050, teleports[item.uid].storage)
			end
			doTeleportThing(cid, teleports[item.uid].newPos)
			doSendMagicEffect(teleports[item.uid].newPos, CONST_ME_TELEPORT)
			doCreatureSay(cid, teleports[item.uid].text, TALKTYPE_ORANGE_1)
		else
			doTeleportThing(cid, {x = 32912, y = 31515, z = 10})
			doSendMagicEffect({x = 32912, y = 31515, z = 10}, CONST_ME_TELEPORT)
			doCreatureSay(cid, "Precisa Concluir o evento Rise of Devovorga.", TALKTYPE_ORANGE_1)
		end
		return true
	end

	if(teleports[item.uid].storage) then
		if(getPlayerStorageValue(cid, 1050) >= teleports[item.uid].storage) then
			doTeleportThing(cid, teleports[item.uid].newPos)
			doSendMagicEffect(teleports[item.uid].newPos, CONST_ME_TELEPORT)
			doCreatureSay(cid, teleports[item.uid].text, TALKTYPE_ORANGE_1)
		else
			doTeleportThing(cid, lastPosition)
			doSendMagicEffect(getCreaturePosition(cid),10)
			doCreatureSay(cid, 'You don\'t have enough energy to enter this portal', TALKTYPE_ORANGE_1)
		end
		return true
	end

	if(teleports[item.uid]) then
		doTeleportThing(cid, teleports[item.uid].newPos)
		doSendMagicEffect(teleports[item.uid].newPos, CONST_ME_TELEPORT)
		doCreatureSay(cid, teleports[item.uid].text, TALKTYPE_ORANGE_1)
		return true
	end
	return true
end

proximo passo

Data/movements

abra o arquivo movements.xml adicione essas duas linhas:

<movevent event="StepIn" fromaid="17001" toaid="17016" script="teleportarea.lua"/>
<movevent event="StepIn" fromuid="2181" touid="2182" script="devo.lua"/>	

arquivos movements finalizado

 

proximo arquivos

Data/raids

criar um arquivo chamado devovorga.lua copiar e colar tudo dentro:

<raid>
<announce delay="1000" type="Event" message="Something is rumbling deep underground all over the world" />
<announce delay="20000" type="Event" message="The Power of Devovorga has risen again." />
<singlespawn delay="20000" name="Anmothra" x="32634" y="32309" z="8" />
<announce delay="30000" type="Event" message="The Fury of Devovorga has risen again." />
<singlespawn delay="30000" name="Irahsae" x="32967" y="32405" z="8" />
<announce delay="40000" type="Event" message="The Dark knowledge of Devovorga has risen again." />
<singlespawn delay="40000" name="Teneshpar" x="31932" y="31524" z="8" />
<announce delay="50000" type="Event" message="The Soul of Devovorga has risen again." />
<singlespawn delay="50000" name="Phrodomo" x="32135" y="31833" z="8" />
<announce delay="60000" type="Event" message="The Hatred of Devovorga has risen again." />
<singlespawn delay="50000" name="Chikhaton" x="33330" y="31741" z="8" />
<singlespawn delay="1000" name="Spawn of Devovorga" x="32931" y="31516" z="10" />
<singlespawn delay="2000" name="Spawn of Devovorga" x="32925" y="31515" z="10" />
<singlespawn delay="3000" name="Spawn of Devovorga" x="32925" y="31521" z="10" />
<singlespawn delay="4000" name="Spawn of Devovorga" x="32917" y="31521" z="10" />
<singlespawn delay="5000" name="Spawn of Devovorga" x="32914" y="31514" z="10" />
<singlespawn delay="6000" name="Devovorga" x="32921" y="31516" z="10" />
</raid>

proximo passo

Data/raids 

abra o arquivo Raids.xml adicione essa linhas:

<raid name="Devovorga" file="Devovorga.xml" interval2="1440" chance="1" margin="60" enabled="yes"/> 

download da pasta dos monstro do evento

http://www.4shared.com/rar/yDwm5bvwba/world.html?

 

finalizado os códigos

 

vou explica como ativa o evento no momento que usar o comando /raid devovorga o evento iniciará assim sumonando cada mini Boss pra seu lugar os jogadores terá 5 horas no momento que matarem o primeiro mini Boss passando as 5 horas e não matarem os mini bosses ou ate mesmo o Boss devovorga o evento falhara quem estive dentro da sala ficara ate o final seja quando morre ou sair da sala do Boss assim não voltara mais não irei explica código por código porque esta tudo pronto para mapa global fica a critério de cada um não sou script  ( fiz uma gambiarra esta funcionando 100%) apenas tentei fazer algo diferente

 

OBS.sala de premiação não finalizei pois fica a critério de cada um o que fazer (minha sugestão se os jogadores concluir o evento no próximo salve serve coloca Double XP pra galera hehehehe) fora os baus que darão os itens aos jogadores.

 

Scan dos arquivos anexados

22g85w.png

detalhe para nao buga os portais

como usei o portal dimensional portal id 11798 o servidor nao reconhece como teleport
vai buga abra:

pasta itens abra itens.xml

procure por:

<item fromid="5023" toid="5024" article="a" name="magic forcefield">
<attribute key="type" value="teleport" />
<attribute key="description" value="You can see the other side trough it." />
</item>

substitua por esse:

<item fromid="11798" toid="11799" article="a" name="dimensional portal">
<attribute key="type" value="teleport" />
<attribute key="description" value="You can see the other side trough it." />
</item>

procure por:

<item id="11798" article="a" name="dimensional portal" />

substitua por esse: 

<item id="5023" article="a" name="magic forcefield" />  

pronto


Antes de mais nada não sei se postei no lugar correto peço aos moderadores que se não tiver na área correta que movam para certa fico grato

 

se copiar e colar pelo menos mantem os creditos fico grato

Editado por nibelins (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
  • 2 months later...
  • 2 years later...

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por .Smile
      Olá a todos, atualmente estou aprendendo programação e desenvolvendo um Servidor, uma das coisas chatas a se fazer era ficar alternando entre um Personagem PLAYER e outro GOD para testar algumas coisas, com esses 2 scripts eu resolvi esse problema.

      É um script simples que eu pretendo futuramente melhorá-lo.

      What does the command do?
      /adm - Transforma seu personagem em GOD e kika ele
      /player - Transforma seu personagem em PLAYER e kika ele
       
      LEMBRANDO QUE: Não é qualquer que consegue usar esse comando, você precisa ter dado a sua conta o acesso de god, assim podendo ter esse comando num Servidor Online com outros jogadores sem que os mesmos possam usar.

      \data\talkactions
      talkactions.xml
      Code: <talkaction words="/player" script="player.lua" /> <talkaction words="/adm" script="adm.lua" /> \data\talkactions\scripts 
      adm.lua
      Code: function onSay(player, words, param) if player:getAccountType() < ACCOUNT_TYPE_GOD then return false end local position = player:getPosition() player:setGroup(Group(3)) position:sendMagicEffect(14) player:remove() return false end \data\talkactions\scripts
      player.lua
      function onSay(player, words, param) if player:getAccountType() < ACCOUNT_TYPE_GOD then return false end local position = player:getPosition() player:setGroup(Group(1)) position:sendMagicEffect(13) player:remove() return false end  
    • Por DeanWinchester
      Xamp dando o seguinte erro

      ja apaguei oque tinha que apagar no config.lua e não funciona
    • Por maper007
      Boa Noite...
       
      Estou usando o website do Victor (+ recente) porem quando eu compro alguma coisa no shoop... ele n para de chegar na acc os itens ex: eu comprei 1 wand (esta programado para o player receber apos 30 sec) 30 sec depois chega para o player so que sempre depois de 30 sec eu fico recebendo essa wand..... no console n apareceu nenhum erro....
      comoq eu arrumo isso ??
       
      meu servidor é 10.53
       
      shoop (globalevents)
       



       
      fico no aguardo... vlw
    • Por leoleo
      Boa noite amigos, gostaria de pedir ajuda de vocês para terminar um script o qual vou postar aqui no tibiaking.
       
      Estou agarrado desde hoje de manha pois tnão consigo achar uma forma de buscar o house-id
      ja tentei com
       
      getHouseFromPos(pos)
      getTileHouseInfo(pos)
       
      .. e etc ...
       
      Estou usando TFS 1.0
       
      Desde já agradesço
    • Por igorppbr
      Salve galera do TK, estou com um problema venho tentando adicionar a spell de imortalidade que encontrei aqui no forum, porem ela da um erro, segue:
       
      attempt to call global 'Condition' < a nil value >
       
       
      Uso TFS 1.0, se alguém puder me ajudar ou mesmo postar um script dessa spell para 1.0 ficarei muito agradecido, desde ja agradeço pela atenção.

      @UP !!
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo