Ir para conteúdo

Featured Replies

Postado
  • Este é um post popular.

ANTES DE TUDO ME AJUDE! NÃO SEI SE POSTEI NA ÁREA CERTA! Por Favor Mova!

Aprenda a fazer seus próprios Monstros, Spells e NPC

Basicamente scripts sao o conjunto dos códigos que formam os arquivos de players, monster, spells, etc.

Nesse

tutorial vou ensinar tudo, pra vc sair daqui fazendo monstros, spells e

tudo mais. E se no final houver alguma duvida poste aqui que serei

grato em ajudar. Neste Tutorial existem varios comandos básicos, bons

para iniciantes, parte por parte é explicada, visando um maior

entendimento sobre o assunto.

Vamos lá!

SPELLS

Primeiro vamos falar sobre as spells

Existem

as spells de instant e as spells de rune, as spells de instant sao

aquelas em q o monstro usa nele, e as de runa ele vai usar em vc. Entao

a primeira coisa que precisamos fazer é decidir se vamos fazer uma

spell de runa ou de instant, vou mostrar aqui apenas um exemplo, se nao

o topico ficara muito grande. Vamos começar, seguindo um exemplo de uma

magia minha:

Primeiro, crie um arquivo chamado crossover.lua, na pasta Data>Spells>Instant

Começamos o script com isso:

CODE

area = {

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

{1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1},

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},

}

Essa

é a area em que a magia ira pegar, o numero 0 simboliza os espaços que

a magia nao pega e os numeros 1, os lugares onde acontecerá a magia, no

exemplo acima, é uma magia em forma de cruz

Pulamos entao uma linha e acrescentamos isso:

CODE

attackType = ATTACK_PHYSICAL

needDirection = false

areaEffect = NM_ME_YELLOW_RINGS

animationEffect = NM_ANI_NONE

hitEffect = NM_ME_HIT_AREA

damageEffect = NM_ME_DRAW_BLOOD

animationColor = BLACK_WHITE

offensive = true

drawblood = true

Vamos às explicações:

attackType = o tipo de ataque que será, no exemplo será um ataque fisico, mas tbm poderia ser um ataque de fogo, ou de energy

needDirection = se o ataque precisa de direção, como as firewaves

areaEffect = o tipo de animação que saira na area na magia

animationEffect = a animação de quando o player sofrer dano da magia

damageEffect = o efeito que saira quando o player receber o dano

animationColor = a cor da animação da Magia

offensive = se a magia é de ataque ou nao

drawblood = se embaixo do player vai sair sangue quando ele receber a magia

Explicado, pulamos uma linha e adicionamos:

CODE

UltimateExplosionObject

= MagicDamageObject(attackType, animationEffect, hitEffect,

damageEffect, animationColor, offensive, drawblood, 0, 0)

Essa é a função que fara com q oq explicamos acima funcione, pulamos outra linha e acrescentamos:

CODE

function onCast(cid, creaturePos, level, maglv, var)

centerpos = {x=creaturePos.x, y=creaturePos.y, z=creaturePos.z}

n = tonumber(var)

if n ~= nil then

-- bugged

-- ultimateExplosionObject.minDmg = var+0

-- UltimateExplosionObject.maxDmg = var+0

UltimateExplosionObject.minDmg = 0

UltimateExplosionObject.maxDmg = 0

else

UltimateExplosionObject.minDmg = (level * 2 + maglv * 3) * 2.6 - 30

UltimateExplosionObject.maxDmg = (level * 2 + maglv * 3) * 3.0

end

Essa é a fórmula do Dano que o player irá tomar ao receber a magia, agora pra finalizar adiconamos:

CODE

return doAreaMagic(cid, centerpos, needDirection, areaEffect, area, UltimateExplosionObject:ordered())

end

Pronto ja terminamos nossa primeira spell, agora para faze-la funcionar precisamos acrescenta-la aou arquivo spells.xml

vamos lá, na pasta Data>Spells abra o arquivo spells.xml e na sessao de INSTANT, acrescente esta linha:

CODE

spell

name="CrossOver" words="crossover" maglv="12" mana="160"

enabled="1">/>

Explicando:

spell name = nome da magia (pode ser qualquer um)

words = as palavras magicas que terao que ser ditas pra magia funcionar (tem q ser igual ao nome do script da magia)

magvl = maglv necessario para usar essa magia

mana = mana que será gasta

enabled = se a magia esta abilitada ou nao

vocation id = para quais vocações essa magia funcionará, no caso acima ela so funciona pra sorc e druid

------------------

MONSTERS

Spell criada, vamos passar para o Monstro que usara esta spell

Crie um arquivo .xml com um nome qualquer na pasta Data>Monsters

CODE

Editado por Winfernus (veja o histórico de edições)

  • Respostas 6
  • Visualizações 3.6k
  • Created
  • Última resposta

Top Posters In This Topic

Postado

Belo tutorial , realmente irá ajudar muitos , mereçe ser reputado

Ajudei? Reputar Cai o dedo? Acho que não

fdrule_SEPARADOR_DE_TEXTO.gif

Mapper : 80%

Scripter : 40%

Client Maker : 100%

Spriter : 100%

Web Designer : Aprendendo

fdrule_SEPARADOR_DE_TEXTO.gif

Meus Mapas :

sign3zb.jpg

  • 2 years later...

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.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo