Postado Janeiro 14, 2015 10 anos Este é um post popular. Olá pessoal, estou fazendo esse tutorial a pedido de admelite no meu tópico como um tutorial é algo fácil e rápido de fazer (dependendo do tema) eu me propus a fazer: Esse tutorial é bem simples, porém não se encontra no TibiaKing, acho que o motivo é a sua simplicidade, e ele pode ajudar a qualquer um que esteja começando agora a criar um servidor tibia OTserver. Ok chega de lorotas, vamos começar: De nada adianta você querer adicionar uma spell, se você não sabe fazer uma, por isso, eu recomendo que veja pelo menos dois tópicos do fórum antes de ver este: http://www.tibiaking.com/forum/topic/7448-criando-spells-para-seu-servidor/ http://www.tibiaking.com/forum/topic/48868-spell-creator/ O principal a se saber antes de eu começar é: que quase todos os scripts ou sistemas do tibia, sejam eles de creaturescripts ou actions ou qualquer coisa, precisam ser registrados em um XML, para serem carregados ao OTserver ligar ou carregados ao GOD dar o comando /reload (param), não esquecendo também que os scripts são extremamente necessários, sem uma das duas partes, seja XML ou seja SCRIPT, não será possível utilizar o script no servidor. Nota: Se você não sabe o que é extensão ou não tem nem ideia, pesquise no google, o que é extensão de arquivo. Nesse tutorial, você precisa ao menos saber o que é isso e saber ver, para isso vá em: Opções de pasta: E seguida, vá na aba modo de exibição e desmarque a seguinte opção: XMLs: Os XMLs, são arquivos com a extensão XML e servem para mostrar ao servidor o que carregar, como se fosse um indicador. Vou usar o exemplo de um XML de spells... <?xml version="1.0" encoding="UTF-8"?> <spells> <!-- Attack Runes --> <rune name="Poison Field" id="2285" allowfaruse="1" charges="3" lvl="14" maglv="0" exhaustion="2000" blocktype="solid" event="script" value="attack/poison field.lua"/> <rune name="Poison Bomb" id="2286" allowfaruse="1" charges="2" lvl="25" maglv="4" exhaustion="2000" blocktype="solid" event="script" value="attack/poison bomb.lua"/> <rune name="Poison Wall" id="2289" allowfaruse="1" charges="4" lvl="29" maglv="5" exhaustion="2000" blocktype="solid" event="script" value="attack/poison wall.lua"/> <rune name="Fire Field" id="2301" allowfaruse="1" charges="3" lvl="15" maglv="1" exhaustion="2000" blocktype="solid" event="script" value="attack/fire field.lua"/> <rune name="Firebomb" id="2305" allowfaruse="1" charges="2" lvl="27" maglv="5" exhaustion="2000" blocktype="solid" event="script" value="attack/fire bomb.lua"/> <rune name="Fire Wall" id="2303" allowfaruse="1" charges="4" lvl="33" maglv="6" exhaustion="2000" blocktype="solid" event="script" value="attack/fire wall.lua"/> <rune name="Soulfire" id="2308" allowfaruse="1" charges="3" lvl="27" maglv="7" exhaustion="2000" needtarget="1" blocktype="solid" event="script" value="attack/soul fire.lua"/> <rune name="Fireball" id="2302" allowfaruse="1" charges="5" lvl="27" maglv="4" exhaustion="2000" needtarget="1" blocktype="solid" event="script" value="attack/fireball.lua"/> <rune name="Great Fireball" id="2304" allowfaruse="1" charges="4" lvl="30" maglv="4" exhaustion="2000" blocktype="solid" event="script" value="attack/great fireball.lua"/> <rune name="Energy Field" id="2277" allowfaruse="1" charges="3" lvl="18" maglv="3" exhaustion="2000" blocktype="solid" event="script" value="attack/energy field.lua"/> <rune name="Energybomb" id="2262" allowfaruse="1" charges="2" lvl="37" maglv="10" exhaustion="2000" blocktype="solid" event="script" value="attack/energy bomb.lua"/> <rune name="Energy Wall" id="2279" allowfaruse="1" charges="4" lvl="41" maglv="9" exhaustion="2000" blocktype="solid" event="script" value="attack/energy wall.lua"/> <rune name="Light Magic Missile" id="2287" allowfaruse="1" charges="10" lvl="15" exhaustion="2000" maglv="0" needtarget="1" blocktype="solid" event="script" value="attack/light magic missile.lua"/> <rune name="Heavy Magic Missile" id="2311" allowfaruse="1" charges="10" lvl="25" exhaustion="2000" maglv="3" needtarget="1" blocktype="solid" event="script" value="attack/heavy magic missile.lua"/> <rune name="Explosion" id="2313" allowfaruse="1" charges="6" lvl="31" maglv="6" exhaustion="2000" blocktype="solid" event="script" value="attack/explosion.lua"/> <rune name="Sudden Death" id="2268" allowfaruse="1" charges="3" lvl="45" maglv="15" exhaustion="1300" needtarget="1" blocktype="solid" event="script" value="attack/sudden death.lua"/> <rune name="Icicle" id="2271" allowfaruse="1" charges="5" lvl="28" maglv="4" exhaustion="2000" needtarget="1" event="script" value="attack/icicle.lua"/> <rune name="Avalanche" id="2274" allowfaruse="1" charges="4" lvl="30" maglv="4" exhaustion="2000" event="script" value="attack/avalanche.lua"/> <rune name="Stone Shower" id="2288" allowfaruse="1" charges="4" lvl="28" maglv="4" exhaustion="2000" event="script" value="attack/stone shower.lua"/> <rune name="Thunderstorm" id="2315" allowfaruse="1" charges="4" lvl="28" maglv="4" exhaustion="2000" event="script" value="attack/thunderstorm.lua"/> <rune name="Stalagmite" id="2292" allowfaruse="1" charges="10" lvl="24" maglv="3" exhaustion="2000" needtarget="1" event="script" value="attack/stalagmite.lua"/> <rune name="Holy Missile" id="2295" allowfaruse="1" charges="5" lvl="27" maglv="4" exhaustion="2000" needtarget="1" blocktype="solid" event="script" value="attack/holy missile.lua"> <vocation id="3"/> <vocation id="7" showInDescription="0"/> </rune> <!-- Healing Runes --> <rune name="Antidote Rune" id="2266" allowfaruse="1" charges="1" lvl="15" maglv="0" exhaustion="1000" aggressive="0" needtarget="1" blocktype="solid" event="script" value="healing/antidote rune.lua"/> <rune name="Intense Healing Rune" id="2265" allowfaruse="1" charges="1" lvl="15" maglv="1" exhaustion="1000" aggressive="0" needtarget="1" blocktype="solid" event="script" value="healing/intense healing rune.lua"/> <rune name="Ultimate Healing Rune" id="2273" allowfaruse="1" charges="1" lvl="24" maglv="4" exhaustion="1000" aggressive="0" needtarget="1" blocktype="solid" event="script" value="healing/ultimate healing rune.lua"/> <!-- Summon Runes --> <rune name="Convince Creature" id="2290" allowfaruse="1" charges="1" lvl="16" maglv="5" exhaustion="2000" needtarget="1" blocktype="solid" event="function" value="convince"/> <rune name="Animate Dead" id="2316" allowfaruse="1" charges="1" lvl="27" maglv="4" exhaustion="2000" blocktype="solid" event="script" value="summon/animate dead rune.lua"/> <!-- Support Runes --> <rune name="Desintegrate" id="2310" allowfaruse="0" charges="3" lvl="21" maglv="4" exhaustion="2000" range="1" event="script" value="support/desintegrate rune.lua"/> <rune name="Destroy Field" id="2261" allowfaruse="1" charges="3" lvl="17" maglv="3" exhaustion="1000" aggressive="0" range="5" event="script" value="support/destroy field rune.lua"/> <rune name="Chameleon" id="2291" allowfaruse="1" charges="1" lvl="27" maglv="4" exhaustion="1000" aggressive="0" selftarget="1" blocktype="solid" event="function" value="chameleon"/> <rune name="Magic Wall" id="2293" allowfaruse="1" charges="3" lvl="32" maglv="9" exhaustion="2000" blocktype="all" event="script" value="support/magic wall rune.lua"/> <rune name="Wild Growth" id="2269" allowfaruse="1" charges="2" lvl="27" maglv="8" exhaustion="2000" blocktype="all" event="script" value="support/wild growth rune.lua"> <vocation id="2"/> <vocation id="6" showInDescription="0"/> </rune> <rune name="Paralyze" id="2278" allowfaruse="1" charges="1" lvl="54" maglv="18" exhaustion="2000" mana="1400" needtarget="1" blocktype="solid" event="script" value="support/paralyze rune.lua"> <vocation id="1"/> <vocation id="5" showInDescription="0"/> <vocation id="2"/> <vocation id="6" showInDescription="0"/> </rune> <!-- Attack Spells --> <instant name="Death Strike" words="exori mort" lvl="16" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/death strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> <instant name="Flame Strike" words="exori flam" lvl="12" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/flame strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> <instant name="Energy Strike" words="exori vis" lvl="12" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/energy strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> <instant name="Whirlwind Throw" words="exori hur" lvl="15" mana="40" prem="1" range="5" needtarget="1" blockwalls="1" needweapon="1" exhaustion="2000" needlearn="0" event="script" value="attack/whirlwind throw.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Fire Wave" words="exevo flam hur" lvl="18" mana="25" direction="1" exhaustion="2000" needlearn="0" event="script" value="attack/fire wave.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Ethereal Spear" words="exori con" lvl="23" mana="25" prem="1" range="5" needtarget="1" exhaustion="2000" blockwalls="1" needlearn="0" event="script" value="attack/ethereal spear.lua"> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Energy Beam" words="exevo vis lux" lvl="23" mana="40" direction="1" exhaustion="2000" needlearn="0" event="script" value="attack/energy beam.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Great Energy Beam" words="exevo gran vis lux" lvl="29" mana="110" direction="1" exhaustion="2000" needlearn="0" event="script" value="attack/great energy beam.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Groundshaker" words="exori mas" lvl="33" mana="160" prem="1" needweapon="1" exhaustion="2000" needlearn="0" event="script" value="attack/groundshaker.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Berserk" words="exori" lvl="35" mana="115" prem="1" needweapon="1" exhaustion="2000" needlearn="0" event="script" value="attack/berserk.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Energy Wave" words="exevo vis hur" lvl="38" mana="170" direction="1" exhaustion="2000" needlearn="0" event="script" value="attack/energy wave.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Rage of the Skies" words="exevo gran mas vis" lvl="55" mana="650" selftarget="1" prem="1" exhaustion="2000" needlearn="0" event="script" value="attack/rage of the skies.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Fierce Berserk" words="exori gran" lvl="70" mana="340" prem="1" needweapon="1" exhaustion="2000" needlearn="0" event="script" value="attack/fierce berserk.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Hells Core" words="exevo gran mas flam" lvl="60" mana="1200" prem="1" exhaustion="2000" selftarget="1" needlearn="0" event="script" value="attack/hells core.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Divine Missile" words="exori san" lvl="40" mana="20" prem="1" range="4" casterTargetOrDirection="1" needlearn="0" blockwalls="1" exhaustion="2000" event="script" value="attack/divine missile.lua"> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Divine Caldera" words="exevo mas san" lvl="50" mana="160" prem="1" selftarget="1" exhaustion="2000" needlearn="0" event="script" value="attack/divine caldera.lua"> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Eternal Winter" words="exevo gran mas frigo" lvl="60" mana="1200" prem="1" selftarget="1" exhaustion="2000" needlearn="0" event="script" value="attack/eternal winter.lua"> <vocation id="2"/> <vocation id="6"/> </instant> <instant name="Ice Strike" words="exori frigo" lvl="15" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/ice strike.lua"> <vocation id="1"/> <vocation id="5"/> <vocation id="2"/> <vocation id="6"/> </instant> <instant name="Ice Wave" words="exevo frigo hur" lvl="18" mana="25" direction="1" exhaustion="2000" needlearn="0" event="script" value="attack/ice wave.lua"> <vocation id="2"/> <vocation id="6"/> </instant> <instant name="Terra Strike" words="exori tera" lvl="13" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/terra strike.lua"> <vocation id="1"/> <vocation id="5"/> <vocation id="2"/> <vocation id="6"/> </instant> <instant name="Terra Wave" words="exevo tera hur" lvl="38" mana="210" direction="1" exhaustion="2000" needlearn="0" event="script" value="attack/terra wave.lua"> <vocation id="2"/> <vocation id="6"/> </instant> <instant name="Wrath of Nature" words="exevo gran mas tera" lvl="55" mana="770" prem="1" selftarget="1" exhaustion="2000" needlearn="0" event="script" value="attack/wrath of nature.lua"> <vocation id="2"/> <vocation id="6"/> </instant> <!-- Healing Spells --> <instant name="Light Healing" words="exura" lvl="9" mana="20" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="healing/light healing.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> <instant name="Antidote" words="exana pox" lvl="10" mana="30" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="healing/antidote.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> <instant name="Antiflame" words="exana flam" lvl="15" mana="35" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="healing/antiflame.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> <instant name="Intense Healing" words="exura gran" lvl="11" mana="70" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="healing/intense healing.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> </instant> <instant name="Heal Friend" words="exura sio" lvl="18" mana="140" prem="1" aggressive="0" needtarget="1" params="1" exhaustion="2000" needlearn="0" event="script" value="healing/heal friend.lua"> <vocation id="2"/> <vocation id="6"/> </instant> <instant name="Ultimate Healing" words="exura vita" lvl="20" mana="160" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="healing/ultimate healing.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> </instant> <instant name="Mass Healing" words="exura gran mas res" lvl="36" mana="150" prem="1" aggressive="0" exhaustion="1000" needlearn="0" event="script" value="healing/mass healing.lua"> <vocation id="2"/> <vocation id="6"/> </instant> <instant name="Divine Healing" words="exura san" lvl="35" mana="210" prem="1" selftarget="1" aggressive="0" exhaustion="1000" needlearn="0" event="script" value="healing/divine healing.lua"> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Wound Cleansing" words="exana mort" lvl="30" mana="65" prem="1" selftarget="1" aggressive="0" exhaustion="1300" needlearn="0" event="script" value="healing/wound cleasing.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <!-- Support Spells --> <instant name="Light" words="utevo lux" lvl="8" mana="20" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/light.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> <instant name="Find Person" words="exiva" lvl="8" mana="20" aggressive="0" params="1" exhaustion="1000" needlearn="0" event="function" value="searchPlayer"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> <instant name="Magic Rope" words="exani tera" lvl="9" mana="20" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/magic rope.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> <instant name="Levitate" words="exani hur" lvl="12" mana="50" prem="1" aggressive="0" exhaustion="1000" params="1" needlearn="0" event="function" value="Levitate"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> <instant name="Great Light" words="utevo gran lux" lvl="13" mana="60" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/great light.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> <instant name="Magic Shield" words="utamo vita" lvl="14" mana="50" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/magic shield.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> </instant> <instant name="Haste" words="utani hur" lvl="14" mana="60" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/haste.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </instant> <instant name="Charge" words="utani tempo hur" lvl="25" mana="100" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/charge.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Swift Foot" words="utamo tempo san" lvl="55" mana="400" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/swift foot.lua"> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Challenge" words="exeta res" lvl="20" mana="30" prem="1" aggressive="0" exhaustion="1000" needlearn="0" event="script" value="support/challenge.lua"> <vocation id="8"/> </instant> <instant name="Strong Haste" words="utani gran hur" lvl="20" mana="100" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/strong haste.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> <instant name="Creature Illusion" words="utevo res ina" lvl="23" mana="100" aggressive="0" params="1" exhaustion="1000" needlearn="0" event="function" value="Illusion"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> <instant name="Ultimate Light" words="utevo vis lux" lvl="26" mana="140" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/ultimate light.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> <instant name="Cancel Invisibility" words="exana ina" lvl="26" mana="200" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/cancel invisibility.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Invisibility" words="utana vid" lvl="35" mana="440" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/invisible.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> </instant> <instant name="Sharpshooter" words="utito tempo san" lvl="60" mana="450" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/sharpshooter.lua"> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Protector" words="utamo tempo" lvl="55" mana="200" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/protector.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Blood Rage" words="utito tempo" lvl="60" mana="290" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/blood rage.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <!-- Party Spells --> <instant name="Train Party" words="utito mas sio" lvl="32" mana="60" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="party/train.lua"> <vocation id="8"/> </instant> <instant name="Protect Party" words="utamo mas sio" lvl="32" mana="90" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="party/protect.lua"> <vocation id="7"/> </instant> <instant name="Heal Party" words="utura mas sio" lvl="32" mana="120" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="party/heal.lua"> <vocation id="6"/> </instant> <instant name="Enchant Party" words="utori mas sio" lvl="32" mana="120" prem="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="party/enchant.lua"> <vocation id="5"/> </instant> <!-- Summon Spells --> <instant name="Summon Creature" words="utevo res" lvl="25" params="1" exhaustion="2000" needlearn="0" event="function" value="summonMonster"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> <!-- Conjure Spells --> <conjure name="Conjure Arrow" words="exevo con" lvl="13" mana="100" soul="1" conjureId="2544" conjureCount="10" exhaustion="1000" needlearn="0" event="function" value="conjureItem"> <vocation id="3"/> <vocation id="7"/> </conjure> <instant name="Food" words="exevo pan" lvl="14" mana="120" soul="1" aggressive="0" selftarget="1" exhaustion="1000" needlearn="0" event="script" value="support/conjure food.lua"> <vocation id="2"/> <vocation id="3"/> <vocation id="6"/> <vocation id="7"/> </instant> <conjure name="Poisoned Arrow" words="exevo con pox" lvl="16" mana="130" soul="2" conjureId="2545" conjureCount="7" exhaustion="1000" needlearn="0" event="function" value="conjureItem"> <vocation id="3"/> <vocation id="7"/> </conjure> <conjure name="Conjure Bolt" words="exevo con mort" lvl="17" mana="140" soul="2" prem="1" conjureId="2543" conjureCount="5" exhaustion="1000" needlearn="0" event="function" value="conjureItem"> <vocation id="3"/> <vocation id="7"/> </conjure> <conjure name="Conjure Sniper Arrow" words="exevo con hur" lvl="24" mana="160" soul="3" prem="1" conjureId="7364" conjureCount="5" exhaustion="1000" needlearn="0" event="function" value="conjureItem"> <vocation id="3"/> <vocation id="7"/> </conjure> <conjure name="Explosive Arrow" words="exevo con flam" lvl="25" mana="290" soul="3" conjureId="2546" conjureCount="8" exhaustion="1000" needlearn="0" event="function" value="conjureItem"> <vocation id="3"/> <vocation id="7"/> </conjure> <conjure name="Conjure Piercing Bolt" words="exevo con grav" lvl="33" mana="180" soul="3" prem="1" conjureId="7363" conjureCount="5" exhaustion="1000" needlearn="0" event="function" value="conjureItem"> <vocation id="3"/> <vocation id="7"/> </conjure> <conjure name="Enchant Staff" words="exeta vis" lvl="41" mana="80" prem="1" conjureId="2433" reagentId="2401" exhaustion="1000" needlearn="0" event="function" value="conjureItem"> <vocation id="5"/> </conjure> <conjure name="Enchant Spear" words="exeta con" lvl="45" mana="350" soul="3" prem="1" conjureId="7367" reagentId="2389" exhaustion="1000" needlearn="0" event="function" value="conjureItem"> <vocation id="3"/> <vocation id="7"/> </conjure> <conjure name="Power Bolt" words="exevo con vis" lvl="59" mana="800" soul="4" prem="1" conjureId="2547" conjureCount="10" exhaustion="1000" needlearn="0" event="function" value="conjureItem"> <vocation id="7"/> </conjure> <conjure name="Conjure Assassin" words="exevo con san" lvl="80" mana="500" soul="0" conjureId="7368" conjureCount="15" exhaustion="1000" needlearn="0" function="conjureItem"> <vocation name="Royal Paladin"/> </conjure> <conjure name="Conjure Blank" words="adori blank" lvl="20" mana="200" soul="0" conjureId="2260" conjureCount="1" exhaustion="2000" needlearn="0" function="conjureItem"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="4"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> <vocation id="8"/> </conjure> <conjure name="Poison Field" words="adevo grav pox" lvl="14" mana="200" soul="1" reagentId="2260" conjureId="2285" conjureCount="3" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Light Magic Missile" words="adori min vis" lvl="15" mana="120" soul="1" reagentId="2260" conjureId="2287" conjureCount="10" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Fire Field" words="adevo grav flam" lvl="15" mana="240" soul="1" reagentId="2260" conjureId="2301" conjureCount="3" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Fireball" words="adori flam" lvl="27" mana="460" soul="3" prem="1" reagentId="2260" conjureId="2302" conjureCount="5" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="5"/> </conjure> <conjure name="Energy Field" words="adevo grav vis" lvl="18" mana="320" soul="2" reagentId="2260" conjureId="2277" conjureCount="3" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Stalagmite" words="adori tera" lvl="24" mana="400" soul="2" prem="2" reagentId="2260" conjureId="2292" conjureCount="10" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="5"/> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Great Fireball" words="adori mas flam" lvl="30" mana="530" soul="3" reagentId="2260" conjureId="2304" conjureCount="4" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="5"/> </conjure> <conjure name="Heavy Magic Missile" words="adori vis" lvl="25" mana="350" soul="2" reagentId="2260" conjureId="2311" conjureCount="10" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="5"/> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Poison Bomb" words="adevo mas pox" lvl="25" mana="520" soul="2" prem="1" reagentId="2260" conjureId="2286" conjureCount="2" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Firebomb" words="adevo mas flam" lvl="27" mana="600" soul="4" reagentId="2260" conjureId="2305" conjureCount="2" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Soulfire" words="adevo res flam" lvl="27" mana="600" soul="3" prem="1" reagentId="2260" conjureId="2308" conjureCount="3" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Poison Wall" words="adevo mas grav pox" lvl="29" mana="640" soul="3" reagentId="2260" conjureId="2289" conjureCount="4" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Explosion" words="adevo mas hur" lvl="31" mana="570" soul="4" reagentId="2260" conjureId="2313" conjureCount="6" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Fire Wall" words="adevo mas grav flam" lvl="33" mana="780" soul="4" reagentId="2260" conjureId="2303" conjureCount="4" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Energybomb" words="adevo mas vis" lvl="37" mana="880" soul="5" prem="1" reagentId="2260" conjureId="2262" conjureCount="2" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="5"/> </conjure> <conjure name="Energy Wall" words="adevo mas grav vis" lvl="41" mana="1000" soul="5" reagentId="2260" conjureId="2279" conjureCount="4" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Sudden Death" words="adori gran mort" lvl="45" mana="985" soul="5" reagentId="2260" conjureId="2268" conjureCount="3" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="5"/> </conjure> <conjure name="Antidote Rune" words="adana pox" lvl="15" mana="200" soul="1" reagentId="2260" conjureId="2266" conjureCount="1" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Intense Healing Rune" words="adura gran" lvl="15" mana="240" soul="2" reagentId="2260" conjureId="2265" conjureCount="1" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Ultimate Healing Rune" words="adura vita" lvl="24" mana="400" soul="3" reagentId="2260" conjureId="2273" conjureCount="1" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Convince Creature" words="adeta sio" lvl="16" mana="200" soul="3" reagentId="2260" conjureId="2290" conjureCount="1" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Animate Dead" words="adana mort" lvl="27" mana="600" soul="5" prem="1" reagentId="2260" conjureId="2316" conjureCount="1" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </conjure> <conjure name="Chameleon" words="adevo ina" lvl="27" mana="600" soul="2" reagentId="2260" conjureId="2291" conjureCount="1" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Destroy Field" words="adito grav" lvl="17" mana="120" soul="2" reagentId="2260" conjureId="2261" conjureCount="3" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> </conjure> <conjure name="Desintegrate" words="adito tera" lvl="21" mana="200" soul="3" prem="1" reagentId="2260" conjureId="2310" conjureCount="3" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="2"/> <vocation id="3"/> <vocation id="5"/> <vocation id="6"/> <vocation id="7"/> </conjure> <conjure name="Magic Wall" words="adevo grav tera" lvl="32" mana="750" soul="5" prem="1" reagentId="2260" conjureId="2293" conjureCount="3" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="5"/> </conjure> <conjure name="Wild Growth" words="adevo grav vita" lvl="27" mana="600" soul="5" prem="1" reagentId="2260" conjureId="2269" conjureCount="2" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Paralyze" words="adana ani" lvl="54" mana="1400" soul="3" prem="1" reagentId="2260" conjureId="2278" conjureCount="1" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Icicle" words="adori frigo" lvl="28" mana="460" soul="3" prem="1" reagentId="2260" conjureId="2271" conjureCount="5" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Avalanche" words="adori mas frigo" lvl="30" mana="530" soul="3" reagentId="2260" conjureId="2274" conjureCount="4" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Stone Shower" words="adori mas tera" lvl="28" mana="430" soul="3" prem="1" reagentId="2260" conjureId="2288" conjureCount="4" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="2"/> <vocation id="6"/> </conjure> <conjure name="Thunderstorm" words="adori mas vis" lvl="28" mana="430" soul="3" prem="1" reagentId="2260" conjureId="2315" conjureCount="4" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="1"/> <vocation id="5"/> </conjure> <conjure name="Holy Missile" words="adori san" lvl="27" mana="350" soul="3" prem="1" reagentId="2260" conjureId="2295" conjureCount="5" exhaustion="1000" needlearn="0" event="function" value="conjureRune"> <vocation id="3"/> <vocation id="7"/> </conjure> <instant name="Annihilation" words="exori gran ico" lvl="110" mana="300" prem="1" needweapon="1" exhaustion="23000" groups="1,23000" icon="62" needlearn="0" needtarget="1" script="attack/annihilation.lua"> <vocation id="4"/> <vocation id="8"/> </instant><instant name="Brutal Strike" words="exori ico" lvl="16" mana="30" prem="1" range="1" needtarget="1" blockwalls="1" needweapon="1" exhaustion="6000" groups="1,6000" icon="61" needlearn="0" script="attack/brutal strike.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Curser" words="utori mort" lvl="75" mana="30" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="50000" groups="1,50000" icon="139" needlearn="0" script="attack/curse.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Electrify" words="utori vis" lvl="34" mana="30" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="30000" groups="1,30000" icon="140" needlearn="0" script="attack/electrify.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Envenom" words="utori pox" lvl="40" mana="30" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="40000" groups="1,40000" icon="142" needlearn="0" script="attack/envenom.lua"> <vocation id="2"/> <vocation id="6"/> </instant> <instant name="Front Sweep" words="exori min" lvl="70" mana="200" prem="1" needweapon="1" exhaustion="6000" groups="1,6000" icon="59" needlearn="0" script="attack/frontsweep.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Ignite" words="utori flam" lvl="26" mana="30" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="30000" groups="1,30000" icon="138" needlearn="0" script="attack/ignite.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Inflict Wound" words="utori kor" lvl="40" mana="30" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" needweapon="1" exhaustion="30000" groups="1,30000" icon="141" needlearn="0" event="script" value="attack/Inflict Wound.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Lightning" words="exori amp vis" lvl="55" mana="160" prem="1" range="4" casterTargetOrDirection="1" blockwalls="1" exhaustion="8000" groups="1,8000" icon="149" needlearn="0" script="attack/lightning.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Physical Strike" words="exori moe ico" lvl="16" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" groups="1,2000" icon="148" needlearn="0" script="attack/physicalstrike.lua"> <vocation id="2"/> <vocation id="6"/> </instant> <instant name="Strong Energy Strike" words="exori gran vis" lvl="80" mana="60" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="8000" groups="1,8000" icon="151" needlearn="0" script="attack/strongenergystrike.lua"> <vocation id="1"/> <vocation id="5"/> </instant> <instant name="Strong Ethereal Spear" words="exori gran con" lvl="90" mana="55" prem="1" range="5" needtarget="1" exhaustion="8000" groups="1,8000" icon="57" blockwalls="1" needlearn="0" script="attack/strongetherealspear.lua"> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Cure Bleeding" words="exana kor" lvl="45" mana="30" aggressive="0" selftarget="1" exhaustion="6000" groups="2,6000" icon="144" needlearn="0" event="script" value="healing/Cure Bleeding.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Intense Recovery" words="utura gran" lvl="100" mana="165" prem="1" selftarget="1" aggressive="0" exhaustion="60000" groups="2,60000" icon="160" needlearn="0" script="healing/intenserecovery.lua"> <vocation id="4"/> <vocation id="8"/> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Intense Wound Cleansing" words="exura gran ico" lvl="80" mana="200" prem="1" selftarget="1" aggressive="0" exhaustion="600000" groups="2,600000" icon="158" needlearn="0" script="healing/intensewoundcleansing.lua"> <vocation id="4"/> <vocation id="8"/> </instant> <instant name="Recovery" words="utura" lvl="50" mana="75" prem="1" selftarget="1" aggressive="0" exhaustion="60000" groups="2,60000" icon="159" needlearn="0" script="healing/recovery.lua"> <vocation id="4"/> <vocation id="8"/> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Salvation" words="exura gran san" lvl="60" mana="210" prem="1" selftarget="1" aggressive="0" exhaustion="1000" groups="2,1000" icon="36" needlearn="0" script="healing/salvation.lua"> <vocation id="3"/> <vocation id="7"/> </instant> <instant name="Holy Flash" words="utori san" lvl="70" mana="50" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="40000" groups="1,40000" icon="143" needlearn="0" script="attack/holyflash.lua"> <vocation id="3"/> <vocation id="7"/> </instant> </spells> Todos os XMLs precisam ser abertos e fechados internamente, o xml da Spells é aberto com <spells> e é fechado com </spells> E todas as spells, devem ser inseridas em baixo de um </instant> , exceto a primeira de uma aba, que pode ser criada assim: <!-- Aba --> o </instante> serve para separar o começo da nova spell do final da spell anterior, ele é de extrema importância, se não você irá bugar 2 spells. <instant name="Death Strike" words="exori mort" lvl="16" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/death strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> Legenda: Linguagem binária: Usa-se 0 para não e 1 para sim ! instant name = Nome da magia. words = Palavra para chamar a magia. lvl = Level mínimo para usar a magia mana = Mana que gastará a magia. prem = Se precisa de premmium para usar a magia. range = Distância (em sqm) da magia casterTargetOrDirection = Seguir alvo ou direção. blockwalls = Não passará paredes. exhaustion = Tempo para repetir a magia. (em mili segundos cada 1000 é 1 segundo) needlearn = Se precisa aprender para usar a magia event = Sempre use script, não interessa a function agora... value = Onde se encontra o script vocation = Vocação para usar a magia. Vocations: Nos servidores normais: Rookie = 0 (qualquer um pode usar) Sorcerer = 1 Druid = 2 Paladin = 3 Knight = 4 Master Sorcerer = 5 Elder Druid = 6 Royal Paladin = 7 Elite Knight = 8 Agora se você quer adicionar uma nova spell no seu XML, suponhamos que seja assim o seu XML: <?xml version="1.0" encoding="UTF-8"?> <spells> <!-- Suas spells --> <instant name="Death Strike" words="exori mort" lvl="16" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/death strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> </spells> Para adicionar simplesmente fazemos isso: <?xml version="1.0" encoding="UTF-8"?> <spells> <!-- Suas spells --> <instant name="Death Strike" words="exori mort" lvl="16" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/death strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> <instant name="Death Strike" words="exori mort" lvl="16" mana="20" prem="1" range="3" casterTargetOrDirection="1" blockwalls="1" exhaustion="2000" needlearn="0" event="script" value="attack/death strike.lua"> <vocation id="1"/> <vocation id="2"/> <vocation id="5"/> <vocation id="6"/> </instant> </spells> Veja como o </instant> no final das spells, serve para dividi-las. Aviso: De nada serve adicionar a spell ao XML se não tiver o SCRIPT a tag no XML é simplesmente para avisar ao otserver que tem um conteúdo, ou seja, de nada vai servir avisar que tem, se não tiver, só dará erro na distro e dor de cabeça. Créditos: EU O Tutorial acaba aqui. se você gostou deixe o seu obrigado como post ! Espero que tenha ajudado um bocado de membros e visitantes, se você é um visitante cadastre-se e poste no meu tópico Qualquer dúvida ou sugestão em relação ao tutorial, POSTE AQUI:
Postado Janeiro 14, 2015 10 anos O que você transmitiu realmente não existe no fórum, a formatação está boa. Embora hajam algumas informações não muito aprofundadas, está bom para quem tem dificuldade nisso; irá ajudar muitos. O seu tópico foi aprovado e agora movido para a seção correta, você também recebeu um ponto de reputação positiva por trazer este conteúdo ao TibiaKing. Continue assim
Postado Janeiro 14, 2015 10 anos Autor O que você transmitiu realmente não existe no fórum, a formatação está boa. Embora hajam algumas informações não muito aprofundadas, está bom para quem tem dificuldade nisso; irá ajudar muitos. O seu tópico foi aprovado e agora movido para a seção correta, você também recebeu um ponto de reputação positiva por trazer este conteúdo ao TibiaKing. Continue assim Obrigado , Não queria me aprofundar mesmo, é só o básicão para o cara que pediu isso no meu tópico. Editado: Agora vou tentar atualizar o meu tópico Editado Janeiro 14, 2015 10 anos por Caronte (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.