Adicionando novas spells - PDA

Slicer
Por Slicer
em Tutoriais para Iniciantes

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

Ola galera hoje trago para vocês um tutorial de como adicionar novas spells aos pokemons em um servidor 'PDA'...
Tutorial feito a pedido do usuario: @josegremista

Importante: Antes de começar gostaria de deixar claro que criar uma nova spell em um servidor de pokemon eh totalmente diferente que criar uma spell em um servidor de tibia, as spells de pokemon são criadas em lib/pokemon moves.lua e não na pasta spells como no tibia... A pasta spells vai simplismente 'chamar' as spells feitas na pasta lib.

Vão em lib/pokemon moves.lua e achem isso..
Caso estejam usando meu servidor:

--/////////////////////// PASSIVAS /////////////////////////--
Caso usem outro tipo de 'PDA', vão ao final do script e achem isso:
end
return true
end

E entao adicionem um outro 'elseif'...
elseif spell == "xxxx" then
Onde "xxxx" é o nome da nova spell...

E então embaixo disso, criem o script da nova spell..
Exemplo:
local pos = getThingPosWithDebug(cid)

doMoveInArea2(cid, 91, inferno1, FIREDAMAGE, 0, 0, spell)
addEvent(doDanoWithProtect, math.random(100, 400), cid, FIREDAMAGE, pos, inferno2, -min, -max, 0)

Importante: Caso usem meu servidor, aconcelho a olharem o arquivo lib/newStatusSyst.lua, la estão todas as funções de dano do servidor...

Importante: Não coloquem areas de spells nesse arquivo! As areas de spells devem ser colocadas em lib/areas.lua, para deixar o outro script mais organizado...

Depois de criado o script da spell, vão em lib/configuration.lua e achem a tabela movestable, e então adicionem a nova spell nos pokes q vocês quiserem...
No meu 'PDA' usem:
move1 = {name = "xxxx", level = aa, cd = bb, dist = cc, target = dd, f = ee, t = "yyyy"},
Onde:
"xxxx" = nome da spell,
aa = level que o poke/player precisa ter para usar a spell,
bb = cd, tempo de espera, para usar a spell denovo,
cc = distância minima que o poke tem q tar pra usar a spell,
dd = coloquem 1, caso precise ter um target pra usar a spell, ou coloquem 0, caso não precise de target pra usar a spell,
ee = esse é o 'dano' da spell, esse valor vai ser usado na formula final de dano de cada spell -caso seja uma spell que não tem dano coloquem 0-,
"yyyy" = é o 'tipo' da spell -"grass", "water", "fire"...-

Caso usem outro tipo de 'PDA' usem:
move1 = {name = "xxxx", level = aa, cd = bb, dist = cc, target = dd},
Onde:
"xxxx" = nome da spell,
aa = level que o poke/player precisa ter para usar a spell,
bb = cd, tempo de espera, para usar a spell denovo,
cc = distância minima que o pokemon tem que tar pra usar a spell,
dd = coloquem 1, caso precise ter um target pra usar a spell, ou coloquem 0, caso nao precise de target pra usar a spell

Importante: caso usem outro tipo de 'PDA' o dano e o 'tipo' da spell ficam em lib/moves.lua...
["xxxx"] = {f = aa, t = "yyyy"},
Onde:
"xxxx" = nome da spell,
aa = esse é o 'dano' da spell, esse valor vai ser usado na formula final de dano de cada skill -caso seja uma skill que n]ao tem dano coloquem 0-,
"yyyy" = é o tipo da spell -"grass", "water", "fire"...

Depois de feito isso, vão em spells/ps/ e copiem algum arquivo la e mudem o nome para o nome da sua nova spell e depois abram esse arquivo e mudem isso:
docastspell(cid, "xxxx")
Onde "xxxx" é o nome da spell...

Depois abram o arquivo spells/spells.xml e adicionem uma nova linha...
<instant name="xxxx" words="yyyy" lvl="1000" mana="0" event="script" value="ps/xxxx.lua"></instant>
Onde:
"xxxx" = nome da nova spell,
"yyyy" = vocês colocam "spellYYY" onde "YYY" eh o proximo numero em sequencia, olhem a ultima spell adicionada q vocês vão intender...

E por ultimo, vão em monster/pokes/ e adicionem a spell nos pokemons que vocês quiserem...
<attack name="xxxx" interval="yyyy" chance="zzzz" range="aaaa"/>
Onde:
"xxxx" = nome da spell,
"yyyy" = de quanto em quantos, milésimos de segundos -1s = 1000-, o pokemon tentara usar a spell,
"zzzz" = a chance do pokemon conseguir usar a spell,
"aaaa" = distância minima pro pokemon começar a usar a spell

Pronto, espero q vocês gostem do tutorial. Qualquer erro ou se faltou alguma coisa me avisem para eu editar o post ^^

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein

 

StyloMaldoso

a good son makes the house...;p
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 25/01/12Posts: 1593

Muuito bão, vai ajuda varias pessoas *--*

rep + rs.

Project Pokémon Mysterion OpenSoures 2016.

Em breve, mais informações!

 

23vfcht.png

Yan Oliveira

Yan18
avatar
Moderador
Moderador

INFOS

Grupo: ModeradorRegistrado: 05/06/12Posts: 2221Gênero: Masculino

Tutorial está muito bom, acho que esse tutorial ja acaba com a maioria dos pedidos em Derivados.

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

eh essa eh a ideia yan kk

 

@all

se alguem tiver mais algum pedido de tutorial desse tpw eh soh flar q tento fazer..

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein

 

josegremista

PokeXFury Em construção!!
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 10/09/12Posts: 476Char no Tibia: Esqueci

@Slicer uma dúvida em Areas Devemos colocar o que?? Ah tipo se eu usar o spells maker pra criar a area tipo :

area = {

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

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

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

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

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

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

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

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

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

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

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

}

 

isso que devemos colocar em Area é ?

 

E usando o spells maker pra criar da error em algum coisa ?

Está assim de participar de um projeto sério de Poketibia? Então veja para o PokeXfury Acesse o link e veja tudo que contém no pokexfury.

 

 

Venha E Participe do PokeXfury

PokeXfury Clique No nome PokeXfury e você irá para o tópico Do PXF

Acesse http://www.facebook.com/pokexfury E Veja as noticias do PokeXfury na sua página do facebook

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

mano podes usar as outras areas la como exemplo... mas tpw.. depende de qual funçao de dano tu usar...

se usar as principais: doMoveInArea2 e doMoveInAreaMulti, utilize desse jeito ae q tu coloco, soh lembrando de inventar um nome diferente pras areas neh...

caso use outras funçoes de dano tem q usar assim..

SilverWing = createCombatArea{
{1, 0, 1},
{0, 3, 0},
{1, 0, 1},
}

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein

 

Heinekennn

Kepper Games
avatar
Cavaleiro
Cavaleiro

INFOS

Grupo: CavaleiroRegistrado: 18/11/12Posts: 197Gênero: MasculinoChar no Tibia: HouseKkeper

tpw slicer eu queria o barrier que quando tu ataka o pokemon do adversario sofre paralyse e quando vc nao ataka ele te da uma deff que tu n toma hit ?? como faço isso e.e

n5ZiPu1.png

l2eZh5Q.png

josegremista

PokeXFury Em construção!!
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 10/09/12Posts: 476Char no Tibia: Esqueci

@Slicer uma dúvida como eu faço para selecionar a spells que está no meu client para eu fazer a spells tenho que pegar o item type dele e colocar em que parte da scripter?

Está assim de participar de um projeto sério de Poketibia? Então veja para o PokeXfury Acesse o link e veja tudo que contém no pokexfury.

 

 

Venha E Participe do PokeXfury

PokeXfury Clique No nome PokeXfury e você irá para o tópico Do PXF

Acesse http://www.facebook.com/pokexfury E Veja as noticias do PokeXfury na sua página do facebook

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

/\

hã oq? intendi nd o.O

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein

 

josegremista

PokeXFury Em construção!!
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 10/09/12Posts: 476Char no Tibia: Esqueci

@Slicer tipo num tem o efeio da habibildade do poke tipo quando o Dragonite solta um Meteoro do Dragão. Ai começa a subir um foginho vermelho pro cel e dps cai no chão, Ai como faço para alterar o efeito da habilidade entendeu algo ? Esse efeito, num precisa pegar o efeito no usando o dat editor pra saber o id dele lá ?

Está assim de participar de um projeto sério de Poketibia? Então veja para o PokeXfury Acesse o link e veja tudo que contém no pokexfury.

 

 

Venha E Participe do PokeXfury

PokeXfury Clique No nome PokeXfury e você irá para o tópico Do PXF

Acesse http://www.facebook.com/pokexfury E Veja as noticias do PokeXfury na sua página do facebook

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

clr neh mano.. ;x mas dai depender de quais funçoes de dano tu vai usar.. ;/ exemplo do draco..

 

elseif spell == "Draco Meteor" then

 

local effD = 5

local eff = 248

local master = isSummon(cid) and getCreatureMaster(cid) or cid

 

local function doFall(cid)

for rocks = 5, 42 do

addEvent(fall, rocks*35, cid, master, DRAGONDAMAGE, effD, eff)

end

end

 

for up = 1, 10 do

addEvent(upEffect, up*75, cid, effD)

end

addEvent(doFall, 450, cid)

addEvent(doDanoWithProtect, 1400, cid, DRAGONDAMAGE, getThingPosWithDebug(cid), waterarea, -min, -max, 0)

 

em vermelho ali eh os efeitos q vao ser usados... mas dai vai de quem ta criando as spells ;/

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein

 

josegremista

PokeXFury Em construção!!
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 10/09/12Posts: 476Char no Tibia: Esqueci

@Slicer Minha última dúvida tipo eu vejo no dat editor o tipo qual id eu coloco do efeito tipo em no 1°que vc marcou em vermelho o local effD = 5 no Dat editor séria o Ditance ? e o segundo local eff = 248 Séria o Effects?

 

 

Vou mostrar uma print do dat edito e tu diz se eu acertei o lugar do efeito O 1 local effD = 533; o primeiro que eu falei que o 2 local eff = 248; o Segundo:

 

 

Acertei os lugares certos ? o local effD = 5 inves de 5 séria local effD = 56

e o local eff = 248 ao inves de 248 séria local eff = 265 ??

 

 

Vish disfarça dei uma olhada no dat editor e descobri como é eu tenho que procura o itemtype, meu deus como eu sou burro.

 

Veja as prints que eu tirei do dat editor da minha burrise

Print 1

post-354920-0-44864100-1357137622_thumb.png

 

 

Print 2

post-354920-0-08562900-1357137612_thumb.png

 

 

Malz ae pela minha burrise.

Está assim de participar de um projeto sério de Poketibia? Então veja para o PokeXfury Acesse o link e veja tudo que contém no pokexfury.

 

 

Venha E Participe do PokeXfury

PokeXfury Clique No nome PokeXfury e você irá para o tópico Do PXF

Acesse http://www.facebook.com/pokexfury E Veja as noticias do PokeXfury na sua página do facebook

Oneshot

avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 05/07/09Posts: 1347

Legal seu tutorial, Slicer, dá dicas bem legais para servidores de Pokétibia. Mas, eu, geralmente, espero de um tutorial, algo um pouco mais formal, com a gramática correta e sem internetês.

 

Abraços.

DinoAdmin

Ex Estagiário de Scripting
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 27/07/12Posts: 757Char no Tibia: [ADM] Bhoris

Slicer

Insanity
avatar
Príncipe
Príncipe

INFOS

Grupo: PríncipeRegistrado: 19/08/10Posts: 4014Gênero: Masculino

@oneShot

eh eh, eu estava realmente com um pouco de pressa... e meu pt nem eh la essas coisas... dei uma editada no texto.. ^^

 

@dino

ty ^^

"Só a beira do abismo que os seres humanos acham forças para mudar."... E isso me da nojo... ¬¬

"Insanity is doing the exact... same fucking thing... over and over again expecting... shit to change... That. Is. Crazy." -Vass/Einstein