Ir para conteúdo
  • Cadastre-se

[Tutorial] Editando Sets corretamente com skil


pepico

Posts recomendados

PARA APRENDER TEM QUE LER E ENTENDER

 

Observando varios pedidos de como editar sets e coisa, vai ai a maneira certa de editar sets.

 

Primeiro edite as Skil:

 

para colocar skil faz assim

 

Ache o set que voce quer editar noC:\gameserver\dist\data\stats\armor

anote os id deles.

 

Localize o set ja editado(usaremos o ice que ta ok) la no C:\gameserver\dist\data\stats\skills

voce copie o 10116-10118, ali esta a skil do set ice prontinho.

 

Copie e cole no desktop (fica mais facil) e renomeie para ser as skil do set VESPER, ex 11116-11118.

 

abra ele (clique com o botao auxiliar e depois abrir como bloco de nota ou editar)

RENOMEIE ESTA LINHA - para o set VESPER-

<skill id="10116" levels="1" name="Ice Crystal Heavy"> esta assim

<skill id="11116" levels="1" name="Vesper Dark Heavy"> vai ficar assim

terminado essa fase esta ok as skil do set.(nude os ids dos 3 set)

 

EDITANDO O MSQL:

 

VAMOS NO MSQL AGORA

 

abra seu msql e em l2jdb - clik em armorset (e este o local que liga a skil ao set)

 

Em table armorsets ali vc coloca os ids dos sets que estarão ligados a um determinado skil

 

PARA SETS Heavy E Light

 

exemplo a baixo conforme tabela msql:

 

id - sequencia de colocação na tabela msql, siga a numeração;(para criar uma linha clique no sinal + la em baixo na tabela)

 

chest - peito = Bleatsplat (coloque o id correspondente)

 

legs - calça = Gaiters (coloque o id correspondente)

 

head - elmo = Elmet (coloque o id correspondente)

 

gloves - luva = Gloves (coloque o id correspondente)

 

feet - bota = Boots (coloque o id correspondente)

 

O SKIL ID E AQUELE QUE VOCE EDITOU ANTERIORMENTE

 

O SKILLEVEL E SEMPRE 1

 

NO RESTANTE USE O "0"(ZERO)

 

no caso de editar escudo faze o mesmo.

shild - escudo

shild skil -

ou qual voce quiser editar

 

NO SET que o peito e calça sao um so, DEIXAR "0" Legs, porque o peito e calça são juntos ..entendeu.

 

MUITO IMPORTANTE =

lembrese que o set em C:\gameserver\dist\data\stats\armor = no caso o vesper 30000-30025

esta so editado com P.def voce devera colocar la M.def para que tenha efeito as skil e nao ficar diferente.

EX coloque a linha = <add val="100" order="0x10" stat='mDef'/> = abaixo da linha P.def.

 

NOTA= Se voce editar no armor somente simplismente o poder sera de uma unica peça do set....podera ter problemas o char não usará o set todo.

 

Voce deve editar, reeditar, ver , observar até pegar a manha.

 

Creditos para os amigos do l2jbrasil, onde aprendo muito.

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

Otimo Tuto.. parabens =)

 

so queria saber uma coisa.. a respeito de colocar o poder em uma parte do set so... nao teria como eu editar para a peca so dar todos os atributos quando o players usar o set todo assim como nos outros sets???

muito obrigada

slipkfanqp6.png

 

Apóio a Campanha= Não Transforme nosso Linea][Age em MU!

Pentium MMX 166 / 32 Ram / 2 Hd´s 1 BigFoot 2Gb e 1 WesternDigitals 3.2 Gb / 1 Trident 4Mb / US. Robotics 33.600

L2JBrasil

Link para o comentário
Compartilhar em outros sites

para fazer com que o char so ganhe atributos com todas as partes é preciso criar uma skill e uma sql ligando a skill com a armadura.... se tiver duvidas posta aki ou cria um novo topico com a duvida(recomendavel)...

Link para o comentário
Compartilhar em outros sites

  • 4 weeks later...

queria saber se tem algo a ver se eu colocar assim

<mul val='1.15' order='0x30' stat='mAtkSpd'/> <--modo que já está

<mul val='1.15' order='0x50' stat='mAtkSpd'/> <-- modo que vai ficar

é porque eu coloco "99" e nao da o tanto que eu quero

Estudante de Sistemas de informação

Link para o comentário
Compartilhar em outros sites

queria saber se tem algo a ver se eu colocar assim

<mul val='1.15' order='0x30' stat='mAtkSpd'/> <--modo que já está

<mul val='1.15' order='0x50' stat='mAtkSpd'/> <-- modo que vai ficar

é porque eu coloco "99" e nao da o tanto que eu quero

 

Ola desculpe a demora estava viajando, mas amigo, se você colocar 99, no (Val) coloque 0.99, a matemática da multiplicação esta ligada em outras partes do servidor, UMA DICA para você chegar a formula ideal do seu Server modifique algumas vezes e chegue a um valor % das suas alterações ok, assim você saberá o valor exato para fazer as alterações que quiser.

Link para o comentário
Compartilhar em outros sites

Otimo Tuto.. parabens =)

 

so queria saber uma coisa.. a respeito de colocar o poder em uma parte do set so... nao teria como eu editar para a peca so dar todos os atributos quando o players usar o set todo assim como nos outros sets???

muito obrigada

 

Da forma que eu postei esta correta, o char não vai usar bug de set porque uma peça não da nada, se você editar uma peça tipo: uma luva, e em outro set o peito, em outro a bota, o char descobre e pronto BUG do set no seu Server, e fazer como esta que esse risco você não corre.

Link para o comentário
Compartilhar em outros sites

  • 1 month later...
  • 5 months later...

ola noa to consiguindo faze pro set tt ele veio com skill feita mas nao tinha o msql feita dai fui faze fica dando skill incoreta ..

preciso ugente ajuda ..e tabem eu nun sei oq coloca no enchant6skill oq eu coloco os outro set tem ams nao sei oq e ??

vlw

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

ola noa to consiguindo faze pro set tt ele veio com skill feita mas nao tinha o msql feita dai fui faze fica dando skill incoreta ..

preciso ugente ajuda ..

vlw

posta o erro da sua sql

bannerwdg.gif

Eles podem tentar me derrubar , mas nunca conseguirão pois eu sou BRASILEIRO e nao desisto Nunca!

Link para o comentário
Compartilhar em outros sites

id chest legs head gloves feet skill_iD shild shild_skill_ID enchant6skill

55 10001 0 10000 10002 10003 9921 0 0 0

 

tabela amorsets

esa e sql q eu fis mas tem ese enchant6skill q nun sei oq e e os outro set tem ..

mas nao ta dando bonus fiz tudo e nun sei oq tem

se tive outro tutorial q explica mais agradeso

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

@OWNED

 

SIM FUNCIONA DA MESMA MANEIRA SO EDITAR NO NAVICAT NOS WEAPONS EM VEZ DE ARMORS O ID DO SKILL

bannerwdg.gif

Eles podem tentar me derrubar , mas nunca conseguirão pois eu sou BRASILEIRO e nao desisto Nunca!

Link para o comentário
Compartilhar em outros sites

tentei aki e nao deu certo...

queria colocar o skill super haste numa arma para um atn-pk...

uso l2dot interlude..

da uma força ae

IXI PRA ANT PK ACHO MEIO DIFICIL PQ NPC NAO TEM COMO ATIVAR OS SKILLS DE ARMA (EU AXO)

bannerwdg.gif

Eles podem tentar me derrubar , mas nunca conseguirão pois eu sou BRASILEIRO e nao desisto Nunca!

Link para o comentário
Compartilhar em outros sites

hmmm...

tipo vc nao sabe como posso deixar o ant-pk mais rapido nao, e dando dano alto.. ja editei a arma dele e nada sempre o mesmo dano e na mesma velocidade..

se puder me ajudar agradeceria muito

vlw

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

  • 1 year later...
  • Registre-se

    Faça parte da maior e  mais antigas comunidades sobre Lineage2 da América Latina.





  • Patrocinadores

  • Quem Está Navegando

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

    • Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?     Teria como fazer do dusk shield e do zombie shield dessa maneira?    
    • muchas gracias muy lindos NPC 🙂
    • relaxa jovem gafanhoto, testa as quests. e posTa os erros indesejaveis.  
    • Se alguém pudesse me ensinar como codificar as missões, eu ficaria feliz em fazer isso sozinho ou pelo menos ajudar. Eu realmente quero jogar em um servidor onde todas as quests funcionem bem e melhor ainda se você puder fazer quests customizadas!
    • mas no interlude, nem todas as quests de class,  vai mostrar onde tem que ir, ate o reborn nao mostrava quando era interlude, só mostrou depois que eles colocaram client classic pra rodar, e ficou melhor ainda quando virou hellbound em diante, mas ha sim alguma chance de modificar isso direto no script para fazer igualmente, só basta te um pouco de paciencia e persistencia exato
    • 408_PathToElvenwizard dá Orion eu tive que mexer tbm, até modifiquei e consegui deixar ela igual do Classic, com a seta e a marcação no mapa. (não retail IL) Dá pra importar py de várias revs, o foda é que não da regular as quest py através do debug em tempo real, pelo menos eu não consegui rsrs
    • Hasta el momento todas las QUESTS son completables si te guias con un tutorial de youtube. El problema es que tienen bugs de locacion y de subquests que no avanzan o no te marcan correctamente a donde ir en el mapa, cosa que en Retail si se ve como corresponde.
    • estranho, mas pelo menos a galera nunca reclamo das quests quando tinha aberto 5x, geral fez class primeira e segunda job, poucos que compraram a class
    • en RUSaCis-3.5 data pack, las Quests estan en formato .java y son diferentes a como estan redactadas en jOrion y jFrozen 1.5 (ProyectX) package net.sf.l2j.gameserver.scripting.quest; import net.sf.l2j.commons.random.Rnd; import net.sf.l2j.gameserver.enums.Paperdoll; import net.sf.l2j.gameserver.enums.QuestStatus; import net.sf.l2j.gameserver.enums.actors.ClassId; import net.sf.l2j.gameserver.model.actor.Creature; import net.sf.l2j.gameserver.model.actor.Npc; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.network.serverpackets.SocialAction; import net.sf.l2j.gameserver.scripting.QuestState; public class Q224_TestOfSagittarius extends SecondClassQuest { private static final String QUEST_NAME = "Q224_TestOfSagittarius"; // Items private static final int BERNARD_INTRODUCTION = 3294; private static final int HAMIL_LETTER_1 = 3295; private static final int HAMIL_LETTER_2 = 3296; private static final int HAMIL_LETTER_3 = 3297; private static final int HUNTER_RUNE_1 = 3298; private static final int HUNTER_RUNE_2 = 3299; private static final int TALISMAN_OF_KADESH = 3300; private static final int TALISMAN_OF_SNAKE = 3301; private static final int MITHRIL_CLIP = 3302; private static final int STAKATO_CHITIN = 3303; private static final int REINFORCED_BOWSTRING = 3304; private static final int MANASHEN_HORN = 3305; private static final int BLOOD_OF_LIZARDMAN = 3306; private static final int CRESCENT_MOON_BOW = 3028; private static final int WOODEN_ARROW = 17; // Rewards private static final int MARK_OF_SAGITTARIUS = 3293; // NPCs private static final int BERNARD = 30702; private static final int HAMIL = 30626; private static final int SIR_ARON_TANFORD = 30653; private static final int VOKIAN = 30514; private static final int GAUEN = 30717; // Monsters private static final int ANT = 20079; private static final int ANT_CAPTAIN = 20080; private static final int ANT_OVERSEER = 20081; private static final int ANT_RECRUIT = 20082; private static final int ANT_PATROL = 20084; private static final int ANT_GUARD = 20086; private static final int NOBLE_ANT = 20089; private static final int NOBLE_ANT_LEADER = 20090; private static final int BREKA_ORC_SHAMAN = 20269; private static final int BREKA_ORC_OVERLORD = 20270; private static final int MARSH_STAKATO_WORKER = 20230; private static final int MARSH_STAKATO_SOLDIER = 20232; private static final int MARSH_STAKATO_DRONE = 20234; private static final int MARSH_SPIDER = 20233; private static final int ROAD_SCAVENGER = 20551; private static final int MANASHEN_GARGOYLE = 20563; private static final int LETO_LIZARDMAN = 20577; private static final int LETO_LIZARDMAN_ARCHER = 20578; private static final int LETO_LIZARDMAN_SOLDIER = 20579; private static final int LETO_LIZARDMAN_WARRIOR = 20580; private static final int LETO_LIZARDMAN_SHAMAN = 20581; private static final int LETO_LIZARDMAN_OVERLORD = 20582; private static final int SERPENT_DEMON_KADESH = 27090; public Q224_TestOfSagittarius() { super(224, "Test Of Sagittarius"); setItemsIds(BERNARD_INTRODUCTION, HAMIL_LETTER_1, HAMIL_LETTER_2, HAMIL_LETTER_3, HUNTER_RUNE_1, HUNTER_RUNE_2, TALISMAN_OF_KADESH, TALISMAN_OF_SNAKE, MITHRIL_CLIP, STAKATO_CHITIN, REINFORCED_BOWSTRING, MANASHEN_HORN, BLOOD_OF_LIZARDMAN, CRESCENT_MOON_BOW); addQuestStart(BERNARD); addTalkId(BERNARD, HAMIL, SIR_ARON_TANFORD, VOKIAN, GAUEN); addMyDying(ANT, ANT_CAPTAIN, ANT_OVERSEER, ANT_RECRUIT, ANT_PATROL, ANT_GUARD, NOBLE_ANT, NOBLE_ANT_LEADER, BREKA_ORC_SHAMAN, BREKA_ORC_OVERLORD, MARSH_STAKATO_WORKER, MARSH_STAKATO_SOLDIER, MARSH_STAKATO_DRONE, MARSH_SPIDER, ROAD_SCAVENGER, MANASHEN_GARGOYLE, LETO_LIZARDMAN, LETO_LIZARDMAN_ARCHER, LETO_LIZARDMAN_SOLDIER, LETO_LIZARDMAN_WARRIOR, LETO_LIZARDMAN_SHAMAN, LETO_LIZARDMAN_OVERLORD, SERPENT_DEMON_KADESH); } @Override public String onAdvEvent(String event, Npc npc, Player player) { String htmltext = event; QuestState st = player.getQuestList().getQuestState(QUEST_NAME); if (st == null) return htmltext; // BERNARD if (event.equalsIgnoreCase("30702-04.htm")) { st.setState(QuestStatus.STARTED); st.setCond(1); playSound(player, SOUND_ACCEPT); giveItems(player, BERNARD_INTRODUCTION, 1); if (giveDimensionalDiamonds39(player)) htmltext = "30702-04a.htm"; } // HAMIL else if (event.equalsIgnoreCase("30626-03.htm")) { st.setCond(2); playSound(player, SOUND_MIDDLE); takeItems(player, BERNARD_INTRODUCTION, 1); giveItems(player, HAMIL_LETTER_1, 1); } else if (event.equalsIgnoreCase("30626-07.htm")) { st.setCond(5); playSound(player, SOUND_MIDDLE); takeItems(player, HUNTER_RUNE_1, 10); giveItems(player, HAMIL_LETTER_2, 1); } // SIR_ARON_TANFORD else if (event.equalsIgnoreCase("30653-02.htm")) { st.setCond(3); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_1, 1); } // VOKIAN else if (event.equalsIgnoreCase("30514-02.htm")) { st.setCond(6); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_2, 1); } return htmltext; } @Override public String onTalk(Npc npc, Player player) { String htmltext = getNoQuestMsg(); QuestState st = player.getQuestList().getQuestState(QUEST_NAME); if (st == null) return htmltext; switch (st.getState()) { case CREATED: if (player.getClassId() != ClassId.ROGUE && player.getClassId() != ClassId.ELVEN_SCOUT && player.getClassId() != ClassId.ASSASSIN) htmltext = "30702-02.htm"; else if (player.getStatus().getLevel() < 39) htmltext = "30702-01.htm"; else htmltext = "30702-03.htm"; break; case STARTED: int cond = st.getCond(); switch (npc.getNpcId()) { case BERNARD: htmltext = "30702-05.htm"; break; case HAMIL: if (cond == 1) htmltext = "30626-01.htm"; else if (cond == 2 || cond == 3) htmltext = "30626-04.htm"; else if (cond == 4) htmltext = "30626-05.htm"; else if (cond > 4 && cond < 8) htmltext = "30626-08.htm"; else if (cond == 8) { htmltext = "30626-09.htm"; st.setCond(9); playSound(player, SOUND_MIDDLE); takeItems(player, HUNTER_RUNE_2, 10); giveItems(player, HAMIL_LETTER_3, 1); } else if (cond > 8 && cond < 12) htmltext = "30626-10.htm"; else if (cond == 12) { htmltext = "30626-11.htm"; st.setCond(13); playSound(player, SOUND_MIDDLE); } else if (cond == 13) htmltext = "30626-12.htm"; else if (cond == 14) { htmltext = "30626-13.htm"; takeItems(player, BLOOD_OF_LIZARDMAN, -1); takeItems(player, CRESCENT_MOON_BOW, 1); takeItems(player, TALISMAN_OF_KADESH, 1); giveItems(player, MARK_OF_SAGITTARIUS, 1); rewardExpAndSp(player, 54726, 20250); player.broadcastPacket(new SocialAction(player, 3)); playSound(player, SOUND_FINISH); st.exitQuest(false); } break; case SIR_ARON_TANFORD: if (cond == 2) htmltext = "30653-01.htm"; else if (cond > 2) htmltext = "30653-03.htm"; break; case VOKIAN: if (cond == 5) htmltext = "30514-01.htm"; else if (cond == 6) htmltext = "30514-03.htm"; else if (cond == 7) { htmltext = "30514-04.htm"; st.setCond(8); playSound(player, SOUND_MIDDLE); takeItems(player, TALISMAN_OF_SNAKE, 1); } else if (cond > 7) htmltext = "30514-05.htm"; break; case GAUEN: if (cond == 9) { htmltext = "30717-01.htm"; st.setCond(10); playSound(player, SOUND_MIDDLE); takeItems(player, HAMIL_LETTER_3, 1); } else if (cond == 10) htmltext = "30717-03.htm"; else if (cond == 11) { htmltext = "30717-02.htm"; st.setCond(12); playSound(player, SOUND_MIDDLE); takeItems(player, MANASHEN_HORN, 1); takeItems(player, MITHRIL_CLIP, 1); takeItems(player, REINFORCED_BOWSTRING, 1); takeItems(player, STAKATO_CHITIN, 1); giveItems(player, CRESCENT_MOON_BOW, 1); giveItems(player, WOODEN_ARROW, 10); } else if (cond > 11) htmltext = "30717-04.htm"; break; } break; case COMPLETED: htmltext = getAlreadyCompletedMsg(); break; } return htmltext; } @Override public void onMyDying(Npc npc, Creature killer) { final Player player = killer.getActingPlayer(); final QuestState st = checkPlayerState(player, npc, QuestStatus.STARTED); if (st == null) return; switch (npc.getNpcId()) { case ANT: case ANT_CAPTAIN: case ANT_OVERSEER: case ANT_RECRUIT: case ANT_PATROL: case ANT_GUARD: case NOBLE_ANT: case NOBLE_ANT_LEADER: if (st.getCond() == 3 && dropItems(player, HUNTER_RUNE_1, 1, 10, 500000)) st.setCond(4); break; case BREKA_ORC_SHAMAN: case BREKA_ORC_OVERLORD: if (st.getCond() == 6 && dropItems(player, HUNTER_RUNE_2, 1, 10, 500000)) { st.setCond(7); giveItems(player, TALISMAN_OF_SNAKE, 1); } break; case MARSH_STAKATO_WORKER: case MARSH_STAKATO_SOLDIER: case MARSH_STAKATO_DRONE: if (st.getCond() == 10 && dropItems(player, STAKATO_CHITIN, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, MITHRIL_CLIP, REINFORCED_BOWSTRING)) st.setCond(11); break; case MARSH_SPIDER: if (st.getCond() == 10 && dropItems(player, REINFORCED_BOWSTRING, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, MITHRIL_CLIP, STAKATO_CHITIN)) st.setCond(11); break; case ROAD_SCAVENGER: if (st.getCond() == 10 && dropItems(player, MITHRIL_CLIP, 1, 1, 100000) && player.getInventory().hasItems(MANASHEN_HORN, REINFORCED_BOWSTRING, STAKATO_CHITIN)) st.setCond(11); break; case MANASHEN_GARGOYLE: if (st.getCond() == 10 && dropItems(player, MANASHEN_HORN, 1, 1, 100000) && player.getInventory().hasItems(REINFORCED_BOWSTRING, MITHRIL_CLIP, STAKATO_CHITIN)) st.setCond(11); break; case LETO_LIZARDMAN: case LETO_LIZARDMAN_ARCHER: case LETO_LIZARDMAN_SOLDIER: case LETO_LIZARDMAN_WARRIOR: case LETO_LIZARDMAN_SHAMAN: case LETO_LIZARDMAN_OVERLORD: if (st.getCond() == 13) { if (((player.getInventory().getItemCount(BLOOD_OF_LIZARDMAN) - 120) * 5) > Rnd.get(100)) { playSound(player, SOUND_BEFORE_BATTLE); takeItems(player, BLOOD_OF_LIZARDMAN, -1); addSpawn(SERPENT_DEMON_KADESH, player, false, 300000, true); } else dropItemsAlways(player, BLOOD_OF_LIZARDMAN, 1, 0); } break; case SERPENT_DEMON_KADESH: if (st.getCond() == 13) { if (player.getInventory().getItemIdFrom(Paperdoll.RHAND) == CRESCENT_MOON_BOW) { st.setCond(14); playSound(player, SOUND_MIDDLE); giveItems(player, TALISMAN_OF_KADESH, 1); } else addSpawn(SERPENT_DEMON_KADESH, player, false, 300000, true); } break; } } }  
×
×
  • Criar Novo...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.