Ir para conteúdo

[Tutorial] Spell Para Gm E Superiores


139

Posts Recomendados

Criei esse Tutorial com o intuito de ensinar a adicionar de jeito fácil magias aparetemente inexistentes para os players, mas que funcionem ao ser pronunciadas por GM's ou superiores.

 

Ainda não entendeu o motivo?

 

É porque eu já cansei de entrar em OT's e usar o comando: !spells ou !magias e...

Advinha, no final da lista sempre tem uma magia pra sei lá, lv 100.000 por exemplo, ou qualquer outro level que ninguém vá alcançar. Mas por que essa magia está lá? Simples para que só GM's ou superiores possam usar.

 

Agora mãos a obra, entre em data/spells/scripts/monsters, sim eu escrevi monsters.

Copie e cole qualquer arquivo lua que esteja ai dentro e renomei-o para apocalypse.

 

Feito isso abra o agora apocalypse.lua e cole dentro:

 

local combat1 = createCombatObject()
setCombatParam(combat1, COMBAT_PARAM_EFFECT, 49)
local combat2 = createCombatObject()
setCombatParam(combat2, COMBAT_PARAM_EFFECT, 17)
local combat3 = createCombatObject()
setCombatParam(combat3, COMBAT_PARAM_TYPE, COMBAT_PHYSICALDAMAGE)
setCombatFormula(combat3, COMBAT_FORMULA_LEVELMAGIC, -99999, -10000, -99999, -10000)
local combat4 = createCombatObject()
setCombatParam(combat4, COMBAT_PARAM_TYPE, COMBAT_ICEDAMAGE)
setCombatFormula(combat4, COMBAT_FORMULA_LEVELMAGIC, -99999, -10000, -99999, -10000)
local combat5 = createCombatObject()
setCombatParam(combat5, COMBAT_PARAM_TYPE, COMBAT_HOLYDAMAGE)
setCombatFormula(combat5, COMBAT_FORMULA_LEVELMAGIC, -99999, -10000, -99999, -10000)
local arr1 = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 1, 3, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local arr2 = {
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0},
{0, 1, 1, 0, 1, 0, 2, 0, 1, 0, 1, 1, 0},
{0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 1, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local arr3 = {
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}
}
local area1 = createCombatArea(arr1)
local area2 = createCombatArea(arr2)
local area3 = createCombatArea(arr3)
local area4 = createCombatArea(arr3)
local area5 = createCombatArea(arr3)
setCombatArea(combat1, area1)
setCombatArea(combat2, area2)
setCombatArea(combat3, area3)
setCombatArea(combat4, area3)
setCombatArea(combat5, area3)
local function onCastSpell1(parameters)
doCombat(parameters.cid, combat1, parameters.var)
end
local function onCastSpell2(parameters)
doCombat(parameters.cid, combat2, parameters.var)
end
local function onCastSpell3(parameters)
doCombat(parameters.cid, combat3, parameters.var)
end
local function onCastSpell4(parameters)
doCombat(parameters.cid, combat4, parameters.var)
end
local function onCastSpell5(parameters)
doCombat(parameters.cid, combat5, parameters.var)
end

function onCastSpell(cid, var)
local parameters = { cid = cid, var = var}
addEvent(onCastSpell1, 200, parameters)
addEvent(onCastSpell2, 500, parameters)
addEvent(onCastSpell3, 000, parameters)
addEvent(onCastSpell4, 000, parameters)
addEvent(onCastSpell5, 000, parameters)
end

 

Se quiser editar a area de alcance dos Danos é a arr3, as arr1 e arr2 são apenas os efeitos.

 

Agora vá em: data/spells/spells.xml ache : <!-- Custom Spells --> e cole na linha de baixo:

 

<instant name="apocalypse" words="palavras_magicas_do_seu_gosto" direction="1" enabled="0" script="monsters/apocalypse.lua"></instant>

 

Você deve estar sem entender porque o script está em monsters e em custom spells, é simples magias de monstros podem ser utilizadas por GM's ou superiores, mas se você tentar usar a magia como player não vai acontecer nada e ela não aparecera usando !spells.

 

Pronto, agora você tem uma magia que pega em todos os sqm's da tela, hitando holy, physical e ice com uma força a nível do Zé Bonitinho, Kratos, Barack Obama ou até mesmo Chuck Norris ou seja a nível de um GOD e o melhor você pode usa-la nos seus monstros, adicionando a seguinte linha nos seus ataques:

 


  <attack name="apocalypse" interval="7500" chance="40" range="1" min="-300" max="-500"/>

 

Attack name = Instant name só para saberem daonde veio o apocalypse.

 

Só lembrando que no caso o minimo 300 e maximo 500 vale pra cada um dos 3 danos da spell, ou seja o alvo pode ser hitado em até 1500 juntando os três danos.

 

Ss da Spell:

 

apocan.png

 

É isso espero que gostem e adotem a idéia da spell

Editado por 139
Link para o comentário
Compartilhar em outros sites

Man Oque Tem Matar Esses Monstros Em 1 ATAQUE?

2 Segundos Se Cria Uma Magia Descente, Coisa Que Essa Realmente Não é!

 

Efeitos Velhos, So Muda Que Serve De Power Abuse Pros GM Para Cima....

 

Mudar o Grup e Coisa Mais Facil De Uma Spell kkkk'

E Estou Aqui Ate Agora Tentando Procurar o TUTORIAL...

 

Se For Pelo Motivo De "PROCURAR NO /spells" e INUTEO...

Basta Você Ir Na Pasta SPELL, Abrir Spell.xml e Apertar "CTRL + F" e Procurar o Nome Da Spell Desejada!

 

Isso De Tutorial Não Tem NADA!

 

Essa Foi Minha Critica -.-

Link para o comentário
Compartilhar em outros sites

@Up

A intenção é evitar a spam feita por gms, cms e gods e que os players não vejam a magia na lista (!spells).

 

Vou repetir de novo, assim não precisa checar group, mas se vc gosta de coisas inuteis pode colocar pra checar o group, fora que a magia pode ser usada por monstros, mas se for checar o group não sei se vai funcionar com monstros.

 

Dai o player diz a magia ai vai checar o group, isso é inutil, não é mais facil não ter que checar?

 

Quanto as efeitos, quem não gostou que mude o que não falta é tutorial ensinando isso, a idéia não é ser uma magia linda ou com novos efeitos ;/

 

E:

 

Se For Pelo Motivo De "PROCURAR NO /spells" e INUTEO...

Basta Você Ir Na Pasta SPELL, Abrir Spell.xml e Apertar "CTRL + F" e Procurar o Nome Da Spell Desejada!

 

Leia direito antes de insultar a inteligencia alheia ou acabará insultando a sua própria, que foi o que você fez.

 

O comando !spells que eu me referi é o usado dentro do ot por players...

Você entendeu o que? Que eu tendo a pasta spell queria procurar a spell no OT usando !spells?

 

Se mata.

Link para o comentário
Compartilhar em outros sites

  • 4 weeks later...
×
×
  • Criar Novo...