Ir para conteúdo

Zao Arena


dgprado

Posts Recomendados

Bom estive trabalhando na arena de zao, afim de fazer o mais parecido possivel com a arena global, e apesar de minhas limitaçoes acredito ter ficado bem legal.

Ela e composta de varios scripts, Actions, movement ,monsters, creaturescript e uma pequena modificaçao no mapa.

 

Primeiro abra seu mapa no map editor va ate a arena e elimine o balcão em baixo da alavanca que teleporta os 2 players para a arena, caso voce deixe o balcão o movement ira remover o balcao ao inves de remover a orb em cima da alavanca(orb criada para evitar que mais players entren na arena enquanto alguem esta la).

 

Agora instale os scripts nas suas respectivas pastas e adicione as tags nos respectivos xml's, adicione os monsters e suas respectivas tags no xml.

 

Quando voce abre os baus da quest voce ganha o outfit, xp( no meu caso 50k de xp mas voce pode por 8k como no global), e uma bag com alguns itens.Para que os players so possam usar o outfit apos terminar a quest certifique-se que as tags do outfit warmaster no arquivo /data/xml/outfits esteja setado default="0" como no exemplo abaixo:

 

<outfit id="22" default="0">

<list gender="0" lookType="336" name="Warmaster"/>

<list gender="1" lookType="335" name="Warmaster"/>

</outfit>

 

Observe tambem se a id do warmaster no seu outfits.xml é 22, caso nao seja, modifique o arquivo /data/actions/scripts/39471.lua colocando a id do seu xml como no exemplo abaixo:

 

doPlayerSendTextMessage(cid,22,"Voce ganhou o Warmaster outfit.")

doSendMagicEffect(topos,12)

doPlayerAddOutfitId(cid,22,0)

setPlayerStorageValue(cid,39471,1)

Onde esta em vermelho voce coloca a id do warmaster do seu outfits.xml

 

Pronto sua arena esta pronta para uso.Para usar a arena basta que 2 players lv 120+ fiquem nas devidas posições e um deles puxe a alavanca.Ambos serao teleportados para dentro da arena os 2 primeiros bosses serao sumonados.Uma orb sera criada em cima da alavanca impedindo que outros players entrem na arena e que mais monstros sejam sumonados.Quando os players matarem os 2 monstros mais 2 serao sumonados sendo que o ultimo boss sera sumonado 30 segundos apos os 2 penultimos, quando o player matar o ultimo boss sera criado um teleport que os levara para a sala de premio onde poderao abrir os baus e pegarem suas recompensas, ao entrarem no tp voltarao para a entrada da arena e a orb sera retirada de cima da alavanca liberando a arena para novos players.

 

Obs:

Se seu ot possuir o creaturescript usado na inquisition que cria tp apos matar os bosses so adicione a o ultimo boss ao script e comfira se o nome do event e o mesmo do arquivo do boss caso nao, atualize.Caso nao possua apenas adicione a tag do creaturescripts como no arquivo em anexo e seu respectivo .lua e claro.

 

Sei que este post nao esta muito didatico, como sao muitos scripts ficaria meio longo se eu postasse todas as explicaçoes mastigadinhas, portanto quelquer duvida postem aqui que tentarei ajudar ou ser mais especifico.

 

Estou postando do host do meu ot portanto mais tarde postarei fotos para melhor ilustrar alguns detalhes.

 

Espero que gostem.

Atenciosamente Daniel Prado.

 

Creditos:
Kydrai
XvX
Dgprado

 

Edit:

Achei um pequeno bug, como eu havia testado o script com o god nao percebi que quando o 1° player passa pelo ultimo teleport ele retira a orb de cima da alavanca, quando o segundo passa, retira a alavanca ;x, irei modificar o script e assim que eu arrumar atualizo o anexo.

 

Correçao para quem ja havia baixado a arena:

va no arquivo zao arena 3.lua e modifique conforme o exemplo abaixo:

doTeleportThing(player1.uid,nplayer1pos)

doTeleportThing(player2.uid,nplayer2pos)

doCreateItem(9772,1,portal_quest01_pos)

doCreateItem(9772,1,portal_quest01_pos)

adicione a linha que esta em vermelho e pronto 2 orbs serao criadas uma para cada player

 

Algumas ss's para auxiliar a implantaçao dos scripts.

 

 

arenaresp.jpg

 

alavanca.jpg

 

salarecom.jpg

 

 

 

informaçoes extras:

 

 

No anexo os scripts ja estao separados por pasta, os .lua que estao na pasta movement voce coloca na pasta data/movements/scripts do seu ot as actions .lua na /data/actions/scripts assim sucessivamente, a as tags dos xmls voce copia e cola, tags do movements.xml do anexo, copia e cola no fim do seu movements e assim por diante, a action zao arena 3.lua e responsavel por teleportar os 2 players para dentro da arena e sumonar os 2 primeiros Bosses, a uniqueid dela(32145) voce adiciona na alavanca da arena, voce precisa conferir a posiçao dos 2 sqms onde os players ficarao e caso esteja diferente do script, atualize aqui:
player1pos = {x=907, y=392, z=2, stackpos=253}

player1 = getThingfromPos(player1pos)

 

player2pos = {x=908, y=392, z=2, stackpos=253}

player2 = getThingfromPos(player2pos)

 

aqui sao as coordenadas da alavanca onde o script ira criar a orb para evitar que outros players entrem ate os que ja estao na arena saiam:

local portal_quest01_pos = {x = 906, y = 392, z = 2, stackpos = 2}

 

aqui sao as coordenadas de onde serao sumonados os 2 primeiros bosses:

demon1pos = {x=891, y=412, z=3}

demon2pos = {x=892, y=412, z=3}

Voce pode escolher qualquer lugar dentro da arena, caso as coordenadas nao confiram com o seu mapa

 

aqui sao as coordenadas para onde os 2 players serao sumonados dentro da arena:

nplayer1pos = {x=889, y=405, z=3}

nplayer2pos = {x=890, y=405, z=3}

A action e isso.

 

A movement voce precisa setar novamente a posiçao da alavanca, para o script tirar as orbs de cima da alavanca quando os players passarem pelo tp da sala de recompensas:

 

function onStepIn(cid, item,pos)

 

-- Start tree removal set

StartTreePos = {x = 906, y = 392, z = 2, stackpos=1} --- Coodenada da alavanca da arena, é obrigatoriamente que seja igual à coordenada do arquivo arena zao 3.lua.

a actionid deste script 1668 deve ser adicionado no teleport que sai da sala de recompensas juntamente com as coordenadas destino(pode ser la na salinha da alavanca)

end

 

No creature script monster2 voce deve escolher uma posiçao, central de preferencia onde os outros bosses serao sumonados, como no exemplo abaixo:

["Menace"] = {pos = {x=891, y=412, z=3}, delay = 2000},

["Fatality"] = {pos = {x=892, y=412, z=3}, delay = 2000}

 

como os monstros sao sumonados aos pares escolha 2 coordenadas, uma do lado da outra, e todos os outros bosses do script deverao ter as mesma coordenadas.

 

ja no creature script que cria o tp apos matar o ultimo boss voce deve colocar as coordenadas da sala de recompensas:

bosses = {

["Ushuriel"] = { x = 1176, y = 1140, z = 12 },

["Annihilon"] = { x = 1065, y = 1308, z = 13 },

["Hellgorak"] = { x = 1152, y = 1195, z = 13 },

["Madareth"] = { x = 1045, y = 1205, z = 13 },

["Zugurosh"] = { x = 1128, y = 1151, z = 12 },

["Latrivan"] = { x = 1245, y = 1297, z = 12 },

["Tirecz"] = { x = 888, y = 407, z = 7 }

 

so cuide para que apenas o ultimo boss da lista nao tenha "," apos o parenteses

 

agora as actions dos premios 39471 e 39472 devem ser adicionadas nas arcas la na sala de recompensas, na sala existem 3 arcas(pelo menos axo que sao arcas) duas de bordas marrom<<< e 2 com bordas vermelhas>>>>, no meu ot eu usei as duas de bordas marrom.Ambas devem ser adicionadas como uniqueid uma em cada arca pelo seu map editor.

 

junto no anexo na pasta actions coloquei o lua farmine.lua que e um script que pode ser usado para ativar as alavancas la em farmine que teleportam os players para o tapete no topo da montanha para que possam ter acesso aos teleports que levam para a ilha onde fica a arena farmine.lua tambem funciona por uniqueid e deve ser setado as coordenadas da alavanca na cidade e alavanca no alto da montanha.

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
if itemEx.uid == 53241 then
	doTeleportThing(cid, {x = 818, y = 917, z = 1})
	doSendMagicEffect({x = 818, y = 917, z = 1},11)
elseif itemEx.uid == 53243 then
	doTeleportThing(cid, {x = 820, y = 926, z = 4})
	doSendMagicEffect({x = 820, y = 926, z = 4},11)[/quote]
Voce pode usar a uniqueid 53241 para a alavanca da cidade e colocar no script as coordenadas destino do sqm no alto da montanha, e a uid 53243 para a alavanca do alto da montanha com destino à cidade.

Axo que e isso, espero ter sido claro, quelquer duvida posta ae que tento ajudar.

 

zao arena.rar

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

amigo, será que você pode dizer onde eu devo botar cada action, movement e creaturescript em suas respectivas posições?

 

No anexo os scripts ja estao separados por pasta, os .lua que estao na pasta movement voce coloca na pasta data/movements/scripts do seu ot as actions .lua na /data/actions/scripts assim sucessivamente, a as tags dos xmls voce copia e cola, tags do movements.xml do anexo, copia e cola no fim do seu movements e assim por diante, a action zao arena 3.lua e responsavel por teleportar os 2 players para dentro da arena e sumonar os 2 primeiros Bosses, a uniqueid dela(32145) voce adiciona na alavanca da arena, voce precisa conferir a posiçao dos 2 sqms onde os players ficarao e caso esteja diferente do script, atualize aqui:

player1pos = {x=907, y=392, z=2, stackpos=253}

player1 = getThingfromPos(player1pos)

 

player2pos = {x=908, y=392, z=2, stackpos=253}

player2 = getThingfromPos(player2pos)

 

aqui sao as coordenadas da alavanca onde o script ira criar a orb para evitar que outros players entrem ate os que ja estao na arena saiam:

local portal_quest01_pos = {x = 906, y = 392, z = 2, stackpos = 2}

 

aqui sao as coordenadas de onde serao sumonados os 2 primeiros bosses:

demon1pos = {x=891, y=412, z=3}

demon2pos = {x=892, y=412, z=3}

Voce pode escolher qualquer lugar dentro da arena, caso as coordenadas nao confiram com o seu mapa

 

aqui sao as coordenadas para onde os 2 players serao sumonados dentro da arena:

nplayer1pos = {x=889, y=405, z=3}

nplayer2pos = {x=890, y=405, z=3}

A action e isso.

 

A movement voce precisa setar novamente a posiçao da alavanca, para o script tirar as orbs de cima da alavanca quando os players passarem pelo tp da sala de recompensas:

 

function onStepIn(cid, item,pos)

 

-- Start tree removal set

StartTreePos = {x = 906, y = 392, z = 2, stackpos=1} --- Coodenada da alavanca da arena, é obrigatoriamente que seja igual à coordenada do arquivo arena zao 3.lua.

a actionid deste script 1668 deve ser adicionado no teleport que sai da sala de recompensas juntamente com as coordenadas destino(pode ser la na salinha da alavanca)

end

 

No creature script monster2 voce deve escolher uma posiçao, central de preferencia onde os outros bosses serao sumonados, como no exemplo abaixo:

["Menace"] = {pos = {x=891, y=412, z=3}, delay = 2000},

["Fatality"] = {pos = {x=892, y=412, z=3}, delay = 2000}

 

como os monstros sao sumonados aos pares escolha 2 coordenadas, uma do lado da outra, e todos os outros bosses do script deverao ter as mesma coordenadas.

 

ja no creature script que cria o tp apos matar o ultimo boss voce deve colocar as coordenadas da sala de recompensas:

bosses = {

["Ushuriel"] = { x = 1176, y = 1140, z = 12 },

["Annihilon"] = { x = 1065, y = 1308, z = 13 },

["Hellgorak"] = { x = 1152, y = 1195, z = 13 },

["Madareth"] = { x = 1045, y = 1205, z = 13 },

["Zugurosh"] = { x = 1128, y = 1151, z = 12 },

["Latrivan"] = { x = 1245, y = 1297, z = 12 },

["Tirecz"] = { x = 888, y = 407, z = 7 }

 

so cuide para que apenas o ultimo boss da lista nao tenha "," apos o parenteses

 

agora as actions dos premios 39471 e 39472 devem ser adicionadas nas arcas la na sala de recompensas, na sala existem 3 arcas(pelo menos axo que sao arcas) duas de bordas marrom<<< e 2 com bordas vermelhas>>>>, no meu ot eu usei as duas de bordas marrom.Ambas devem ser adicionadas como uniqueid uma em cada arca pelo seu map editor.

 

junto no anexo na pasta actions coloquei o lua farmine.lua que e um script que pode ser usado para ativar as alavancas la em farmine que teleportam os players para o tapete no topo da montanha para que possam ter acesso aos teleports que levam para a ilha onde fica a arena farmine.lua tambem funciona por uniqueid e deve ser setado as coordenadas da alavanca na cidade e alavanca no alto da montanha.

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

if itemEx.uid == 53241 then

doTeleportThing(cid, {x = 818, y = 917, z = 1})

doSendMagicEffect({x = 818, y = 917, z = 1},11)

elseif itemEx.uid == 53243 then

doTeleportThing(cid, {x = 820, y = 926, z = 4})

doSendMagicEffect({x = 820, y = 926, z = 4},11)

Voce pode usar a uniqueid 53241 para a alavanca da cidade e colocar no script as coordenadas destino do sqm no alto da montanha, e a uid 53243 para a alavanca do alto da montanha com destino à cidade.

 

Axo que e isso, espero ter sido claro, quelquer duvida posta ae que tento ajudar.

Link para o comentário
Compartilhar em outros sites

Tipo mas se liga, e se os 2 players morrerem? essa eh a função dos monstros da arena, matar os players que estão nelas, se os players morrerem os bosses irão continuar vivos, a arena vai fikar travada e caso não esteja kuando alguem entra nela, alem dos bosses que eram pra aparecer com aqueles 2, vai ter os bosses que mataram os outros 2 antes, ai lasca os kara e vai acumulando bosses ateh q ninguem consegue mais fzr nada =[.

Link para o comentário
Compartilhar em outros sites

Tipo mas se liga, e se os 2 players morrerem? essa eh a função dos monstros da arena, matar os players que estão nelas, se os players morrerem os bosses irão continuar vivos, a arena vai fikar travada e caso não esteja kuando alguem entra nela, alem dos bosses que eram pra aparecer com aqueles 2, vai ter os bosses que mataram os outros 2 antes, ai lasca os kara e vai acumulando bosses ateh q ninguem consegue mais fzr nada =[.

 

 

Verdade, mas tipo se os players morrerem a arena estara selada ning vai conseguir entrar , neste caso um adm teria que apagar os monstros e passar 2x no tp da sala de premios para tirar as orbs.Vo ve se adapto a remoçao automatica dos bixos duma anihi.Fiz esta arena so pra quebra o galho enquanto enquanto nao aparece uma melhor, neme scripter nao so fiz ela misturando varios scrpts, anihi,yalahar quest, demon oak, inquisition. hahahah.

Link para o comentário
Compartilhar em outros sites

Bom estive trabalhando na arena de zao, afim de fazer o mais parecido possivel com a arena global, e apesar de minhas limitaçoes acredito ter ficado bem legal.

Ela e composta de varios scripts, Actions, movement ,monsters, creaturescript e uma pequena modificaçao no mapa.

 

Primeiro abra seu mapa no map editor va ate a arena e elimine o balcão em baixo da alavanca que teleporta os 2 players para a arena, caso voce deixe o balcão o movement ira remover o balcao ao inves de remover a orb em cima da alavanca(orb criada para evitar que mais players entren na arena enquanto alguem esta la).

 

Agora instale os scripts nas suas respectivas pastas e adicione as tags nos respectivos xml's, adicione os monsters e suas respectivas tags no xml.

 

Quando voce abre os baus da quest voce ganha o outfit, xp( no meu caso 50k de xp mas voce pode por 8k como no global), e uma bag com alguns itens.Para que os players so possam usar o outfit apos terminar a quest certifique-se que as tags do outfit warmaster no arquivo /data/xml/outfits esteja setado default="0" como no exemplo abaixo:

 

 

 

Observe tambem se a id do warmaster no seu outfits.xml é 22, caso nao seja, modifique o arquivo /data/actions/scripts/39471.lua colocando a id do seu xml como no exemplo abaixo:

 

 

Onde esta em vermelho voce coloca a id do warmaster do seu outfits.xml

 

Pronto sua arena esta pronta para uso.Para usar a arena basta que 2 players lv 120+ fiquem nas devidas posições e um deles puxe a alavanca.Ambos serao teleportados para dentro da arena os 2 primeiros bosses serao sumonados.Uma orb sera criada em cima da alavanca impedindo que outros players entrem na arena e que mais monstros sejam sumonados.Quando os players matarem os 2 monstros mais 2 serao sumonados sendo que o ultimo boss sera sumonado 30 segundos apos os 2 penultimos, quando o player matar o ultimo boss sera criado um teleport que os levara para a sala de premio onde poderao abrir os baus e pegarem suas recompensas, ao entrarem no tp voltarao para a entrada da arena e a orb sera retirada de cima da alavanca liberando a arena para novos players.

 

Obs:

Se seu ot possuir o creaturescript usado na inquisition que cria tp apos matar os bosses so adicione a o ultimo boss ao script e comfira se o nome do event e o mesmo do arquivo do boss caso nao, atualize.Caso nao possua apenas adicione a tag do creaturescripts como no arquivo em anexo e seu respectivo .lua e claro.

 

Sei que este post nao esta muito didatico, como sao muitos scripts ficaria meio longo se eu postasse todas as explicaçoes mastigadinhas, portanto quelquer duvida postem aqui que tentarei ajudar ou ser mais especifico.

 

Estou postando do host do meu ot portanto mais tarde postarei fotos para melhor ilustrar alguns detalhes.

 

Espero que gostem.

Atenciosamente Daniel Prado.

 

 

Algumas ss's para auxiliar a implantaçao dos scripts.

arenaresp.jpg

 

alavanca.jpg

 

salarecom.jpg

 

 

Edit:

Achei um pequeno bug, como eu havia testado o script com o god nao percebi que quando o 1° player passa pelo ultimo teleport ele retira a orb de cima da alavanca, quando o segundo passa, retira a alavanca ;x, irei modificar o script e assim que eu arrumar atualizo o anexo.

 

Correçao para quem ja havia baixado a arena:

Link para o comentário
Compartilhar em outros sites

  • 4 months later...
  • 3 months later...

Print Screen, de onde tirar a caixa e tals iria ajudar mto

 

:/

 

E a base onde esta a alvanca que deve ser puxada para entrar na arena.voce deleta ela e deixa a alavanca direto no chao.

 

Cara eu to com problema em dar continuiadade nos monstros e aparecer portal apos matar o tirecz!

Teria como ajudar?

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...