Ir para conteúdo
  • Cadastre-se

[Tutorial] Criando 2 servidores no mesmo login.


Kelvin

Posts recomendados

posta ma foto q da pra saber... como o revoltado disse pode ser tentando por 2 loguin, noq na verdade e 1 loguine 2 ou 3 ou 4 game servers

"Tirando o que tá ruim... o resto tá bom"

"Quando passares por alguém e esse alguém te olhar dos pés a cabeça e rir, não ligues, pois o maior elogio para um sábio é o sorriso de um idiota".

"Se tu é bom de briga pode crer que eu sou também; Você diz que bateu em dez, eu bati em mais de cem."

 

 

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

  • 2 weeks later...

Senho Inventor eu não entendir esta ultima parte aqui; Configurando o arquivo l2.ini

Por padrão o arquivo l2.ini vem com a porta 7777 configurada, então não precisamos mecher nele para logar no GameServer1, vamos configurar a do GameServer2, separe a system e abra-o com o FileEdit e procure por:

Quote

EXEName=l2.exe

SaveExt=usa

Port=7777

Class=LineageWarrior.MFighter

 

Altere a linha Port=7777 para Port=7778 e salve com a versão 413.

São dua rev.diferente um de By Zeus a segunda rev:3172 By Fabrio;Como eu faço para, arrumar este duas system pro os plays que ja tem a sua mesma acc para logar nos 2server sem da esse erro http://www.4shared.com/file/251316207/17fbc849/_2__imagem_erro.html

 

Editado por Lee-Zilong
Link para o comentário
Compartilhar em outros sites

  • 2 months later...

e tem como fazer loguin server numa maquina ( um ip )

game server outro maquina ( outro ip )

outro game server outra maquina ( outro ip ) ?

tudo no mesmo patch

se tem alguem sabe como?

Editado por targetzinho

Preciso de Uma pessoa Honesta q preste Serviços de edição de l2j ex: Add custons com status iguais e configurar serve a gosto do cliente . sem querer ficar rico da noite pro dia ^^.

Procuro rev 99,9% para lowrate e serviços de suporte em java e otimização.

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

Kelvin, boa noite,

 

Tenho um Gracia Epilogue, em dedicado, e gostaria de colocar um IL, mas quando coloco o IL pra rodar, as contas são criadas no banco do Epilogue.

Epilogue está na porta = 7777 - Banco = l2jdb

Interlude na porta = 7778 - Banco = l2jdb2

 

Mas as contas do IL são criadas no banco do Epilogue (l2jdb).

 

Como posso acertar isso?

 

Desde já agradeço.

banner2top.gif

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

Pessoal o meu tb ta com um problema que ainda não foi respondido, por exemplo, somente um server é reconhecido pelo loguinserver, ou seja o primeiro server a ser ligado, sómente ele é reconhecido o outro liga mas não encontra o loguinserver e fiz tudinho que esta no tutorial, na verdade eu fiz umas 10 vzs e não consegui nada, tenho um server Gracia PT2 e quero por um Epilogue rodando junto a ele, já tentei usar o loguin do Gracia PT2 e do Epilogue e nada, alguem ajuda ai pq esta pegunta já foi feita variaz vezes e ninguem respondeu ainda!

Link para o comentário
Compartilhar em outros sites

Procurei esta resposta por muito tempo...podem olhar meus posts..ng respondeu.

Então, para quem quer a resposta, vou dividir:

 

Todos os tutoriais de colocar 2 gameserver no mesmo login estão certos, só esqueceram de um detalhe...O LOGINSERVER!

 

Quando vc cria o segundo gameserver (gameserver2), está usando o loginserver do gameserver normal (gameserver1), só muda o nome do server e a porta (7778).

 

Mas...como o loginserver é do gameserver1..o banco de dados está configurado para o gameserver1..então, as contas do gameserver2 serão criadas no banco de dados do gameserver1.

 

Para resolver o problema:

 

Configure o loginserver para não receber criação de contas automáticas e sim..criação de contas pelo site.

 

# ------------------

# Section: Accounts

# ------------------

# Automatically Create Accounts.

# default = false

AutoCreateAccounts = true ----> false

 

Vamos testar?

banner2top.gif

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

e tem como fazer loguin server numa maquina ( um ip )

game server outro maquina ( outro ip )

outro game server outra maquina ( outro ip ) ?

tudo no mesmo patch

se tem alguem sabe como?

Preciso de Uma pessoa Honesta q preste Serviços de edição de l2j ex: Add custons com status iguais e configurar serve a gosto do cliente . sem querer ficar rico da noite pro dia ^^.

Procuro rev 99,9% para lowrate e serviços de suporte em java e otimização.

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

bom dia

 

kelvin existem 2 perguntas fundamentais ai no topico as quais vc nao respondeu e pelo visto sao as mais pertinentes

eu pra tentar ajudar criei os dois servers aqui e tentei solucoes

 

 

primeiro erro

 

FATAL: FAILED to start the game server listener. reason: address already in use: JVM_Bind

 

do REVOLTADO e de muitos inclusive eu agora estou tendo o problema

aqui no meu pc geralmente acontece do nada isso

tudo corre bem

e derrepente ninguem entra no server em nenhum dos dois

eu dou restart no login e ele da esse erro

dai so ajeita se eu excluir os HEXIDS dos dois servers e deletar a coluna da tabela servers e refazer novamente tudo

 

segundo erro

 

quanto a conta a ser criada nao ir para a db certa do segundo server

 

se for no site e mole vc so precisa copiar a pagina do comando de accouts criar uma caixa de acept no caso onde vao por emails nomes senha etc

separadas no site pelos respectivos nomes

e la na linha das dbs dessa pagina renomear pra db2 e a porta se tiver

quando escolherem no site qual server querem jogar tera uma pagina exclusiva pra cada server om as respestivas dbs

espero ter ajudado

quanto a esse erro do revoltado ainda nao sei o que pode ser

desconfio que quando o server 1 restarta o 2 assume o login so pra ele e trava os dois em questao

se nao for isso nao sei mais aguardo alguma resposta do criador do topico

e que se ele puder ponha as solucoes como parte do tutorial assim nao tera mais duvidas ^^

 

abraço a todos e parabens pra quem tenta ajudar

 

alex

Link para o comentário
Compartilhar em outros sites

Irei ensinar a galera a criar dois ou mais servidores no mesmo PC e com o mesmo Login.

 

Primeira coisa que se tem que fazer é escolher um login atualizado para melhorar na conexão.

 

O que é preciso ter.

 

1 LoginServer.

2 GameServers.

 

Os GameServers podem ser de versões diferentes.

 

Passo 1.

 

Configurando o banco de dado, cada servidor precisa ter um banco de dados independente então vamos criar 2 DBs chamaremos:

 

GameServer 1: l2jdb

GameServer 2: l2jdb2

 

Crie esses 2 no navicat.

Agora vamos configurar o GameServer 2 que por padrão vira l2jdb vamos mudar para l2jdb2.

Va em GameServer/Config abra o arquivo server.porpieties procure por...

 

 

 

Vamos mudar o seguinte URL=jdbc:mysql://localhost/l2jdb para URL=jdbc:mysql://localhost/l2jdb2 não precisa mecher nos arquivos com # eles são apenas comentarios não influenciam na configuração.

 

Pronto agora o seu GameServer1 funcionara no banco de dados l2jdb e o seu GameServer2 funcionara no banco de dados l2jdb2.

 

Passo 2

 

Configurando o arquivo Hexid para GameServer1.

O arquivo Hexid serve para a identificação do servidor quando ele é ligado e identifica a ordem de cada 1.

Vamos na pasta do LoginServer procure o arquivo RegisterGameServer.bat abra-o quando terminar de carregar digite clean e de enter, ira perguntar se você está certo disse digite y e de enter denovo, ira pedir para criar um arquivo Hexid, vamos digitar 1 e dar enter.

Pronto Criamos o arquivos Hexid(server1) renomei-o para Hexid somente, copie o arquivo va na pasta GameServer/Config e cole lá dentro, se pedir para substituir, faça isso.

Pronto criamos o primeiro servidor.

 

Configurando o arquivo Hexid para GameServer2.

Volte para a pasta LoginServer, casó o arquivo Hexid esteja lá ainda é só deletar para fazermos o outro.

Abra novamente o arquivo RegisterGameServer.bat mas agora não vamos fazer os passos explicados no GameServer1, simplismente depois de carregar digite 2 e ira criar o arquivo Hexid(server2), renomei para Hexid, copie va na pasta do GameServer2/config e cole lá dentro, se pedir para substituir, faça isso.

 

Passo 3

 

Configurando a porta do GameServer.

Para se conectar ao game é necessario de uma porta a 7777 vamos definir as portas para os GameServers.

 

GameServer1: Porta 7777

GameServer2: Porta 7778

 

Por padrão o GameServer vem na porta 7777 então não precisaremos mudar a porta no GameServer1, vamos alterar somente a do GameServer2.

Va em GameServer/config abra o arquivo Server.propieties procure logo no inicio por:

 

 

E altere GameserverPort=7777 para GameserverPort=7778

 

Pronto porta do GameServer2 configurada.

 

Passo 4

 

Configurando o arquivo l2.ini

Por padrão o arquivo l2.ini vem com a porta 7777 configurada, então não precisamos mecher nele para logar no GameServer1, vamos configurar a do GameServer2, separe a system e abra-o com o FileEdit e procure por:

 

 

 

Altere a linha Port=7777 para Port=7778 e salve com a versão 413.

 

Pronto tudo configurado.

 

Ligue o LoginServer e depois o GameServer1 e GameServer2, os 2 irão carregar e da a mensagem que os servidores foram registrados.

 

OBS: Será necessario liberar a porta 7778 do seu modem para conexão no GameServer2.

 

 

Creditos: Kelvin, L2JBrasil

Proibido a postagem em outros forums.

 

 

 

 

Proibida a reprodução mesmo que em partes desse tutorial sem a publicação dos devidos créditos de criação

Garantido pela Constituição da República Federativa do Brasil, de 05 de outubro de 1988

Portaria MCT n° 88, de 23/04/98

Propriedade Intelectual

 

Kelvin exclareça o passo 4 por favor na parte que eh pra separar a systen e configurar a ini para o gameserve2 e depois como fazi? ou vou ter de usar 2 systen Oo?

Link para o comentário
Compartilhar em outros sites

olha a zica que eu fiz xD nao consegui posta a screen

 

Gameserve<127.0.0.1>:connection lost: socket closed

Gameserve<127.0.0.1>:connection lost: socket closed

Gameserve<127.0.0.1>:connection lost: socket closed

Gameserve<127.0.0.1>:connection lost: socket closed

Gameserve<127.0.0.1>:connection lost: socket closed

Gameserve<127.0.0.1>:connection lost: socket closed

Gameserve<127.0.0.1>:connection lost: socket closed

Gameserve<127.0.0.1>:connection lost: socket closed

Gameserve<127.0.0.1>:connection lost: socket closed

Gameserve<127.0.0.1>:connection lost: socket closed

incorrect packet checksun, closing connection<LS>

 

 

damn! registeration failed:reason wrong hexid

damn! registeration failed:reason wrong hexid

damn! registeration failed:reason wrong hexid

damn! registeration failed:reason wrong hexid

damn! registeration failed:reason wrong hexid

damn! registeration failed:reason wrong hexid

damn! registeration failed:reason wrong hexid

damn! registeration failed:reason wrong hexid

connecting to loguin on 127.0.0.1:9014

 

eh issu alguem ajuda por favor? :wub:

Link para o comentário
Compartilhar em outros sites

  • 1 month later...
  • 1 month later...
  • 3 weeks later...
  • 2 months later...

teria como criar 2 servers com 2 dedicados diferentes ? assim

 

1º dedicado LOGUIN SERVER + GAME SERVER COM NO IP

 

2º DEDICADO COM O OUTRO GAME SERVER COM NO IP

 

É POSSIVEL ?

 

Aquele que aprendeu e reviveu aqui na l2jbrasil

Faço muitos trabalhos para esta comunidade, assim como tambem ajudo aos que precisão.

A VIDA E UMA CAIXINHA DE SUPRESAS, NAO DEIXE PARA DEPOIS O QUE PODES FAZER AGORA!

 

Link para o comentário
Compartilhar em outros sites

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