WA

Como Adicionar Os Projéteis 8.0

Por Wallacy, 15 de ago. de 2007 em Tutoriais de Scripting

otserv
tibia
script
29
7.8k
WallacyW
15 de agosto de 2007 às 13:13

Colocando os novos projéteis

 

Este é um tutorial para aquelas pessoas que baixaram ot servers que vieram sem os novos projéteis. Nesse tutorial, eu vou ensina-los a adicionar os projéteis novos.

 

As partes do tutorial: 1:Enchanted Spear. 2:Assassin Star. 3:Viper Star. 4:Royal Spear. 5:Golden Bow. 6:Piercing Bolt. 7:Onix Arrow. 8:Sniper Arrow.

 

ATENÇÃO: Para completar os projéteis, você deverá:

1- Fazer uma magia para invoca-lo. -Tutorial aqui!-

2- Configurar o ataque, o peso, e o nome das armas no itens.xml. -Tutorial aqui!-

 

GLOBAL:

1- Abra o arquivo global.lua, localizado na pasta data e coloque:

CONST_ANI_ENCHANTEDSPEAR = 17

CONST_ANI_ASSASSINSTAR = 18

CONST_ANI_GREENSTAR = 19

CONST_ANI_ROYALSPEAR = 20

CONST_ANI_SNIPERARROW = 21

CONST_ANI_ONYXARROW = 22

CONST_ANI_PIERCINGBOLT = 23

CONST_ANI_WHIRLWINDSWORD = 24

CONST_ANI_WHIRLWINDAXE = 25

CONST_ANI_WHIRLWINDCLUB = 26

CONST_ANI_ENCHANTEDSPEAR = 27

CONST_ANI_WEAPONTYPE = 254

Atenção: Antes de coloca-los procure-os e veja se não está os adicionando denovo. Coloque-os acompanhando os prefixos. Ex: "CONST_ANI".

 

COMEÇANDO

 

Parte 1: Enchanted Spear

 

1- Copie um script da pasta data>spells>scripts, cole-o na pasta data>weapons>scripts e o renomeie para: "ench spear".

2- Abra esse script, apague todo seu conteúdo e coloque:

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1)

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENCHANTEDSPEAR)

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

function onUseWeapon(cid, var)

return doCombat(cid, combat, var)

end

3- Abra o weapons.xml (data>weapons) e coloque:

<distance id="7367" range="6" enabled="1" exhaustion="0" hitchance="90" ammo="removecount" script="ench spear.lua"></distance>

4- Salve as alterações e pronto.

 

Parte 2: Assassin Star

 

1- Copie um script da pasta data>spells>scripts, cole-o na pasta data>weapons>scripts e o renomeie para: "assassino".

2- Abra esse script, apague todo seu conteúdo e coloque:

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 6)

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ASSASSINSTAR)

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

function onUseWeapon(cid, var)

return doCombat(cid, combat, var)

end

3- Abra o weapons.xml (data>weapons) e coloque:

<distance id="7368" range="6" enabled="1" exhaustion="0" hitchance="80" ammo="removecount" script="assassino.lua"></distance>

4- Salve as alterações e pronto.

 

Parte 3: Viper Star (Poison damage)

 

1- Copie um script da pasta data>spells>scripts, cole-o na pasta data>weapons>scripts e o renomeie para: "viper".

2- Abra esse script, apague todo seu conteúdo e coloque:

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1)

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_POISONDAMAGE)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_GREENSTAR)

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

function onUseWeapon(cid, var)

return doCombat(cid, combat, var)

end

3- Abra o weapons.xml (data>weapons) e coloque:

<distance id="7366" range="6" enabled="1" exhaustion="0" hitchance="90" ammo="removecount" script="viper.lua"></distance>

4- Salve as alterações e pronto.

 

Parte 4: Royal Spear

 

1- Copie um script da pasta data>spells>scripts, cole-o na pasta data>weapons>scripts e o renomeie para: "royal".

2- Abra esse script, apague todo seu conteúdo e coloque:

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 1)

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ROYALSPEAR)

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

function onUseWeapon(cid, var)

return doCombat(cid, combat, var)

end

3- Abra o weapons.xml (data>weapons) e coloque:

<distance id="7378" range="6" enabled="1" exhaustion="0" hitchance="90" ammo="removecount" script="royal.lua"></distance>

4- Salve as alterações e pronto.

 

Parte 5: Golden Bow

 

1- Copie um script da pasta data>spells>scripts, cole-o na pasta data>weapons>scripts e o renomeie para: "gb".

2- Abra esse script, apague todo seu conteúdo e coloque:

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ONYXARROW)

setCombatFormula(combat, COMBAT_FORMULA_LEVEL, -1.3, -60, -1.3, -95)

 

function onUseWeapon(cid, var)

return doCombat(cid, combat, var)

end

3- Abra o weapons.xml (data>weapons) e coloque:

<wand id="7438" range="9" lvl="55" mana="0" enabled="1" exhaustion="0" hitchance="100" script="gb.lua"><vocation id="3"/><vocation id="7"/></wand>

4- Salve as alterações e pronto.

 

Parte 6: Piercing Bolt

 

1- Copie um script da pasta data>spells>scripts, cole-o na pasta data>weapons>scripts e o renomeie para: "p bolt".

2- Abra esse script, apague todo seu conteúdo e coloque:

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_EFFECT, CONST_ANI_NONE)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_PIERCINGBOLT)

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

function onUseWeapon(cid, var)

return doCombat(cid, combat, var)

end

3- Abra o weapons.xml (data>weapons) e coloque:

<distance id="7363" range="6" enabled="1" exhaustion="0" hitchance="90" ammo="removecount" script="p bolt.lua"></distance>

4- Salve as alterações e pronto.

 

Parte 7: Onix Arrow

 

1- Copie um script da pasta data>spells>scripts, cole-o na pasta data>weapons>scripts e o renomeie para: "onix arrow".

2- Abra esse script, apague todo seu conteúdo e coloque:

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 5)

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ONYXARROW)

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

function onUseWeapon(cid, var)

return doCombat(cid, combat, var)

end

3- Abra o weapons.xml (data>weapons) e coloque:

<distance id="7365" range="6" enabled="1" exhaustion="0" hitchance="90" ammo="removecount" script="onix arrow.lua"></distance>

4- Salve as alterações e pronto.

 

Parte 8: Sniper Arrow

 

1- Copie um script da pasta data>spells>scripts, cole-o na pasta data>weapons>scripts e o renomeie para: "sniper arrow".

2- Abra esse script, apague todo seu conteúdo e coloque:

local combat = createCombatObject()

setCombatParam(combat, COMBAT_PARAM_BLOCKARMOR, 3)

setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)

setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_SNIPERARROW)

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

function onUseWeapon(cid, var)

return doCombat(cid, combat, var)

end

3- Abra o weapons.xml (data>weapons) e coloque:

<distance id="7364" range="7" enabled="1" exhaustion="0" hitchance="99" ammo="removecount" script="sniper arrow.lua"></distance>

4- Salve as alterações e pronto.

 

Bom gente, Isso é tudo.

Espero que tenha ajudado.

Atenciosamente, koti

Allan_MottaA
15 de agosto de 2007 às 15:31

Po cara tu me ajudou mto numa parada aki minha viper star estava bugada po cara vlw msm !!!

 

--EDITED--

 

to tendo problemas com as armas, elas nao tiram hits... talvez o problema esteje na parte:

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

ta tdo zerado, sera q vc poderia configurar pra mim??

Editado Agosto 18 por Allan_Motta

20 de agosto de 2007 às 20:20
Po cara tu me ajudou mto numa parada aki minha viper star estava bugada po cara vlw msm !!!

 

--EDITED--

 

to tendo problemas com as armas, elas nao tiram hits... talvez o problema esteje na parte:

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

ta tdo zerado, sera q vc poderia configurar pra mim??

 

 

**************************Maximos*******************************

 

Bem essa parada ai q suas armas n estão tirandu nda é só os bolt crossbow talz.. essas armas d pally?? pq meu ot tb tava assim tive q baixa otra verção eu colok crossbow e bolt no pally e ele só fikava tirandu miss click \o fods baixei otra verção e fiko mt rox meu ot agora ;DD mais flws ai.

 

 

 

 

****Allan_Motta****

 

Kraaa tu me ajudo mt veio vlw ai kra bjs ;D fuiz..

WallacyW
20 de agosto de 2007 às 22:07
Po cara tu me ajudou mto numa parada aki minha viper star estava bugada po cara vlw msm !!!

 

--EDITED--

 

to tendo problemas com as armas, elas nao tiram hits... talvez o problema esteje na parte:

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, 0, 0, 0)

 

ta tdo zerado, sera q vc poderia configurar pra mim??

 

Simples meu amigo, Antes de copiar+colar os scripts, você deve configura-los no items.xml

PORÉM

Se de tudo não funcionar, você tente isso:

setCombatFormula(combat, COMBAT_FORMULA_SKILL, 0, -Dano Mínimo, 0, -Dano Máximo)

Os "-" antes dos danos são necessários.

 

PS: Só tente isso se de tudo não der! Pois eu nunca ousei testar com COMBAT_SKILL.

JvchequerJ
24 de agosto de 2007 às 17:43

Olá Xtibiano,

 

Parabéns, seu tutorial foi aprovado.

 

Estarei movendo ele para a área de tutoriais.

 

Obrigado por trazer conteúdo para o Xtibia.com e espero que continue com o ótimo trabalho.

 

 

Atenciosamente,

JV Chequer *Diretor de Fórum Xtibia.com*

WondaW
25 de agosto de 2007 às 15:07

kra 1º topico que eu vejo sobre issu.

 

 

 

 

10 posts (x)

50 posts ( )

27 de agosto de 2007 às 15:28

MT BOM ....

 

me ajudou seus tópicos são ótimos parabens ...

 

 

 

FLWS

 

 

atenciosamente gonn....

crawzinhuhC
29 de agosto de 2007 às 20:23

Kra tu eh ######,1° me ajudo nos outfit e agora com essa parada

kra tu eh sinistro

flw's :blink:

DoVeD
02 de setembro de 2007 às 01:22

Rox

 

;)

Editado Setembro 2 por DoVe

DoVeD
02 de setembro de 2007 às 03:57

@Koti

Uma Coisa. eu arrumei os comando tudo devido e certo!

Mais uma duvida, as arumas elas atacaram e os action delas ficaram corretamente. Mais tipo. ela nao ta saindo o dano valido "Adicionado de cordo com o Itens.Xml" Todas essas que vc postou ai nao forum... E msm com akelas soluçao que vc postou mais la em cima, ela tbm nao funfa!...

 

Ai a unica coisa que me restou foi so Add os "CONST_ANI" e nao posta os itens na apasta Scripts. e adiciona os.

 

<attribute key="shootType" value="xxx"/> Na Pasta Itens.Xml

 

Corretamente, pq geralmente nao vem...

 

Pronto so assim ela fica perfect.. mais sem os Action iguais os da Armas que cendo usando no momento.

 

Exemplo. Sniper Arrow, ela sai com Action de "Arrow". So isso.

 

Flw ai. ver se arruma uma soluçao

Editado Setembro 2 por DoVe

WallacyW
02 de setembro de 2007 às 14:41

Você tem que colocar essa tag no items.xml E colocar as actions no weapons. Aí vai dar certo. Sobre a tag, você pode colocar a animação de arrow na tag do items.xml, porém deve adicionar os projéteis Do jeito em que eles foram postados. (ctrl+c ctrl+v)

 

Atenciosamente, Koti.

DoVeD
03 de setembro de 2007 às 06:20
Você tem que colocar essa tag no items.xml E colocar as actions no weapons. Aí vai dar certo. Sobre a tag, você pode colocar a animação de arrow na tag do items.xml, porém deve adicionar os projéteis Do jeito em que eles foram postados. (ctrl+c ctrl+v)

 

Atenciosamente, Koti.

 

@Koti

 

Vou te explica melhor. Fiz tudo denovo devido e certo, pegou normal, mais so q ela nao ta atacando ainda de acordo com o Dano itens.xml

 

ai oq eu tenhu q faser pra isso acontecer e pega normalmente de acordo com os itens.xml

 

Quando eu deleto os arquivo.lua la da pasta Weapons. fuciona normal os dano. de acordo com o itens.xml

 

Se eu retorma os arquivos.lua novamente pra a pasta weapons. o bug volta. os dano de acordo com a pasta itens.xml nao "FUNFA"...

 

Pronto e isso.

 

q eu quero te explicar.

 

(Alguem q tiver com esse msm problema, "ou ta com o problema mais nao percebeu" manda msg. de confirmação.)

 

Vlw! :(

JeovaniJ
07 de setembro de 2007 às 13:44

Muito bom tutorial ;]

Shoter SoulsS
07 de setembro de 2007 às 21:38

Ótimo :) botei no meu server e o pessoal ta adorando, fico cheio de paladin só por causa das assasin star xD

vlw's

christenC
11 de setembro de 2007 às 02:28

kk o mapa dn walcker jah vem com os projects