Ir para conteúdo

Cursed Pyramid


denilson6

Avaliando qualidade, utilidade e criatividade, qual nota você daria?  

16 votos

  1. 1. Avaliando qualidade, utilidade e criatividade, qual nota você daria?

    • 10~9 - Muito bom!
      12
    • 8~7 - Bom!
      0
    • 6~5 - Médio!
      1
    • 4~3 - Ruim
      0
    • 2~1 - Péssimo
      3


Posts Recomendados

REQUERIMENTOS:

~~>Act OnStepIn

~~>Act OnRemoveItem

~~>Uma boa piramide(como fazer ela estará sendo explicado ao longo da action)

Bom, agora dei uma boa lida nos tutos do colex e vou publicar um pacote de actions, que juntos, formam a CURSED PYRAMID.

Hmmm, inovador, mas... denilson... n entendi mt bem... me explica melhor?

CLARO!!! por exemplo, aqui teremos alguns obstaculos.

1º Passo:

Quando voce pisa em um certo lugar, as paredes da piramide são substituidas por MUROS QUE ATIRAM VENENO!!!

2º Passo:

Ao pisar em outro tile, aparecerá traps, que se pisar nelas, tira vida

3º Passo:

Agora é questão de sorte: ao pisar num tile, você ira para um labirinto cheio de bichos selecionaveis

3ºB: Passo:

Mas se você pisar no correto, abrirá-se duas passagens secretas, as duas SEM VOLTA e uma vai pra a sala do tesouro e a outra, vai para outro labirinto.

4ºA Passo:

PARÁBENS!Esse é o caminho correto, ao entrar voce verá um tesouro, tente pegar ele!

4ºB Passo:

Caminho incorreto, labirinto com bichos mt mt mt fortes!!!

5º Passo:

Ao tirar o tesouro de seu lugar, com a função onRemoveItem e math.random teremos 50% de chance da passagem de volta se fechar e alguns monstros serem sumonados e 50% de chance de alguns bichos serem sumonados e a ´passagem de saída se abrir.

PURO RPG!!!E PURO FILME TBM!!!!

1º Passo:

Adicione um bicho chamado CursedWall.xml e não ponha nenhum loot, nenhuma voice, nenhum summon, apenas o look type diferente(para saber o look type a colocar, abra seu itens.otb e procure a parede de egito na vertical e veja o cid dele e ponha esse numero como looktype da criatura) e a runa que a giant spider usa e o cursedwall vai atirar veneno (Quem for usar a pyramid em RPG, pode usar tpw assim "Os bravos guerreiros que foram até a piramide amaldiçoada e sebreviveram para contar história, voltaram com a praga do veneno de lá até o dia de suas mortes' mas isso é soh uma seguiestão =]

ai vamos as actions pq tah td pronto:

 

cw1 = {x=0, y=0, z=0} --Cursed Wall 1 positioncw2 = {x=0, y=0, z=0} --Cursed Wall 2 positioncw3 = {x=0, y=0, z=0} --Cursed Wall 3 positioncw4 = {x=0, y=0, z=0} --Cursed Wall 4 positioncw5 = {x=0, y=0, z=0} --Cursed Wall 5 positioncw6 = {x=0, y=0, z=0} --Cursed Wall 6 positionfunction onStepIn(cid, item, pos)doSummonCreature(CursedWall, cw1)doSummonCreature(CursedWall, cw2)doSummonCreature(CursedWall, cw3)doSummonCreature(CursedWall, cw4)doSummonCreature(CursedWall, cw5)doSummonCreature(CursedWall, cw6)endreturn 1end

 

 

<action uniqueid="8403" script="nome_q_vc_colocou.lua"/>

 

A action acima fará com que a parede vire cursed walls

~~>OBS.:Você precisará colocar essa uniqueid no chão!

~~>OBS2.:Se o caminho da sua piramide ter mais que 1 SQM de comprimento, adicione <action uniqueid="8403" script="nome_q_vc_colocou.lua"/> com a quantidade correspondente a quantos SQMS a + tem de largura a passagem.Mas mude o unique id!!!

~~>OBS3.:Voce deve colocar speed 0 no cursed wall e alguma coisa que "proteja" o wall, mas não bloqueie runas, magias ou talz(a grade é uma boa opção!)

2º Passo: Vamos as traps!

Credits: tibiaa4e pela função das traps!

não tem as traps? adicione no seu ot! http://www.forums.xtibia.com/forum/index.php?showtopic=32795

Agora que você adicionou as traps, vamos colocar para quando você pisar no tile, aparecer traps!

 

tp1 = {x=0, y=0, z=0} --Trap 1 positiontp2 = {x=0, y=0, z=0} --Trap 2 positiontp3 = {x=0, y=0, z=0} --Trap 3 positiontp4 = {x=0, y=0, z=0} --Trap 4 positiontp5 = {x=0, y=0, z=0} --Trap 5 positiontp6 = {x=0, y=0, z=0} --Trap 6 positiontp7 = {x=0, y=0, z=0} --Trap 7 positiontp8 = {x=0, y=0, z=0} --Trap 8 positiontp9 = {x=0, y=0, z=0} --Trap 9 positiontp10 = {x=0, y=0, z=0} --Trap 10 positiontp11 = {x=0, y=0, z=0} --Trap 11 positionfunction onStepIn(cid, item, pos)doCreateItem(2579,1,tp1)doCreateItem(2579,1,tp2)doCreateItem(2579,1,tp3)doCreateItem(2579,1,tp4)doCreateItem(2579,1,tp5)doCreateItem(2579,1,tp6)doCreateItem(2579,1,tp7)doCreateItem(2579,1,tp8)doCreateItem(2579,1,tp9)doCreateItem(2579,1,tp10)doCreateItem(2579,1,tp11)endreturn 1end

 

 

<action uniqueid="3497" script="nome_q_vc_colocou.lua"/>

 

A action acima fará com que as traps apareçam

~~>OBS.:Você precisará colocar essa uniqueid no chão!

~~>OBS2.:Se o caminho da sua piramide ter mais que 1 SQM de comprimento, adicione <action uniqueid="3497" script="nome_q_vc_colocou.lua"/> com a quantidade correspondente a quantos SQMS a + tem de largura a passagem.Mas mude o unique id!!!

3º Passo:

As coisas aqui vão começando a complicar então siga os passos!

--Faça um labirinto com alguns bichos "matáveis e um portal no final q vai para a cidade principal

--faça duas passagens que n tem como ir nelas (uma parede bloqueando) e uma escada pra desce em cada uma delas: em cada uma, faça uma escada q n tenha como voltar e uma que de em um labirinto e outra numa sala com um item raríssimo(o item, n o baú, n se esqueça disso!)

Agora as actions:

 

pm1 = {x=0, y=0, z=0, stackpos=1} --Parade que desaparecera 1 positiongetpm1 = getThingfromPos(pm1)pm1id = id_da_parede_aquipm2 = {x=0, y=0, z=0, stackpos=1} --Parade que desaparecera 2 positiongetpm2 = getThingfromPos(pm2)pm2id = id_da_parede_aquipm3 = {x=0, y=0, z=0, stackpos=1} --Parade que desaparecera 3 positiongetpm3 = getThingfromPos(pm3)pm3id = id_da_parede_aquipm4 = {x=0, y=0, z=0, stackpos=1} --Parade que desaparecera 4 positiongetpm4 = getThingfromPos(pm4)pm4id = id_da_parede_aquifunction onStepIn(cid, item, pos)doRemoveItem(getpm1.uid,1)doRemoveItem(getpm2.uid,1)doRemoveItem(getpm3.uid,1)doRemoveItem(getpm4.uid,1)endreturn 1end

 

 

<action uniqueid="6497" script="nome_q_vc_colocou.lua"/>

 

A action acima fará com que as paredes desapareçam ao andar em um lugar que voce escolher da piramide

agora para as paredes voltarem ao normal

 

pm1 = {x=0, y=0, z=0, stackpos=1} --Parade que aparecerá 1 positiongetpm1 = getThingfromPos(pm1)pm1id = id_da_parede_aquipm2 = {x=0, y=0, z=0, stackpos=1} --Parade que aparecera 2 positiongetpm2 = getThingfromPos(pm2)pm2id = id_da_parede_aquipm3 = {x=0, y=0, z=0, stackpos=1} --Parade que aparecera 3 positiongetpm3 = getThingfromPos(pm3)pm3id = id_da_parede_aquipm4 = {x=0, y=0, z=0, stackpos=1} --Parade que aparecera 4 positiongetpm4 = getThingfromPos(pm4)pm4id = id_da_parede_aquifunction onStepIn(cid, item, pos)doCreateItem(pm1id.uid,1,pm1)doCreateItem(pm2id.uid,1,pm2)doCreateItem(pm3id.uid,1,pm3)doCreateItem(pm4id.uid,1,pm4)endreturn 1end

 

 

<action uniqueid="3492" script="nome_q_vc_colocou.lua"/>

 

A action acima fará com que as paredes voltem em seus devidos lugares!

Lembrando q tbm tem que colocar unique id no chão!!!

agora, depois de mt trabalheira e esforço meu e seu de configurar tudo, vamos a penultima etapa!!!

4º Passo:agora faça a sala do tesouro!

ultima etapa..:

5º Passo:Faça uma saída mas com paredes bloqueando

agora sim que vem a parte dificil tanto para você quanto para mim ou para o player!!!

Creditos dessa etapa: 75% by me

25% by soulblaster (eu nunka tinha visto onRemoveItem, da primeira vez q eu vi foi no tuto dele e então eu peguei uma partiquica do script dele)

 

function onRemoveItem(item, tileItem, pos)--edite as coordenadas--monsterpos1 = {x=192, y=299, z=10}monsterpos2 = {x=193, y=299, z=10}monsterpos3 = {x=192, y=300, z=10}monsterpos4 = {x=193, y=300, z=10}posicaoX = 199posicaoY = 295posicaoZ = 10--Outros a ser editados--ps1 = {x=0, y=0, z=0, stackpos=1} --Parede que desaparecera 1 positiongetps1 = getThingfromPos(ps1)ps2 = {x=0, y=0, z=0, stackpos=1} --Parede que desaparecera 2 positiongetps2 = getThingfromPos(ps2)-----------------------if pos.x == posicaoX and pos.y == posicaoY and pos.z == posicaoZ thenrand = math.random(1,2)  if rand == 1 then  doSummonCreature("Morguthis", monsterpos1)   doSummonCreature("Thalas", monsterpos2)   doSummonCreature("Omruc", monsterpos3)   doSummonCreature("Vashresamun", monsterpos4)  doRemoveItem(getps1.uid,1)  doRemoveItem(getps2.uid,1)  elseif rand == 2 then  doRemoveItem(getps1.uid,1)  doRemoveItem(getps2.uid,1)endreturn 1end

 

 

<movevent event="RemoveItem" tileitem="0" itemid="id_do_item_premio" script="nome_q_vc_salvou.lua" />

 

~~Esse tile voce deve por onde o player vai passar quando ele estiver saindo da piramide~~

 

function onWalkIn(cid, item, topos)--editando as variaveis--ps1 = {x=0, y=0, z=0, stackpos=1} --Parede que aparecerá 1 positiongetpm1 = getThingfromPos(ps1)ps1id = id_da_parede_aquips2 = {x=0, y=0, z=0, stackpos=1} --Parede que aparecera 2 positiongetps2 = getThingfromPos(ps2)ps2id = id_da_parede_aquipremioid = id_do_premiopremiopos = {x=0, y=0, z=0, stackpos=1} -- Lugar onde o premio esta-----------------------doCreateItem(ps1id.uid,1,ps1)doCreateItem(ps2id.uid,1,ps2)doCreateItem(premioid.uid,1,premiopos)endreturn 1end

 

 

<action uniqueid="9467" script="nome_q_vc_colocou.lua"/>

 

~~~~~~~~~~~~~~~~~~~~~

Bom eu trabalhei muitíssimo, então gostaria que se fossem postar em outro lugar, os devidos créditos seria bom...

CRÉDITOS:

denilson6 (trabalhei em tudinho e td isso veio da minha criatividade)

Thyranic (Sua action de passagem secreta me ajudou a entender alguns negócios)

colex (pelos seus ótimos tutoriais que me ajudaram muitíssimo)

soulbraster (pela primeira vez que postou onRemoveItem no fórum, e que sem esse exemplo, n seria possível a sala do tesouro)

tibiaa4e (Pelo tutorial de como fazer as traps funcionar)

Obrigado a todos, que com suas ótimas actions me ajudaram muito no desenvolvimento dessa!

Esse é um pacote e sugiro que você use numa piramide só e num serv de RPG, mas você também pode usa-las separadas

~~>OBS.:Note que a maioria das actions vc deve colocar unique id no chão =] (são todas que estiver escrito assim: "action uniqueid"

Flws e tenta comenta pq n gosto de postar coisa desse tipo pra nada...

Edit~~> Agora com a versão onStepIn para a nova cvs (Ty SoulBlaster)

Link para o comentário
Compartilhar em outros sites

omG cara OO'

bastante, bastante, bastante OTIMO ;]

mto rpg mesmo ^^

mas (sim vou ser chato) vc usou a funçao onwalkin(antiga cvs) com o onRemoveItem(nova cvs) e isso num irá funcionar OO'

+ espere... tenho a soluçao: ;D

olhe a nova maneira de usar o onWalkIn (para a nova cvs) ^^ link:

http://www.xtibia.com/forum/index.php?showtopic=34564

ta dexa eu explica melhor: a funçao onRemoveItem, só vem na nova cvs... e a funçao onwalkin, só tem na antiga cvs... pois bem, se vc quer usar a funçao onRemoveItem, vc terá de usar o onStepIn ;] (as duas funçoes ficarão na pasta movements[nova cvs])

de uma olhada no link que postei ai em cima ;]

obs-

1 mto mto bom mesmo sua ideia

2 vlw por deixar os creditos... vc é um exemplo de pessoa boa ^^

cya... :bye:

Link para o comentário
Compartilhar em outros sites

  • 1 month later...

Cara, oq posso te falar? Vc é demaiss !! Parabéns mesmo cara, isso é puro RPG.

Nota: 10,00

Pra mim ta perfeito, ainda num testei pq to meio sem tempo, mas qndo eu testa eu edito.

Mas só pela explicação parece q é "perfeito" !!

Link para o comentário
Compartilhar em outros sites

realmente... eu particularmente também achei excelente... =D

talvez eu faça uns edit ae para vocês só precisarem copiar e colar os codes...

 

no meu otserv não vai ter só isso, mas também vai ter "castelo encantado" (encantado, não é amaldiçoado ¬¬'')

Link para o comentário
Compartilhar em outros sites

  • 1 year later...

Nussa oq posso dizer tbm neh, vc eh OTIMO cara, PURO RPG e boa sorte em seus outros trabalhos, ontinue assim.

Indiana Jones kkkkkkkkkkkkkkk

parece com ele.

Flws

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

Excelente cara.. muito bem feito mesmooo...

 

Nem tem muito o que comentar hehehe

Qualquer OTServer com umas actions tipo essa faz sucesso...

 

Vou me basear nessa sua action e criar uma similar para meu ot :D

Obrigado por postar isso, me ajudou bastante

 

 

Parabéns pelo esforço e pelo resultado neh que foi excelente :weight_lift:

Link para o comentário
Compartilhar em outros sites

Puts Cara !

Sinto te Dizer, Mas...

Seu Script Não Funciona !

 

Agora com as modificações Actions, não Aceita OnSteepIn

Você Teria De Arruamar em Movvements , arrumar o movvement type em OnSteepIn,

e não arrumar o UniqueID , só arrumar o ActionID

 

Mas Tamos Ai Flwss!

Idéia Muito Boa, E Bom Script Tb!

Soh Tem Que Ensina Melhor Como Fazer O Bixo !

Pq Tem Que Arruma o Ataque Dele, o Shoot Type, E A Speed...

Nota 9,00 Para o Script

Nota 8,00 Para A Explicação

Nota Parcial: 6,5 Por Causa do Script Estar Errado

 

Flws

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...