Ir para conteúdo

Como Fazer Uma Pvp Arena 100%


Addict

Posts Recomendados

Primeiramente, o que é uma PVP Arena?

 

* PVP Arena, é uma pequena sala onde os players poderão duelar. Assim que um deles for derrotado (Morrer, no caso), o player sera teletransportado para um local pré-escolhido, mas sem perder nenhuma EXP, SKILLs, ou mesmo sua BP ou Equips.

 

Desenhando no MAP Editor

 

Pegue o seu MAP EDITOR, e faça um lugar parecido com este:

pvparenawg6.th.jpg

 

Entendo:

Numero 1 - O lugar onde a pessoa que perdeu ou pegou o teleporte ira aparecer.

Numero 2 - Local onde o 2° jogador tera que ficar para entrar na PVP Arena (Ele tera que ficar nesse title e o player 1 ira ativar a alavanca)

Numero 3 - Local onde o 1° jogador tera que ficar para entrar na PVP Arena (Ele tera que ficar nesse title e o player 1 ira ativar a alavanca)

Numero 4 - A alavanca onde colocara os dois players dentro da PVP Arena (Os 2 players terão quere ficar no title da seta 2 e 3, senão, nenhum nem outro irá entrar)

Numero 5 - Teleporte para o player que ganhou voltar (Ele voltara para o title da seta Numero 1)

--> Na imagem, o X é o local que o player sera transportado assim que a alavanca for ativada. (Ler acima, caso nao sabe como ativar a alavanca)

 

Fazendo o Script

Vá em data/actions/scripts e copie um arquivo qualquer e renomei-e para pvparena . Depois, apague tudo o que está dentro, deixando o arquivo tudo em branco, e então, cole isto:

 

-- pvp arena lever

 

function onUse(cid, item, frompos, item2, topos)

 

if item.uid == 7001 and item.itemid == 1945 then

player1pos = {x=653, y=290, z=8, stackpos=253}

player1 = getThingfromPos(player1pos)

 

player2pos = {x=667, y=290, z=8, stackpos=253}

player2 = getThingfromPos(player2pos)

 

if player1.itemid > 0 and player2.itemid > 0 then

arenalevel = 25

player1level = getPlayerLevel(player1.uid)

player2level = getPlayerLevel(player2.uid)

 

if player1level >= arenalevel and player2level >= arenalevel then

for arenax = 655,665 do

for arenay = 287,292 do

arenapos = {x=arenax, y=arenay, z=8, stackpos=253}

arenacreature = getThingfromPos(arenapos)

 

if arenacreature.itemid > 0 then

doPlayerSendCancel(cid,"Espere o duelo acabar.")

return 1

end

end

end

 

nplayer1pos = {x=655, y=290, z=8}

nplayer2pos = {x=665, y=290, z=8}

 

doSendMagicEffect(player1pos,2)

doSendMagicEffect(player2pos,2)

 

doTeleportThing(player1.uid,nplayer1pos)

doTeleportThing(player2.uid,nplayer2pos)

 

doSendMagicEffect(nplayer1pos,10)

doSendMagicEffect(nplayer2pos,10)

 

doPlayerSendTextMessage(player1.uid,18,"LUTEM!")

doPlayerSendTextMessage(player2.uid,18,"LUTEM!")

else

doPlayerSendCancel(cid,"Os dois jogadores presisam ter level 25 ou mais para poder duelar.")

end

else

doPlayerSendCancel(cid,"Voce presisa de 2 players para ter um duelo.")

end

else

return 0

end

 

return 1

end

 

Explicando

 

if item.uid == 7001 - É o numero da Action que voce ira colocar no MAP Editor. (Botão direito, e coloque 7001 nas duas opçoes)

item.itemid == 1945 - É o ID do item que ativará a PVP Arena. No caso é uma alavanca, mas voce pode mudar. Eu não aconselharia, pois iria ficar estranho. (Imagina voce clicar numa estatua, e voce é teletransportado? XD)

player1pos = {x=653, y=290, z=8, stackpos=253} - É o title que o player 1 terá que ficar para poder ativar / entrar na PVP Arena, caso tenha 2 players.

player2pos = {x=667, y=290, z=8, stackpos=253} - É o title que o player 2 terá que fica para poder entrar na PVP Arena, caso tenha 2 players.

arenalevel = 25 - É o level minimo requirido para entrar na PVP Arena, no caso esta 25, mas voce pode alterar. =] (Nao ponha o level inicial, pois sempre tem um noob querendo destruir a harmonia do server) XD

for arenax = 655,665 do - É o tile inicial (655) até o title final (665) de "X" da PVP Arena. (Mude isso, e coloque os seus, por que senão, nao ira funcionar!)

for arenay = 287,292 do - É o tile inicial (287) até o title final (292) de "Y" da PVP Arena. (Mude isso, e coloque os seus, por que senão, nao ira funcionar!)

arenapos = {x=arenax, y=arenay, z=8, stackpos=253} - É o andar da PVP Arena. No caso é 8, mas, mude conforme seja o seu "Z".

doPlayerSendCancel(cid,"Espere o duelo acabar.") - Ira mostrar essa mensagem caso tenha 1 ou 2 players ainda na PVP Arena.

nplayer1pos = {x=655, y=290, z=8} - É para onde o player 1 sera transportado, assim que a alavanca for ativada! (Mude isso tambem, conforme o seu mapa)

nplayer2pos = {x=665, y=290, z=8} - É para onde o player 2 sera transportado, assim que a alavanca for ativada! (Mude isso tambem, conforme o seu mapa)

doPlayerSendTextMessage(player1.uid,18,"LUTEM!")

doPlayerSendTextMessage(player2.uid,18,"LUTEM!") - É a mensagem que sera mandada, assim que os 2 players forem mandados para dentro da PVP Arena.

doPlayerSendCancel(cid,"Os dois jogadores presisam ter level 25 ou mais para poder duelar.") - Essa mensagem ira aparecer, caso 1 ou os 2 players nao tiverem level suficiente para entrar (Pré-definido por voce).

doPlayerSendCancel(cid,"Voce presisa de 2 players para ter um duelo.") - Caso voce tentar fazer a tentativa de só voce entrar na Arena.

 

Voce achou meio chato fazer isso? Então, se prepara pro momento mais repetitivo do Tutorial! XD

 

Modificando o arquivo pvparena.xml (em alguns servers é "pvparenas.xml", sem as aspas.

 

Caso seu OT seja 7.8++, seu arquivo pvparena.xml começara mais ou menos assim:

 

<?xml version="1.0" encoding="UTF-8"?>

<pvparenas>

<pvparena exitx="1039" exity="988" exitz="8" allowsummons="yes" multi-combat="no" addskilltries="no" allowfields="no">

<tiles fromx="1041" fromy="985" fromz="9" tox="1052" toy="991" toz="9"/>

</pvparena>

</pvparenas>

 

Explicando:

 

<pvparena exitx="1039" exity="988" exitz="8" - É aonde voce irá sair, depois da PVP Arena, assim que morre / pegar o teleporte.

allowsummons="yes" - Permite summons. (Yes, No)

multi-combat="no" - Se eu nao me engano, é pra mais de um player entrar. Nao me recordo. =/ (Yes, no)

addskilltries="no" - Se o player ira conseguir ganhar Skills na PVP Arena, é bom colocar! ^^ (Yes, no)

allowfields="no" - Se podera ter fields na PVP Arena (EX: adevo mas flam, adevo mas vis...) (Yes, no)

 

Mas se seu OT for 7.6 , ira começar assim:

 

<?xml version="1.0"?>

<pvparenas>

<pvparena exitx="660" exity="285" exitz="8">

 

</pvparena>

</pvparenas>

 

Explicando:

 

<pvparena exitx="660" exity="285" exitz="8"> - É aonde voce irá sair, depois da PVP Arena, assim que morre / pegar o teleporte.

 

Agora, voce terá que fazer Title por title da sua PVP Arena.

EX: <tile x="655" y="287" z="8"/> Tera que botar o X, Y e o Z da sua pvp arena.

 

Ira ficar mais ou menos assim (No caso da imagem):

 

<?xml version="1.0"?>

<pvparenas>

<pvparena exitx="660" exity="285" exitz="8">

<tile x="655" y="287" z="8"/>

<tile x="656" y="287" z="8"/>

<tile x="657" y="287" z="8"/>

<tile x="658" y="287" z="8"/>

<tile x="659" y="287" z="8"/>

<tile x="660" y="287" z="8"/>

<tile x="661" y="287" z="8"/>

<tile x="662" y="287" z="8"/>

<tile x="663" y="287" z="8"/>

<tile x="664" y="287" z="8"/>

<tile x="665" y="287" z="8"/>

<tile x="655" y="288" z="8"/>

<tile x="656" y="288" z="8"/>

<tile x="657" y="288" z="8"/>

<tile x="658" y="288" z="8"/>

<tile x="659" y="288" z="8"/>

<tile x="660" y="288" z="8"/>

<tile x="661" y="288" z="8"/>

<tile x="662" y="288" z="8"/>

<tile x="663" y="288" z="8"/>

<tile x="664" y="288" z="8"/>

<tile x="665" y="288" z="8"/>

<tile x="655" y="289" z="8"/>

<tile x="656" y="289" z="8"/>

<tile x="657" y="289" z="8"/>

<tile x="658" y="289" z="8"/>

<tile x="659" y="289" z="8"/>

<tile x="660" y="289" z="8"/>

<tile x="661" y="289" z="8"/>

<tile x="662" y="289" z="8"/>

<tile x="663" y="289" z="8"/>

<tile x="664" y="289" z="8"/>

<tile x="665" y="289" z="8"/>

<tile x="655" y="290" z="8"/>

<tile x="656" y="290" z="8"/>

<tile x="657" y="290" z="8"/>

<tile x="658" y="290" z="8"/>

<tile x="659" y="290" z="8"/>

<tile x="660" y="290" z="8"/>

<tile x="661" y="290" z="8"/>

<tile x="662" y="290" z="8"/>

<tile x="663" y="290" z="8"/>

<tile x="664" y="290" z="8"/>

<tile x="665" y="290" z="8"/>

<tile x="655" y="291" z="8"/>

<tile x="656" y="291" z="8"/>

<tile x="657" y="291" z="8"/>

<tile x="658" y="291" z="8"/>

<tile x="659" y="291" z="8"/>

<tile x="660" y="291" z="8"/>

<tile x="661" y="291" z="8"/>

<tile x="662" y="291" z="8"/>

<tile x="663" y="291" z="8"/>

<tile x="664" y="291" z="8"/>

<tile x="665" y="291" z="8"/>

<tile x="655" y="292" z="8"/>

<tile x="656" y="292" z="8"/>

<tile x="657" y="292" z="8"/>

<tile x="658" y="292" z="8"/>

<tile x="659" y="292" z="8"/>

<tile x="660" y="292" z="8"/>

<tile x="661" y="292" z="8"/>

<tile x="662" y="292" z="8"/>

<tile x="663" y="292" z="8"/>

<tile x="664" y="292" z="8"/>

<tile x="665" y="292" z="8"/>

</pvparena>

</pvparenas>

 

Este foi o tutorial de como fazeruma PVP Arena 100%! ^^ Funciona em 7.6+++.

 

Créditos: Asould Acalaylaa

Link para o comentário
Compartilhar em outros sites

ótimo tutorial cara...cheio de imagens,cores,codes/quotes,tudo bem explicado...sem dúvida nenhuma vai ajudar muita gente,pq pvp-arena fas sim muita diferença...

os players morrerem duelando é mtu sux...pode nem faser evento deste tipo se nao tiver pvp-arena...

parabens pelo tutorial...vai ajudar mta gente...

continue assim...

Link para o comentário
Compartilhar em outros sites

@Lord

 

Exatamente amigo :-)

 

É que eu costumo deixar meu server sempre NON-PVP (você não tem noção de como eles se matam xD). Então, gostei dessa idéia. Mas as pessoas só conseguem se atacar dentro da arena quando eu ligo o PVP. Fora isso, está ótimo. Então, gostaria de saber como deixar essa área PVP e o resto do server todo NON-PVP ao mesmo tempo. Uso o Evolutions 0.7.8.

 

Outra coisa: já que meu server é 7.92, eu não preciso botar <tile x="655" y="287" z="8"/>, ou preciso?

 

Abraços.

Link para o comentário
Compartilhar em outros sites

Aeeee consegui intender!

tava bem explicado mas tipo

eu to com uma dúvida meio Relevante vê se alguem sabe responder!

u meu server eh Pvp-Enf

eu keria fazer esse sistema de quando ele morrer perder os itens mais nascer com a msm configuração salva na pasta Players!

não to conseguindo fazer , alguem ajuda awe PLz! Thy desde Jáh!

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
Aeeee consegui intender!

tava bem explicado mas tipo

eu to com uma dúvida meio Relevante vê se alguem sabe responder!

u meu server eh Pvp-Enf

eu keria fazer esse sistema de quando ele morrer perder os itens mais nascer com a msm configuração salva na pasta Players!

não to conseguindo fazer , alguem ajuda awe PLz! Thy desde Jáh!

 

 

kra... seguinte, sei q isso n eh daki mas como so iniciante aki, só consegui resolve teu problema por aki... vai na pasta player,clica botão direito no player q tu n keh q mude, aí edita o lugar do temple,ekps,rune,ekps,etc... dps salve. Clique botão direito no arquivo do char e vá em propriedades, dps selecione "Somente Leitura" e dê ok. Está pronto ;D

Link para o comentário
Compartilhar em outros sites

if item.uid == 7001 - É o numero da Action que voce ira colocar no MAP Editor. (Botão direito, e coloque 7001 nas duas opçoes)

 

Não intendi essa parte...numero da action que vc ira botar no map editor..certo...mais em que lugar no map editorrrr?

 

 

 

for arenax = 655,665 do - É o tile inicial (655) até o title final (665) de "X" da PVP Arena. (Mude isso, e coloque os seus, por que senão, nao ira funcionar!)

 

tile é a paradinha que a pessoa vai ficar para entrar na arena certo?

eu ponho o "X" dele mais qual é o final?é o "X" do 2 player?

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

×
×
  • Criar Novo...