Ir para conteúdo
Entre para seguir isso  
Fickss10

[Xml]Como Criar Um Wand Ou Rod

Posts Recomendados

Se você quer fazer uma wand daquela clava que tem no seu ot e você acha bonita mas quer ela como wand,bom vo lhe ensinar

 

então certifique-se de que a arma que deseja por como wand possa ser equipada por druid e/ou sorcerers

as mais legais são:

blessed_sceptre.gifqueens_sceptre.gifskullstaff.gif

 

depois de certificar-se va na pasta do seu ot procure pela pasta items dentro da pasta data e abra o items.xml procure pelo id ou nome da clava que vc quer mudar e colocar como wand

eu estou fazendo com o a dragonbone staff

ela estára assim

 

<item id="7430" article="a" name="dragonbone staff">

<attribute key="weight" value="1800"/>

<attribute key="defense" value="18"/>

<attribute key="attack" value="35"/>

<attribute key="weaponType" value="club"/>

<attribute key="description" value="Small flames are dancing around this strange weapon."/>

</item>

 

mude para

 

<item id="7430" article="a" name="Wand of Dragon Flames"

<attribute key="weight" value="2300"

<attribute key="weaponType" value="wand"/>

<attribute key="shootType" value="fire"

<attribute key="range" value="<4"

</item>

 

explicando

 

Wand of Dragon Flames = name

weight = peso (coloque um valor baixo pois mages não tem muito cap)

shootType o tipo de "tiro" que ira até o target (holy, death, fire , ice , earth e energy

range= a quantidade de sqm que o char atacara com a wand/rod

 

na pasta weapons abra o arquivo weapons.xml

 

cole em algum lugar de preferencia junto com as wands ou rods para ficar organizado

 

<wand id="7430" level="42" mana="13" min="600" max="1000" type="fire" event="function" value="default"> <!-- Wand Of Dragon Flames -->

<vocation id="1"/>

</wand><

 

bem explicando a weapons

wand id= id do item usado

level = level necessário

mana = quanto de mana gastara

min = minimo de dano

max = maximo de dano

type = elemento que explodira embaixo do target

vocation id = id da vocação 1 para sorc e 2 para druid

 

 

terminando mesmo tudo estando como wand não vai mudar se vc colocar vocation 2 druid vai usar é que rods e wands na xml são o mesmo tipo de arma

 

e pra vc que vai cismar e teimar comigo veja oque é o shottype do items.xml e o type da weapons.xml

 

imagemmj.jpg

 

 

eu fiz uma com o shottype de energy e type de death

ela lanca energy e explode death, viu porque não combina? e tem que deichar os dois iguais?

 

mais uma coisa se seu ot suportar que mude o itens.otb ache um id vago e mude para o nome que quiser e mude a sprite usada pelo item vago para qualquer otra e cria a sua wand sem perder um item

 

e para melhorar a organização e leitura de seu xml baixe esse programa:

Please login or register to see this link.

esta hospedado no baixaki e la eles testam e veem se tem spywares malwares e entre outros, pode confiar pois é um site de um provedor sério

 

bem até mais

e espero ser aprovado

qualquer coisa dou um edit no post

mal tinha esquecido desse post lal

tirei os spoils

e sim pode fazer de qualquer tipo eu mesmo ja fiz wand e rod de holy ^^

o bug do spoils foi nos posts mais velhos do forum e como o forum mudou...

Editado por Castiello

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem como eu deixar o tip de hit como holy? o tuto ta muito bem explicado vlw ae

 

 

claro que tem e é bem facil por sinal.

itens.xml

<item id="2437" article="a" name="holy wandirod">

<attribute key="weight" value="2900"/>

<attribute key="weaponType" value="wand"/>

<attribute key="shootType" value="holy"/>

<attribute key="range" value="3"/>

weapons.xml

<wand id="2437" level="100" mana="20" min="70" max="400" type="holy" event="function" value="default"> <!-- holy wandirod -->

<vocation id="2"/>

<vocation id="10" showInDescription="0"/>

 

Aconselho a usar OTScript Live ou notepad c++ para editar o itens.xml, caso contrario voce pode danificar seu itens.xml, TFS 0.3.6+ certamente sera danificado caso voce nao codifique o arquivo no formato UTF-8

Compartilhar este post


Link para o post
Compartilhar em outros sites
<attribute key="shootType" value="fire"

 

Está dizendo que o ataque é fire e você mostrou uma imagem de outro hit ( energy ).

 

@Topic

 

Tente botar os scripts em Code:

 


 

Tirando isso tá bom.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ta ae

!z ou /z:
0 - Blood Splat
1 - Mana Loss
2 - Poff Smoke
3 - Weapon Hit
4 - Explosion Area
5 - Explosion Hit
6 - Fire Area
7 - Yellow Ring
8 - Poison Ring
9 - Hit Area
10 - Teleport
11 - Energy Hit
12 - Blue Magic Sparkle
13 - Red Magic Sparkle
14 - Green Magic Sparkle
15 - Rising Fire
16 - Poison Hit
17 - Mort Area
18 - Green Sound
19 - Red Sound
20 - Poison Area
21 - Yellow Sound
22 - Purple Sound
23 - Blue Sound
24 - White Sound
25 - Bubbles
26 - Craps
27 - Gift Wraps
28 - Yellow Firework
29 - Red Firework
30 - Blue Firework
31 - Stun Effect
32 - Sleep
33 - Sea Serpent
34 - Groundshaker
35 - Hearts
36 - Fire
37 - Energy Area
38 - Small Clouds
39 - Holy Damage
40 - Big Clouds
41 - Ice Area
42 - Ice Tornado
43 - Ice Attack
44 - Stone Shower
45 - Small Plants
46 - Munchy
47 - Purple Energy
48 - Yellow Energy
49 - Holy Caldera
50 - Big Plants
51 - Cake
52 - Giant Ice
53 - Water Splash
54 - Plant Spin
55 - Nao Sei
56 - Nao Sei
57 - Nao Sei
58 - Nao Sei
59 - Nao Sei
60 - Nao Sei
61 - Nao sei
62 - Nao Sei
63 - Nao sei
64 - Nao Sei
65 - Nao Sei
66 - Nao Sei

!x ou /x:
0 - Spear
1 - Bolt
2 - Arrow
3 - Fire
4 - Energy
5 - Poison Arrow
6 - Burst Arrow
7 - Throwing Star
8 - Throwing Knife
9 - Small Stone
10 - Death
11 - Large Rock
12 - Snowball
13 - Power Bolt
14 - Poison
15 - Infernalbolt
16 - Hunting Spear
17 - Enchanted Spear
18 - Assassin Star
19 - Viper Star
20 - Royal Spear
21 - Sniper Arrow
22 - Onyx Arrow
23 - Piecing Bolt
24 - Sword
25 - Axe
26 - Club
27 - Ethreal Spear
28 - Ice
29 - Earth
30 - Holy
31 - Sudden Death
32 - Flash Arrow
33 - Flamming Arrow
34 - Shiver Arrow
35 - Energy Ball
36 - Small Ice
37 - Small Holy
38 - Small Earth
39 - Earth Arrow
40 - Explosion
41 - Cake

Isso fica em data/lib/constant.

Peguei do tutoial do MatheusMkalo de como editar magias.

Please login or register to see this link.

Editado por 139

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ta ae

!z ou /z:
0 - Blood Splat
1 - Mana Loss
2 - Poff Smoke
3 - Weapon Hit
4 - Explosion Area
5 - Explosion Hit
6 - Fire Area
7 - Yellow Ring
8 - Poison Ring
9 - Hit Area
10 - Teleport
11 - Energy Hit
12 - Blue Magic Sparkle
13 - Red Magic Sparkle
14 - Green Magic Sparkle
15 - Rising Fire
16 - Poison Hit
17 - Mort Area
18 - Green Sound
19 - Red Sound
20 - Poison Area
21 - Yellow Sound
22 - Purple Sound
23 - Blue Sound
24 - White Sound
25 - Bubbles
26 - Craps
27 - Gift Wraps
28 - Yellow Firework
29 - Red Firework
30 - Blue Firework
31 - Stun Effect
32 - Sleep
33 - Sea Serpent
34 - Groundshaker
35 - Hearts
36 - Fire
37 - Energy Area
38 - Small Clouds
39 - Holy Damage
40 - Big Clouds
41 - Ice Area
42 - Ice Tornado
43 - Ice Attack
44 - Stone Shower
45 - Small Plants
46 - Munchy
47 - Purple Energy
48 - Yellow Energy
49 - Holy Caldera
50 - Big Plants
51 - Cake
52 - Giant Ice
53 - Water Splash
54 - Plant Spin
55 - Nao Sei
56 - Nao Sei
57 - Nao Sei
58 - Nao Sei
59 - Nao Sei
60 - Nao Sei
61 - Nao sei
62 - Nao Sei
63 - Nao sei
64 - Nao Sei
65 - Nao Sei
66 - Nao Sei

!x ou /x:
0 - Spear
1 - Bolt
2 - Arrow
3 - Fire
4 - Energy
5 - Poison Arrow
6 - Burst Arrow
7 - Throwing Star
8 - Throwing Knife
9 - Small Stone
10 - Death
11 - Large Rock
12 - Snowball
13 - Power Bolt
14 - Poison
15 - Infernalbolt
16 - Hunting Spear
17 - Enchanted Spear
18 - Assassin Star
19 - Viper Star
20 - Royal Spear
21 - Sniper Arrow
22 - Onyx Arrow
23 - Piecing Bolt
24 - Sword
25 - Axe
26 - Club
27 - Ethreal Spear
28 - Ice
29 - Earth
30 - Holy
31 - Sudden Death
32 - Flash Arrow
33 - Flamming Arrow
34 - Shiver Arrow
35 - Energy Ball
36 - Small Ice
37 - Small Holy
38 - Small Earth
39 - Earth Arrow
40 - Explosion
41 - Cake

Isso fica em data/lib/constant.

Peguei do tutoial do MatheusMkalo de como editar magias.

Please login or register to see this link.

 

Valeu(REP++!)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
Entre para seguir isso  

  • Conteúdo Similar

    • Por khaleesi95
      Nome: Camando !spells por vocation.
      Tipo: Talkaction.
      Versão: 8.1
       
      Olá gente, esse é meu primeiro post. Vou ensinar aqui como colocar o comando !spells no seu OT versão 8.1. S[o testei na 8.1, mas acredito que funcione em outras também.
       
      Bom então vamos começar...
       
      Você só vai rpecisar de seu bloco de notas.
       
      PRIMEIRO PASSO:
       
      Entre na pasta dos scripts das talkactions:
       
      OTServ > Data > Talkactions > Scripts
       
      nesta pasta você crie um arquivo com o nome que desejar, eu optei por "spells.lua". Ou se tiver algum arquivo dentro desta pasta, é só copiá-lo, colar na mesma pasta, e renomeá-lo.
       
      SEGUNDO PASSO:
       
      Apague tudo o que estiver no seu novo arquivo.
       
      adicione este código:
       
      function onSay(cid) voc = getPlayerVocation(cid) if voc == 5 then doPlayerSendTextMessage(cid,22,"Magias para Master Sorcerer") elseif voc == 6 then doPlayerSendTextMessage(cid,22,"Magias para Elder Druid") elseif voc == 7 then doPlayerSendTextMessage(cid,22,"Magias para Royal Paladin") elseif voc == 8 then doPlayerSendTextMessage(cid,22,"Magias para Elite Knights") else doPlayerSendTextMessage(cid,22,"Magias para Todos") end return 1 end    
      voc = getPlayerVocation(cid) - Pega a ID da vocação do player.
       
      if voc == 5 then - ID da vocação do player, (5 = Master Sorcerer), você pode mudar para as IDs com promotion, por exemplo os Knight que tem ID 4, assim a menssagem só vai aparecer para os Knight, basta mudar a ID.
       
      doPlayerSendTextMessage(cid,22,"Magias para Master Sorcerer") - Texto que vai aparecer para o player, caso ele seja Master Sorcerer.
       
      doPlayerSendTextMessage(cid,22,"Magias para Todos") - Se você perceber, existe um ELSE logo acima, que é como se falasse que se a vocação do player não for nenhuma entre as 4 definidas: 5, 6, 7 e 8, ele manda esta mensagem, ou seja, se o player é um Knight por exemplo ele manda esta mensagem, no meu caso eu optei por definir as IDs de player com promotion, mas você pode fazer so para knight por exemplo, e so mudar o ID para 4 (ID do knight).
       
      Abaixo tem mais 3 códigos iguais, que diferem na ID, e no texto, para mudar a seu gosto, basta você saber a ID da vocação, e trocá-la, você tabém pode criar textos para outras vocações, é só copiar isso:
       
      elseif voc == ID_DA_VOCATION then doPlayerSendTextMessage(cid,22,"TEXTO_PARA_A_VOCATION")    
      e colar a baixo do ultimo código parecido com este.
       
      TERCEIRO PASSO:
       
      Agora volte um nível nas pastas ou seja:
       
      OTServ > Data > Talkactions
       
      Abra o arquivo "talkactions.xml" e adicione esta linha entre as tags <talkactions> </talkactions>:
       
      <talkaction words="!spells" event="script" script="spells.lua"/>    
      words="!spells" - O que o player deve digitar para que a mensagem apareca em sua tela.
      script="spells.lua" - O nome do arquivo .lua que executa a função, ele está em sua pasta Scripts dentro de Talkactions.
       
      Espero que tenham gostado.
      Abraços.
    • Por khaleesi95
      Nome: NPC que vende BP de fluids!
      Tipo: NPC
      Versão: 8.1
       
      Bom, eu procurei na net várias e várias vezes, um NPC que vende BP de manafluid ou outro tipo de fluid, só achava de runas, etc.
       
      Vamos começar então...
       
      PRIMEIRO PASSO:
       
      Entre na sua pasta NPC e copie qualquer alquivo .xml de NPC que tiver na pasta e em seguida cole-o na mesma pasta:
       
      PASTA_DO_OT > Data > npc
       

       
      ** Pode ser qualquer arquivo.
       
      Após isso renomeie com o nome do NPC que vc quer que venda as BPs
      Ex: Bp Fluid.xml
       
      SEGUNDO PASSO:
       
      Delete tudo que está no seu novo arquivo de NPC (Bp Fluid.xml) e cole isto:
       
      <?xml version="1.0"?><npc name="Vendedor de BP de MF" script="data/npc/scripts/bpfluid.lua" access="0"> <look type="251" head="57" body="57" legs="57" feet="57" addons="2" corpse="3128"/> </npc>    
      name="Vendedor de BP de MF": Nome do NPC ( Vai aparecer em seu OT ).
       
      script="data/npc/scripts/bpfluid.lua": Local onde se encontra o arquivo .lua que vamos configurar mais à frente.
       
      access="0": O Número do acesso do NPC, no caso 0, pois queremos que ele seja acessível a todos do server.
       
      Salve o arquivo.
       
      TERCEIRO PASSO:
       
      Vá na Pasta Scripts dentro da pasta NPC e copie qualquer arquivo e cole na mesma pasta, renomeando-o para "bpfluid.lua" (ver parte verde do código XML), em nosso caso.
       
      QUARTO PASSO:
       
      Apague o conteúdo de seu arquivo "bpfluid.lua" e copie isto:
       
      local focus = 0 local talk_start = 0 local target = 0 local following = false local attacking = false focus = 0 talk_start = 0 target = 0 following = false attacking = false function onThingMove(creature, thing, oldpos, oldstackpos) end function onCreatureAppear(creature) end function onCreatureDisappear(cid, pos) if focus == cid then selfSay('Good bye then.') focus = 0 talk_start = 0 end end function onCreatureTurn(creature) end function msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)')) end function onCreatureSay(cid, type, msg) msg = string.lower(msg) if ((string.find(msg, '(%a*)hi(%a*)')) and (focus == 0)) and getDistanceToCreature(cid) < 3 then selfSay('Olá ' .. creatureGetName(cid) .. '! Eu vendo bps De MF (manafluid) 1k e LF (lifefluid) 600gp.') focus = cid talk_start = os.clock() elseif string.find(msg, '(%a*)hi(%a*)') and (focus ~= cid) and getDistanceToCreature(cid) < 3 then selfSay('Desculpe, ' .. creatureGetName(cid) .. '! Eu falo com você em um minuto.') elseif msgcontains(msg, 'bp de mf') and focus == cid then buyContainer(cid,1988,2006,7,1000,20) talk_start = os.clock() elseif msgcontains(msg, 'bp mf') and focus == cid then buyContainer(cid,1988,2006,7,1000,20) talk_start = os.clock() elseif msgcontains(msg, 'bp de lf') and focus == cid then buyContainer(cid,1988,2006,10,600,20) talk_start = os.clock() elseif msgcontains(msg, 'bp lf') and focus == cid then buyContainer(cid,1988,2006,10,600,20) talk_start = os.clock() elseif string.find(msg, '(%a*)bye(%a*)') and getDistanceToCreature(cid) < 3 then selfSay('Até logo, ' .. creatureGetName(cid) .. '!') focus = 0 talk_start = 0 end end function onCreatureChangeOutfit(creature) end function onThink() if (os.clock() - talk_start) > 30 then if focus > 0 then selfSay('Próximo por favor...') end focus = 0 end end    
      Bom, eu são sou um bom scripter, por isso não vou comentar boa parte desse código, mas vou falar da parte (pelo menos eu acho) mais importante do script, que é a parte onde o NPC vende a BP de Fluid.
       
      Vou mostrar só uma parte da venda (BP de MF) porque a outra é igual só muda um número, e o preço.
       
      elseif msgcontains(msg, 'bp de mf') and focus == cid then buyContainer(cid,1988,2006,7,1000,20) talk_start = os.clock()    
      elseif msgcontains(msg, 'bp de mf'): O que o player deverá diser para comprar sua BP cheia de manalfuid.
       
      Agora vou explicar a parte importante do código:
       
      buyContainer(cid,1988,2006,7,1000,20)
       
      Em marrom: ID da Backpack Simples. Você pode escolher o modelo da Backpack basta saber a ID e trocar por ali.
      Em verde: ID de um "vial": provavelmente vidros onde ficam os fluids (não troque aqui se quer fluid).
      Em azul: ID que define qual tipo de fluid, ex: manafluid, lifefluid, água, e por ai vai. Pra você saber a ID do tipo de fluid, basta ir na pasta "items", e entrar em "items.xml", aqui procure pelo fluid que você quer, no meu pro exemplo a manafluid está com a ID assim: "20007", ai é só utilizar o numero 7 (10 para lifefluid - por exemplo).
      Em vermelho: Preço que o usuário vai pagar pela BP cheia: 1000gp (1k).
      Em rosa: Número de manafluids dentro da backpack, como a bp só cabe 20, ali fica 20. Se quiser colocar bps que cabem mais, você vai ter que editar ali.
       
      NPC QUE VENDE BP DE ITENS
       
      Como prometido, vou falar um pouco sobre esse assunto.
       
      TODOS OS PASSOS DESSE SÃO IGUAIS AOS DA BP DE MANAFLUID, com excesão do último.
       
      Vou explicar este código:
       
      elseif msgcontains(msg, 'bp de uh') and focus == cid then buyContainer(cid,1988,2273,100,600) talk_start = os.clock()    
      elseif msgcontains(msg, 'bp de uh'): O que o player deverá diser para comprar sua BP cheia de UH.
       
      Agora vou explicar a parte importante do código:
       
      buyContainer(cid,1988,2273,100,600)
       
      Em marrom: ID da Backpack Simples. Você pode escolher o modelo da Backpack basta saber a ID e trocar por ali.
      Em verde: ID do Item, no caso UH.
      Em azul: Números de item por slot (UH é agrupável). Se for item que só cabe 1 por slot (ex.: rope - corda), você só precisa apagar o número 100 e uma das vírgulas:buyContainer(cid,1988,2273,600).
      Em vermelho: O preço por BP cheia do Item: 600gp.
       
      COMO COLOCAR SEU NPC NO MAP EDITOR
       
      To sem o MAP EDITOR, mas vou falar mais ou menos aqui:
       
      Vá na pasta do seu MAP editor e procure o arquivo "creatures.xml", copie uma das linhas e Add uma dessas:
       
      <creature looktype="251" name="Bp Fluid" head="57" body="57" legs="57" feet="57" type="npc"/>
       
      lokktype, head, body, legs, feet você copia do arquivo que você criou do NPC na pasta NPC, (PRIMEIRO PASSO).
      name: coloque o Nome que você colocou no seu arquivo de NPC, (PRIMEIRO PASSO).
      type: npc (porque é um NPC).
       
      É bem simples, tem um quadrado vermelho, ao lado de um verde (onde add protection zone), que adiciona uma espécie de "fogo" em um local, nesta área vermelha você pode adicionar NPCs ou Monstros...
       
      Coloque na área onde vai ficar o NPC, esse "fogo" e o QUALQUER (Qualquer um da lista) NPC do lado do "fogo".
       
      Clique numa setinha que tem numa barra horizontal no topo, e dê dois cliques em cima no NPC, agora edite, coloque no lugar do Nome, o nome do arquivo XML que você criou para o NPC.
       
      Ex.: Bp Fluid (só o nome sem o .xml)
       
       
      ** Só testei no 8.1, mas acredito que funcione em outras versões.
       
      Abraços a todos.
    • Por Bielzintxt
      Boa noite, boa tarde ou bom dia. Bom eu pensei em fazer algo diferente ou existente no mundo dos poketibias, estou aqui pedindo um system tm que funciona de x forma. Você pode obter surf, fly, mount etc. onde você poderá remover  ou habilitar novamente no pokemon desejado, pokemons tipo water irá ter o surf, pokemon de montaria terá  a de montaria etc. 
    • Por soaresdk
      Please login or register to see this link.

      ★ Servidor focado no RPG.
      ★ Servidor Hard ( Quer moleza vai jogar Tibia. )
      ★ Mapa, Missões, Sistemas, Cliente originais.
      ★ Vocações: Mais de 12 vocações:
      Gladiator, Barbarian, Viking
      Assassino, Ranger, Archer
      Warlock, Destruction, Necromante
      Xamã, Invoquer, Healer
      ✓ Servido editado diariamente 100% de dedicação.
      ✓ Cliente Próprio.
      ✓ Download do Cliente via Media Fire / Mega.
      ✓ Siga nossa página no facebook.

      Please login or register to see this link.
      /  

       
       
×