
Tainan Manzoni
Membro
-
Registro em
-
Última visita
Histórico de Curtidas
-
Tainan Manzoni deu reputação a Drafenous em Criar teleport de evento automáticoFala galera, tudo bom? estou procurando aqui um script que seja no mesmo estilo do Battlefield Event...
Que seria +/- da seguinte forma...
Quando o evento esta começando, ele cria um teleport de acesso a área do evento.
A razão disto, é que estou tentando automatizar o evento de zombie e woe do meu servidor, e possivelmente outros eventos futuros também.
Estou me matando aqui e não acho nenhum script :/
Se possível, eu queria até que fosse aqueles que você configura um array (acho que é isso o nome), onde seria 1 script só com as configurações de todos os teleports que seriam criados de acesso aos eventos instalados nos servidor...
Aí no script só coloca indicando qual evento puxaria qual teleport.
Enfim, espero que tenham entendio, se for aí um script pago, dependendo do valor posso até negociar
-
Tainan Manzoni deu reputação a JhonatanCWest em [Tutorial] Explicando e Criando VocaçõesOlá TibiaKing,
Vi muitas pessoas com dúvidas, mesmo contendo tutoriais, não entendiam,então tentarei fazer um bom tutorial.
Ok, vamos por a mão na massa!
Basicamente nós nos basearemos nisso:
Localizado em: DATA/XML/VOCATION.XML
Exemplo
Primeiro vou explicar cada item pra você criar sua vocação certinha!
id = não deve haver nenhuma igual, tente seguir a sequencia para não se perder.
name = nome da nova vocação.
description = quando der look aparecera esse nome, e caso acc manager também.
needpremium = se precisa de premmium para ter essa vocação (0 = não 1 = sim)
gaincap = o tanto de cap que vai ganhar quando upar
gainhp = o tanto de vida que vai ganhar quando upar
gainmana = o tanto de mana que vai ganhar quando upar
gainhpticks = o tanto de segundos que demora pra subir a vida
gainhpamount = o tanto de vida que vai ganhar a cada ( no nosso exemplo 6 ) segundos
gainmanaticks = o tanto de segundos que demora pra subir a mana
gainmanaamount = o tanto de mana que vai ganhar a cada ( no nosso exemplo 3 ) segundos
manamultiplier = quanto ml vai demorar pra subir, quanto menor mais rápido
attackspeed = velocidade do ataque de wands e weapons (quanto menor mais rápido)
soulmax = o maximo de soul
gainsoulticks = o tanto de segundos que vai demorar pra subir o soul
fromvoc = como ele será reconhecido nos scripts ( bote igual o id )
Formulas:
meleeDamage = quanto hita com weapons ( exceto wands e rods )
distDamage = quanto hita com ataques a distancia
wandDamage = quando hita com wand
magDamage = quando hita com magias
magHealingDamage = quanto heala com magias de cura, ( tanto exura como exura sio )
defense = quanto defende com escudos
armor = quanto defende com armaduras
Skill Ids:
(0) Fist
(1) Club
(2) Sword
(3) Axe
(4) Distance
(5) Shield
(6) Fishing
PS: Quando menor o skill multiplier, mais rápido upa os skills.
Criando nova vocação :
1. Basta você adicionar nosso exemplo, embaixo das vocations.
Exemplo
Adicionando Spells às novas vocações
2. Basta adicionar o nome da nova vocação em: data/spells/spells.xml
Exemplo
Tutorial criado por mim, exceto a parte dos Skill_ids, que peguei de outros tutos.
Pronto, espero ter ajudado.
Se gostaram agradeçam por favor.
Obrigado, JhonatanCWest
-
Tainan Manzoni deu reputação a Winfernus em Entendendo Scripts,Rune,Spells,Monsters,etc...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