Ir para conteúdo
  • Cadastre-se
  • 0

[IP CONFIG]


Sornii

Pergunta

Sou eu denovo, hehe...

 

Galera eu tô muito perdido, esse servidor tá me deixando louco.

 

Seguinte, eu deixo o servidor on e consigo entrar no server com a mesma maquina que rodo o mesmo, mas..

Outros computadores da rede interna ou externa não passam da tela de escolher os servidores no meu caso "Bartz".

 

Vou postar as configurações dos meus config.

 

loginserver.properties

# Bind ip of the loginserver, use 0.0.0.0 to bind on all available IPs

LoginServerHostname=0.0.0.0

LoginServerPort=2106

GMMinLevel=100

 

# The port, ip on which login will listen for GameServers

LoginHostname=127.0.0.1

LoginPort=9014

 

# If set to true any GameServer can register on your login's free slots

AcceptNewGameServer = False

 

# If false, the licence (after the login) will not be shown

ShowLicence = True

 

# Database info

Driver=com.mysql.jdbc.Driver

#Driver=org.hsqldb.jdbcDriver

#Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver

URL=jdbc:mysql://localhost/l2jdb

#URL=jdbc:hsqldb:hsql://localhost/l2jdb

#URL=jdbc:sqlserver://localhost/database=l2jdb/user=sa/password=

Login=root

Password=

 

# Useable values: "True" - "False", use this option to choose whether accounts will be created

# automatically or not.

AutoCreateAccounts=True

 

# The delay in minutes after which the login updates the gameservers IP's (usefull when their ip is dynamic)

# (0 = disable)

IpUpdateTime=0

 

server.properties

# Bind ip of the gameserver, use 0.0.0.0 to bind on all available IPs

GameserverHostname = 0.0.0.0

GameserverPort = 7777

 

# This is transmitted to the clients connecting from an external network, so it has to be a public IP or resolvable hostname

ExternalHostname = exotico.servegame.com

# This is transmitted to the client from the same network, so it has to be a local IP or resolvable hostname

InternalHostname = 20.1.2.11

# Note: You can define server hostname for each network in subnets.properties

 

# The Loginserver host and port

LoginPort = 9014

LoginHost = 127.0.0.1

 

# This is the server id that the gameserver will request (i.e. 1 is Bartz)

RequestServerID = 1

# If set to true, the login will give an other ID to the server if the requested ID is allready reserved

AcceptAlternateID = True

 

# Database info

Driver = com.mysql.jdbc.Driver

# Driver = org.hsqldb.jdbcDriver

# Driver = com.microsoft.sqlserver.jdbc.SQLServerDriver

URL = jdbc:mysql://localhost/l2jdb

# URL = jdbc:hsqldb:hsql://localhost/l2jdb

# URL = jdbc:sqlserver://localhost/database=l2jdb/user=sa/password=

# Database user info (using root user is not recommended)

Login = root

Password =

MaximumDbConnections = 50

 

Eu postei só a metade, se não ficaria muita coisa...

 

o ip externo eu criei no no-ip

que é "exotico.servegame.com"

 

o ip interno eu vi pelo comando "ipconfig" no "cmd"

e apareceu esses valores

 

Adaptador Ethernet Conexão local 2:

 

Sufixo DNS específico de conexão . :

Endereço IP . . . . . . . . . . . . : 20.1.2.11

Máscara de sub-rede . . . . . . . . : 255.255.255.0

Gateway padrão. . . . . . . . . . . : 20.1.2.25

 

as portas liberadas no modem são:

 

3306, 7777 e 8245.

 

Bem, é isso.

 

Obrigado :D

Hollowization: For what the reason we don't have a monster inside us?

hollowization.jpg

Link para o comentário
Compartilhar em outros sites

Posts recomendados


o meu ta tudo certo o l2.ini

Protocol=unreal

ProtocolDescription=Unreal Protocol

Name=Player

Map=Index.unr

LocalMap=Entry.unr

Host=

Portal=

MapExt=unr

EXEName=l2.exe

SaveExt=usa

Port=7777

Class=LineageWarrior.MFighter

ServerAddr=fantasyl2server.servegame.com

IsL2NetLogin=True

IsL2Console=True

IsL2Seamless=True

IsL2Projector=True

ISL2Mark=2

ForceAspectRatio=False

AspectRatio=1.334

IsDefaultShaodw=False

IsUnderWaterEffect=False

IsUseCommand=True

L2VersionCheck=false

IsL2MemLog=False

L2ThreadFilter=1

L2TestServer=false

loginserver.properties

# Bind ip of the loginserver, use 0.0.0.0 to bind on all available IPs

LoginServerHostname=0.0.0.0

LoginServerPort=2106

GMMinLevel=100

 

# The port, ip on which login will listen for GameServers

LoginHostname=127.0.0.1

LoginPort=9014

 

# If set to true any GameServer can register on your login's free slots

AcceptNewGameServer = False

 

# If false, the licence (after the login) will not be shown

ShowLicence = False

 

# Database info

Driver=com.mysql.jdbc.Driver

#Driver=org.hsqldb.jdbcDriver

#Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver

URL=jdbc:mysql://localhost/l2jdb

#URL=jdbc:hsqldb:hsql://localhost/l2jdb

#URL=jdbc:sqlserver://localhost/database=l2jdb/user=sa/password=

Login=root

Password=

 

# Useable values: "True" - "False", use this option to choose whether accounts will be created

# automatically or not.

AutoCreateAccounts=True

server.properties

# ================================================================

# General server setting!!! REQUIRED to configure to everyone!!!

# ================================================================

 

# Bind ip of the gameserver, use 0.0.0.0 to bind on all available IPs

GameserverHostname = 0.0.0.0

GameserverPort = 7777

 

# This is transmitted to the clients connecting from an external network, so it has to be a public IP or resolvable hostname

ExternalHostname = fantasyl2server.servegame.com

# This is transmitted to the client from the same network, so it has to be a local IP or resolvable hostname

InternalHostname = 127.0.0.1

# Note: You can define server hostname for each network in subnets.properties

 

# The Loginserver host and port

LoginPort = 9014

LoginHost = 127.0.0.1

 

# This is the server id that the gameserver will request (1 Bartz)

RequestServerID = 1

# If set to true, the login will give an other ID to the server if the requested ID is allready reserved

AcceptAlternateID = True

não passa da parte de escolher o server

so da pra logar no host

 

eu testo todas as porta a 7777 a 2106 a 80 tao tudo aberta soq ah 9014 aparece que ta closed,so que abri essa porta no modem...

eu testo no site http://ping.eu/ e diz: port closed

por favor algum mod ajuda ae

Link para o comentário
Compartilhar em outros sites

Pra eu me conectar eu coloquei 127.0.0.1

 

Pra as pessoas da mesma lan eu coloquei 20.1.2.11

 

Pra as pessoas que estao em uma lan diferente eu coloquei exotico.servegame.com

 

Isso no l2.ini

Hollowization: For what the reason we don't have a monster inside us?

hollowization.jpg

Link para o comentário
Compartilhar em outros sites

KhayrusS

 

Vou tentar liberar essas portas amanha, valeu pela sua atenção cara.

 

Mas as configurações das properties estão certas?

 

Edit -> Eu te adicionei no msn, há algum problema? É que por lá as respostas saiem mais rapidas, e eu estou com algumas dúvidas ainda.

Eu realmente pretendo lançar um servidor, com boas configurações tanto quanto no servidor quanto em um computador e internet.

Hollowization: For what the reason we don't have a monster inside us?

hollowization.jpg

Link para o comentário
Compartilhar em outros sites

Sou eu denovo, hehe...

 

Galera eu tô muito perdido, esse servidor tá me deixando louco.

 

Seguinte, eu deixo o servidor on e consigo entrar no server com a mesma maquina que rodo o mesmo, mas..

Outros computadores da rede interna ou externa não passam da tela de escolher os servidores no meu caso "Bartz".

 

Vou postar as configurações dos meus config.

 

loginserver.properties

 

 

server.properties

 

 

Eu postei só a metade, se não ficaria muita coisa...

 

o ip externo eu criei no no-ip

que é "exotico.servegame.com"

 

o ip interno eu vi pelo comando "ipconfig" no "cmd"

e apareceu esses valores

 

 

 

as portas liberadas no modem são:

 

3306, 7777 e 8245.

 

Bem, é isso.

 

Obrigado :D

 

cara sao essas portas q precisam ser abertas

 

80-HTTP

 

7777-game server port

 

9014- login host port

 

2106- server port

 

edit:mals ai khayruss nem vi seu post

Link para o comentário
Compartilhar em outros sites

Vocês do forum são de mais, vou conseguir por em pratica isso apenas amanha, pois não tenho ninguém no msn para que eu possa mandar a system e testar o servidor.

 

a não ser que algum de vocês queiram servir de cobaia e fazer um pvpzinho :D

Hollowization: For what the reason we don't have a monster inside us?

hollowization.jpg

Link para o comentário
Compartilhar em outros sites

Galera, liberei as portas que vocês que falaram

3306, 7777, 8245, 2106, 80, 9014. Liberei até 53 (estava em dúvida)

 

testei no http://ping.eu/

 

e acusou de algumas portas fechadas

 

7777 : Port Open

9014 : Port Closed

8245 : Port Closed

2106 : Port Open

3306 : Port Open

53 : Port Closed

80 : Port Closed

 

 

Imagem das portas liberadas no modem

 

imagemny5.jpg

Hollowization: For what the reason we don't have a monster inside us?

hollowization.jpg

Link para o comentário
Compartilhar em outros sites

cara acho que o problema não sao as portas e sim pq vc ta botando o loginhost: 127.0.0.1

 

tente colocar assim:

 

loginserver.properties

# Bind ip of the loginserver, use 0.0.0.0 to bind on all available IPs

LoginServerHostname=0.0.0.0

LoginServerPort=2106

GMMinLevel=100

 

# The port, ip on which login will listen for GameServers

LoginHostname=20.1.2.11 << seu endereço ip da rede.

LoginPort=9014

 

# If set to true any GameServer can register on your login's free slots

AcceptNewGameServer = False

 

# If false, the licence (after the login) will not be shown

ShowLicence = False

 

# Database info

Driver=com.mysql.jdbc.Driver

#Driver=org.hsqldb.jdbcDriver

#Driver=com.microsoft.sqlserver.jdbc.SQLServerDriver

URL=jdbc:mysql://localhost/l2jdb

#URL=jdbc:hsqldb:hsql://localhost/l2jdb

#URL=jdbc:sqlserver://localhost/database=l2jdb/user=sa/password=

Login=root

Password=

 

# Useable values: "True" - "False", use this option to choose whether accounts will be created

# automatically or not.

AutoCreateAccounts=True

 

server.properties

# Bind ip of the gameserver, use 0.0.0.0 to bind on all available IPs

GameserverHostname = 0.0.0.0

GameserverPort = 7777

 

# This is transmitted to the clients connecting from an external network, so it has to be a public IP or resolvable hostname

ExternalHostname = exotico.servegame.com

# This is transmitted to the client from the same network, so it has to be a local IP or resolvable hostname

InternalHostname = 20.1.2.11

# Note: You can define server hostname for each network in subnets.properties

 

# The Loginserver host and port

LoginPort = 9014

LoginHost = 20.1.2.11 << seu endereço ip da rede.

 

# This is the server id that the gameserver will request (i.e. 1 is Bartz)

RequestServerID = 1

# If set to true, the login will give an other ID to the server if the requested ID is allready reserved

AcceptAlternateID = True

 

# Database info

Driver = com.mysql.jdbc.Driver

# Driver = org.hsqldb.jdbcDriver

# Driver = com.microsoft.sqlserver.jdbc.SQLServerDriver

URL = jdbc:mysql://localhost/l2jdb

# URL = jdbc:hsqldb:hsql://localhost/l2jdb

# URL = jdbc:sqlserver://localhost/database=l2jdb/user=sa/password=

# Database user info (using root user is not recommended)

Login = root

Password =

MaximumDbConnections = 50

 

OBS: vc tem que liberar esse ip 20.1.2.11 no DMZ host no seu modem.

 

pra vc se conectar coloca 20.1.2.11 no l2.ini e para as pessoas da rede tbm.

 

para as pessoas que não estão na lan vc coloca exotico.servegame.com

3239sc1.jpg

887yk7.gif

1661ix3.jpg

membrol2jbrasilom7.jpg

Link para o comentário
Compartilhar em outros sites

Continua na mesma, a galera da lan não entra, chega na tela de escolher servidor, aparece "Bartz Light 229"

e nao passa dai, pode clicar 5000x no Confirm e não passa...

 

não sei mesmo o que é, só espero uma alma caridosa ai

Hollowization: For what the reason we don't have a monster inside us?

hollowization.jpg

Link para o comentário
Compartilhar em outros sites

  • L2JBr ADM

Lógico que é por causa dessa porta...

 

com ela fechada o loginserver não transfere os dados do cliente pra o gameserver e solicitar as informações dos chars que aparecem depois do "Bartz"

EJoOSOj.gif

Sua pergunta foi respondida? Certifique-se de marcar a resposta como a solução aceita.
Se existe mais de uma resposta, utilize o "vote up" para destacá-la.
Se você achar uma resposta útil, diga obrigado clicando no botão "Gostei".

Link para o comentário
Compartilhar em outros sites

ta... mas porque nao funciona?

se eu la liberei no modem...

 

 

Firewall desligado...

 

(Lembrando que é pra galera da mesma lan que não consegue entrar, não tenho certeza sobre lan externa...

Hollowization: For what the reason we don't have a monster inside us?

hollowization.jpg

Link para o comentário
Compartilhar em outros sites

OBS: vc tem que liberar esse ip 20.1.2.11 no DMZ host no seu modem.

 

cara tenta fazer desse jeito pra ver se dar certo. vai la no modem e procura por DMZ host.

 

la tu coloca o teu ip 20.1.2.11 e se não me engano vai ter três opções la marca pra deixar essa configuração permanente, salva e reinicia o modem.

 

testa ai e posta se deu certo ou não.

3239sc1.jpg

887yk7.gif

1661ix3.jpg

membrol2jbrasilom7.jpg

Link para o comentário
Compartilhar em outros sites

É obrigado a reiniciar?

pq eu fiz isso sem reiniciar e nao deu em nada...

agora eu n posso reiniciar pq tem gente usando os outros pcs (lan house)

mais tarde eu reinicio

Hollowization: For what the reason we don't have a monster inside us?

hollowization.jpg

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • 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.