Ir para conteúdo
  • Cadastre-se

Como fazer um balanceamento de classes em um Servidor de Lineage 2


Zayne

  

97 votos

  1. 1. Você já conhecia este balanceamento de classes?

    • Nunca tinha visto antes.
      72
    • Já havia lido algo parecido em um site gringo.
      10
    • Eu havia visto as partes dele nos tópicos do Zayne
      3
    • Nem li! só vejo tutorial de fotos
      3
    • Aff credo! faz um video ai de 4 horas encinando.
      9

  • Please sign in to vote in this poll.

Posts recomendados


Só não entendi qual a diferença entre balancear as classes em um servidos com os rates 1x ou um que seja 50x por exemplo... Sendo que os "x" são apenas a dificuldade de upar, ganhar sp, dropar adena...

 

Você quis dizer que se eu balancear todo um servidor em casa nos seus 1x retail, quando eu for colocar ON com "50x" vai estar tudo desbalanceado? o.O

 

(Desculpa se eu entendi errado, mas é isso que parece)

Link para o comentário
Compartilhar em outros sites

boa amigo, andei verificando varios server , principalmente os mais novos Hi5 e GoD... e en todo eles , 95% reclamaçoes das classes.....

e oq notei entre todos foi uma coisa simples mas q eles nunca verificam, sao limites de status AtackSpesd e Castingspeed....

esses q por sua vez ainda continuam limitados em 1500 e 1999 ... configuração essa desde interlude ( ou anterior) para server limpos (novos configuração para 1x)

 

resumindo... hj em dia como se sabe, teve varias atualizaçoes ( status = certificados, joias, sets, armas, principalemnte buffs e skills) e ainda se usa mesmo status 1500 e 1999 fazendo assim com que as classes fiquem um pouco desbalanceadas principalmente para server q usam itens custom, ai quebra mesmo.....

 

eu hj costumo ultilizar status de 2000 - AtackSpesd e 2500 - Castingspeed e uso 2500 - AtackSpesd e 3000 - Castingspeed para server GOD ou HI5 com custom... assim equilibra mais e n sufoca tanto classes q precisam de atack speed por terem pouco Patcak e nem outro q precisam de muita casting por terem pouco Matack....

 

bem, ta ai a dica ...... façam como queiram .......

 

PS: isso n quer dizer q todos terao 2500 - AtackSpesd e 3000 - Castingspeed e sim q ele ficam livres para escolher oq usar (set, SA, joia, Dye, tattoo, certificado, buff, etc....)

Projeto privado Lindvior - Ertheia


Source Godworld.



Ertheia -- > http://www.l2jbrasil.com/index.php?/topic/107157-l2-beta-ertheia/&do=findComment&comment=673397

Link para o comentário
Compartilhar em outros sites

Para você entender Retail é 1x sem customizar nada, "like original".

Não existe PVP Retail 5x isto de PVP Server automaticamente tem customizações, joias tatoos, npc de classe, buff etc...

Ali eu fui bem claro e afirmo que: "só de por 1 npc buffer você tem de re-balancear todas as classes novamente".

Ou seja 1 item custom é o bastante para desbalancear um servidor que foi balanceado no "retail", entendeu agora?

 

Sobre o ganho de level rápido dos vários "X" de um servidor é outro problema e dos grandes!

Porque para cada "X" multiplicado são vários "X" horas a menos com determinada job e skills que alguém se matou para balancear.

 

Como avisei existem meios e métodos, escolha o seu. :wink:

prja.png
Current Chronic: The Shadowy Nightmare (SDE-V7 Currently Under Construction)☜═㋡

Link para o comentário
Compartilhar em outros sites

Para você entender Retail é 1x sem customizar nada, "like original".

Não existe PVP Retail 5x isto de PVP Server automaticamente tem customizações, joias tatoos, npc de classe, buff etc...

Ali eu fui bem claro e afirmo que: "só de por 1 npc buffer você tem de re-balancear todas as classes novamente".

Ou seja 1 item custom é o bastante para desbalancear um servidor que foi balanceado no "retail", entendeu agora?

 

Sobre o ganho de level rápido dos vários "X" de um servidor é outro problema e dos grandes!

Porque para cada "X" multiplicado são vários "X" horas a menos com determinada job e skills que alguém se matou para balancear.

 

Como avisei existem meios e métodos, escolha o seu. :wink:

 

Bom, pra mim ta errado isso ai de não haver servidor PvP "Retail", querendo ou não os npc buffers são apenas os buff das classes. Se o buffer estiver retail, o npc tbm '-'. Ou pra você estou errado?

 

E mais uma coisa, meu ultimo servidor era sem custom algum em questão de armor, weapon, tattoos modo viadagem, e asas do restart --". Ele era 1x em casa continuou balanceado mesmo depois de eu abrir ele com 100x.

 

Hoje em dia, a maioria das reclamações vem por causa dos skills que não funciona devidamente e/ou está com status errado por conta de desenvolvedor descuidado '-', e acaba deixando tal classe em desvantagem, balanceado.

 

Mas belo tutorial pra quem ta muuuito afim de passar umas horinhas testando TUDO.

Link para o comentário
Compartilhar em outros sites

Vou responder por educação, mas nem deveria responder tais desacatos.

Se você acha que é assim, guarde isto para você e passar bem (no take offence) sem arrumar briguinha aqui por favor.

 

Agora é evidente que muda tudo um npc buffer injetado no jogo, porque ninguém fica FULL BUFF por uma hora no retail!

Não existe danças e musicas de uma hora no retail, de onde você tirou estas informações eu não sei, mas garanto que não foi da NCSoft.

Se apenas mudar de 1x para 1000x não muda nada *fato* porem para que balancear no lv19 se o noob player vai para level 40 com o primeiro mob?

 

Por ironias e chacotas deste calão que muita gente boa que sabe o que está falando fica calado e guarda o conhecimento consigo.

Muito obrigado por me lembrar que: "não se joga pérolas aos porcos"

E quer saber me arrependo de ter repassado esse conhecimento que me rendeu muito dinheiro para reclamões pessoas sem noção.

 

Sem mais e triste por perder meu precioso tempo postando algo novo para o bem dos outros.

prja.png
Current Chronic: The Shadowy Nightmare (SDE-V7 Currently Under Construction)☜═㋡

Link para o comentário
Compartilhar em outros sites

Vou responder por educação, mas nem deveria responder tais desacatos.

Se você acha que é assim, guarde isto para você e passar bem (no take offence) sem arrumar briguinha aqui por favor.

 

Agora é evidente que muda tudo um npc buffer injetado no jogo, porque ninguém fica FULL BUFF por uma hora no retail!

Não existe danças e musicas de uma hora no retail, de onde você tirou estas informações eu não sei, mas garanto que não foi da NCSoft.

Se apenas mudar de 1x para 1000x não muda nada *fato* porem para que balancear no lv19 se o noob player vai para level 40 com o primeiro mob?

 

Por ironias e chacotas deste calão que muita gente boa que sabe o que está falando fica calado e guarda o conhecimento consigo.

Muito obrigado por me lembrar que: "não se joga pérolas aos porcos"

E quer saber me arrependo de ter repassado esse conhecimento que me rendeu muito dinheiro para reclamões pessoas sem noção.

 

Sem mais e triste por perder meu precioso tempo postando algo novo para o bem dos outros.

 

 

Para man, um tutorial de classes desse nype.

Ta de parabéns !!!!

Link para o comentário
Compartilhar em outros sites

Vou responder por educação, mas nem deveria responder tais desacatos.

Se você acha que é assim, guarde isto para você e passar bem (no take offence) sem arrumar briguinha aqui por favor.

 

Agora é evidente que muda tudo um npc buffer injetado no jogo, porque ninguém fica FULL BUFF por uma hora no retail!

Não existe danças e musicas de uma hora no retail, de onde você tirou estas informações eu não sei, mas garanto que não foi da NCSoft.

Se apenas mudar de 1x para 1000x não muda nada *fato* porem para que balancear no lv19 se o noob player vai para level 40 com o primeiro mob?

 

Por ironias e chacotas deste calão que muita gente boa que sabe o que está falando fica calado e guarda o conhecimento consigo.

Muito obrigado por me lembrar que: "não se joga pérolas aos porcos"

E quer saber me arrependo de ter repassado esse conhecimento que me rendeu muito dinheiro para reclamões pessoas sem noção.

 

Sem mais e triste por perder meu precioso tempo postando algo novo para o bem dos outros.

 

Porque falar isso? sendo que foi apenas um membro que escreveu oque vc não gostou de ver!

 

Ótimo tutorial e cada um usa ele como achar melhor, quem quiser seguir ele 100% que siga quem não quiser que não siga, o importante e que você fez a sua parte!

Parabéns!!!

Link para o comentário
Compartilhar em outros sites

PARABÉNS !! bela iniciativa ira ajudar muito !

Com crueldade transformo o complexo em óbvio

pois nenhum lutador nocauteia sem ódio.

Link para o comentário
Compartilhar em outros sites

  • 4 weeks later...

excelente tutorial mano muito bem explicado bem colocado tudo em seu devido lugar creio que levando em conta tudo que foi pronunciado por você em seu TOPICO creio que basta cada um seguir os passos que não havera problemas (LIKE).

"Por trás desda máscara há mais do que carne e sangue; por trás desta máscara há idéias, e as idéias são á prova de balas."



"V" de Vingança

Link para o comentário
Compartilhar em outros sites

Cara eu fiz assim...

Peguei uma arena do Coliseum (arena 23) e separei ela só para GM's (ou seja sem acess level não pode entrar)

Também tem uma ilha do canto esquerdo superior do mapa (na verdade é um bug do mapa) que fica pouco acima da agua, duvido que player vá procurar ela lá!

Existem também áreas como a JAIL 2 (ou experimental jail) onde ninguém pode entrar entre outras!

Basta você buscar uma destas áreas e ou localidades perdidas no tempo e muito distantes para criar sua GM ROOM.

 

Não te passo o /loc porque isso varia de revisão para revisão e principalmente entre chronicles e o tutorial é universal de c2 ao god.

 

Boa sorte e mãos à obra.

prja.png
Current Chronic: The Shadowy Nightmare (SDE-V7 Currently Under Construction)☜═㋡

Link para o comentário
Compartilhar em outros sites

zayne como sei que vc tem muito conhecimento vamos juntar uma galera de consciência e balancear um serve de 50x ate 100x não tenho muito conhecimento em java config mais jogabilidade axo que sei um pouco sobre tudo queste boss upe siege um pouco de tudo do rentail

Querer não é poder.

Link para o comentário
Compartilhar em outros sites

SO QUERIA SABER COMO POSSO BALANCEAR POR EXEMPLO : ONDE DEVO MECHER, E COMO FASSO ISSO POIS SOU NOVO NISSO DE BALANCEAR CLASSES PFV.. MIN AJUDEM. POIS PRECISSO MUITO DISSO ...

Link para o comentário
Compartilhar em outros sites

SO QUERIA SABER COMO POSSO BALANCEAR POR EXEMPLO : ONDE DEVO MECHER, E COMO FASSO ISSO POIS SOU NOVO NISSO DE BALANCEAR CLASSES PFV.. MIN AJUDEM. POIS PRECISSO MUITO DISSO ...

O amigo já respondeu isto no tutorial, releia com atenção!

 

Zayne, você se esqueceu de citar os servidores que tem mods para o balanço de classes, ajudam muito pouco e por conveniência não deveriam ser usados pois a melhor forma de balancear as classes de um servidor é editar o power das skills nas xmls e os status dos chars no template! Agradecido por ter a postura de escrever este tutorial...

 

Obrigado!

Editado por Kinghanker

eknqmw.jpg

Link para o comentário
Compartilhar em outros sites

Vejam não é que esqueci ou não levei em conta, somente fui muito superficial na parte dos mods pois eles entram como custons.

O único mod que conheço que ajuda a balancear é aquele que restringe armas e armaduras para as classes evitando haver necrotanker's de heavy/shield.

Nota:

Balanço por skill não é balanço é ajuste no controle de damage.

Balanço por buffs não é balanço é restrição de efeito.

Balanço pelo template ai sim é balanço!

Existem vários métodos e formulas (já citei isto e repito sempre).... mas tudo dá trabalho e requer tempo.

Porque sabemos que não existem magicas ou arquivos prontos para isto. :wink:

 

 

@ Para o pessoal que não entendeu:

-Se você não consegue balancear seu servidor é porque...

Não conhece o jogo de verdade como ele é em sua base mais limpa e retail (joguem servidores 1x e aprendam mais)

Não conhece a sua própria revisão e neste caso baixar um pré configurado só vai piorar (aprenda mais sobre administrar servidores)

Não conhece as classes limpas sem custons ou modificações e principalmente sem npc buffs (jogue servidores 1x e conheça mais sobre isto)

 

Balanço rápido:

Ajusta o character template, faz restrições com mod's e limitações editando skills.

Isto deve gastar de 3 a 6 dias para ficar pronto com uma boa staff de 4 a 8 GM's/Adm's competentes e que realmente sabem tudo do jogo.

 

Balanço perfeito:

Ajusta-se tudo dos character's aos mob's incluindo os boss , e tudo é feito em testes de combate;

É feito um ajuste fino nas skills de ataque controlando o damage, consumo de mp, chance e até adicionando over-hits em alguns casos;

Limitações são sempre bem vindas principalmente de weapons e armors para definir melhor quem é quem nas profissões;

Porem o principal é ver o "level vs. rate":

1x - o balanço é feito de 3 em 3 levels

5x - o balanço acontece à cada 5 ou 8 levels (depende da cronica e da árvore de skills)

10x - a cada 10 levels e é preciso fazer tudo com o personagem "full"

50x ao 100x - apenas nas entre grades (level 20-40-52-62, etc...)

100x acima - apenas no level 40, 52 e 80 e nos boss porque nestes casos normalmente os personagens atropelam tudo com full buffs de trocentos slots.

O tempo gasto aqui varia muito podendo ser de 5 a 120 dias com uma staff competente de 4 a 8 admin's.

 

Um fato interessante:

Se balancear servidor fosse algo fácil eu não ganharia tanta grana precisaria ter feito tutorial :D

Se existem character's template prontos que ajudam no balanceamento? *existem* mas só isto não vai solucionar nada!

A cada item, mod, npc, mob etc... que for modificado no jogo o seu balanceamento é comprometido "principalmente em rates mais baixas";

* Quando o personagem praticamente só joga no último level é mais fácil porque basta balancear ali e ignorar o resto...

* Quando o personagem tem de farmar um pouco em certos levels é preciso arrumar ali naqueles levels tanto os chars quanto os mobs...

* Quando o servidor é retail (1x) TUDO deve ser visto e rê visto para que o servidor fique realmente balanceado...

Independe do *quando* você precise balancear só de adicionar uma mascara que dê "+8 p.def" já é preciso ver onde ela derrubou o balanço no server.

Ou seja: quanto menos você por mais fácil é manter o balanço e quanto mais você injetar mais trabalho terá de balancear tudo depois.

 

Bom acho que isto já é o bastante para implementar algumas coisinhas que ficaram vagas e se perguntarem por meus segredos e formulas particulares...

Eu tenho é claro pois já obtive mais de 50 servidores perfeitamente balanceados, mas não vou dar de mão beijada para ninguém!

Então façam como eu, se matem de estudar e coloque as mãos à obra porque só assim os segredos são desvendados. :$

prja.png
Current Chronic: The Shadowy Nightmare (SDE-V7 Currently Under Construction)☜═㋡

Link para o comentário
Compartilhar em outros sites

  • 1 month later...

Bem ao ler este topic reforça mais minha ideia, servidores com status absurdos de atack speed 2k + ,atack 20k+ e por ae vai. são os menos balanciados possivel eu estou tentando balanciar meu servidor ao maximo

testando um tanker full enchant e top equips tive uma otima perspectiva agora e testar o status dos wizards e começar fazer testes em 1x1 player vs player

 

faço um convite ao zayne e ao pessoal do forum, apos a fase de testes e ajustes no server entrar la e dar uma jogada para testar o server não vai entrar de imediato on mas gostaria de opinioes sobre o meu projeto

 

 

ao meu ponto de vista ate mesmo as dyes vao ajudar a balanciar o server pois se o player quer um atack maior ele vai ter que retirar hp ou atack speed para isto

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

Aproveitar e lhe ensinar uma ou duas coisinhas...

Dyes "as tintas ou tatto de rena":

Elas não balanceiam porque são o item obrigatório de "desbalanceamento for xperdice" não custom em todo lineage.

 

O termo "desbalanceamento for xperdice" significa que o player vai desbalancear o char dele segundo os seus conhecimentos e experiência como jogador;

Exatamente o que as Dyes fazem ao dar "+ aqui e - lá" em um server bem balanceado esses +5-5 obtidos com combinações e ou as dyes de BOSS são o máximo de bonus nos status e fazem um diferença brutal.

Por isto um bom balanceamento ignora o uso de dyes (isto fica ao gosto e risco de cada player usar ou não)

 

Para usar as Voodoo's (tatoo de madeira como o povo chama erroniamente) é o mesmo conceito...

Dificultar o acesso ao máximo e dar com uma mão tirando com à outra nos status delas e requer muito conhecimento do jogo nesta parte de edição personalizada;

Lembro que trazer ao shopping ou nos drops esses voodoos de C2/C3 requer muita edição e ajustes para não detonar o balanço natural dos servidores enquanto as class/jobs.

 

Trazendo uma informação já passada aqui: (para crônicas que não tem capa)

Ao invés de colocarem (capas) cloacks custom usem a textura delas nas existentes fazendo emergir um item que ficava até então ocultado por falta de textura;

E leve em conta aqueles +23 (em média) de p.def no balanceamento do servidor.

 

Bom ai estão algumas dicas bem úteis, e em resposta ao seu convite "se eu estiver com tempo "porque não" fazer um teste para você" ;)

Abração e boa sorte no seu trabalho de balanceamento "muita calma e testes sempre".

prja.png
Current Chronic: The Shadowy Nightmare (SDE-V7 Currently Under Construction)☜═㋡

Link para o comentário
Compartilhar em outros sites

Zayne Muito legal sua ideias elas vão direto ao ponto como gosto, se possível, você poderia fazer um explicação com os fundamentos sobre como elabora um bom farme, tipo quantas moedas em game, dropes, hp dos monstros pra não ter problema de play se curando, o que deve ter ou não em uma área farme,fico no aguardo, sei que vindo de você sempre é coisa boa que engrandece nossos conhecimentos. Minha dificuldade ainda é muito na questão do farme, ter uma estética bem objetiva pra isso. Fico no aguardo, Abraços...

Link para o comentário
Compartilhar em outros sites

  • 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.