Ir para conteúdo
  • Cadastre-se

[Tutorial] Criando Servidor de Lineage 2


Kelvin
Message added by Grundor

Atenção, esse tópico está desatualizado, use https://curso.l2jbrasil.com para um tutorial mais atualizado sobre como criar seu servidor de lineage 2.

Posts recomendados


descupa ée até Vergonha perguntar isso mais...

eu crei ai tudo ficou tudo 100% mas como que faz pra logar no server? :S

L2.Exe L2.Ine ???

 

pelo l2.exe da system .

 

ixi quero sabe qual e a velociade minima da net para bri um serve??

 

 

depende c for pra pokinho play acima de 1 mb

account_tiny.gif

svn | timeline

activeMember.sendMessage("Quase tudo é possível quando se tem dedicação e habilidade. Grandes trabalhos são realizados não pela força, mas pela perseverança")

Link para o comentário
Compartilhar em outros sites

pra falar a verdade... já vi server rodando com via rádio simétrica de 128k muito bem obrigado.. velocidade nem sempre é tudo, tem que ver o percentual de perda de dados (normalmente é zero, mas varia, eu ja cheguei a ter 25% com a cabo mais, pode provocar disconnects)... tem que ver o ping, pois as vezes mesmo dentro do brasil tem servers com ping alto demais.

 

é isso so da pra saber testando =p

 

Boa Tarde !

Primeiramente gostaria de agradecer a toda equipe do forum , ótimos posts , tutoriais , tudo de bom ^^

Kelvin ou outro membro que possa me ajudar, da um help ai ;D

Já montei server Interlude em Window's XP , agora instalaei o Windows 7 no pc e não estou conseguindo rodar o server , fiz todos os passos do tutorial , ( só não instalei o No-Ip , pq vou mecher só aqui não vo botar on), meu erro é o seguinte , quando vou abrir o Start Login Server , dá o seguinte erro (Alguma coisa sobre JAVA) :

 

errojava.jpg

 

Ae galera sou muito noob ainda em configuração de servers de L2 , espero que alguem me Ajude Por favor , espero ter postado na área certa ,desculpa pela noobisse ;x .

Desde já Grato

 

é o seguinte... bottao direito no startLoginServer.bat ou startGameServer.bat e mexa no parametro PATH para indicar sua pasta do java... se o paramerto nao extistir é simples...

 

crie uma linha assim logo no inicio

PATH=C:\Arquivos de Programas\Java\....<resto do endereço até a pasta bin dentro do jdk>

 

Boa Sorte cara!

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

Kelvin, parabens pelo excelente tutorial

Mas estou com um problema.

Mesmo após fazer isso que está no tuto o server só aparece "down" e nao tem como logar

eu executo o startloginserver.bat mas para de rodar em Selector Started, nao chega em enternal e external ip

e no startgameserver.bat nem chega em "selector starter", para em

 

at java.util.timerthread.main(unknow Source)

at java.util.timerthread.run(unknow Source)

 

meu email é [email protected]

Se puder me ajudar eu agradeço muito ^^

obrigado pela atençao

Link para o comentário
Compartilhar em outros sites

AEEEE EU TO COM O MESMO PROBLEMA DO RAPAZ AI Q PONHO SS DE QUNADO LOGA.... JA USEI O GAME GUARD MAIS NUM DEU TBM...

VO SEGUI SUA DICA TENTA BAIXA OUTRA PASTA EM....

SE DER EU GOSTARIA DE FAZER UMA PERGUNTA... PARA VC KELVIN... (DESCULPE SE EU FALAR ALGUMA COISA ERRADA) MAIS E FACIL CRIAR UM VIDEO TUTORIAL ?

 

SE NAO FOR... ESPERO Q ACEITE MINHA DICA...

 

CRIE UMA SESSÃO DE VIDEOS AULAS PARA OS SERVIDORES, TIPO 1 HELLBOUND 1 GRACIA 1 INTERLUDE ETC..

 

AGRADEÇO E OS OUTROS TBM IRÃO AGRADECER..

 

BOM TRABALHO ABRAZ TU E NOTA 10 MUITO ESPERTO PARABENS PRA VC E PRO THIAGO...

Link para o comentário
Compartilhar em outros sites

Eae Galeraa...

Olha...Eu Abro o Navicat, faço tudo como diz la o tutorial.

Quando tento Abrir a conecção, para ir em "New Database", aparece o Seguinte erro

 

 

http://img502.imageshack.us/img502/3326/erroj.jpg

 

Alguem poderia me Ajudar? Agradeço desde Já! :D

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

Galeera eu tow com 1 problema aki eu fiz tudo ceertinho , mais quando eu vou clicar nessas parte akii pra ligar o server olha oq aparece ...

 

Problema nessa partee.

 

 

-Agora precisaremos rodar o "startloginserver.bat" (pasta login) e "startgameserver.bat" (pasta gameserver). Lembre seu servidor esta em modo de autocriação de conta, você precisarar ativa o arquivo "startaccountmanager.bat" desta vez.

 

 

Aii as foto

\/

 

error1e.png

 

 

Alguem mim ajuuda pelo amour de Deus (y'

 

Muiito obriigado :D

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

Alguem poderia me ajduar por favor, o serve q to tentando criar eh Gracia Final e ta dand oalgum erro de anormalidade no loginserve, gostaria q alguem desse uma olhada nesses ips ai pra ver se tem alguam cosia errada! Eh russo

Se alguem pdoer postar a confing de gracia final do login e game sever ! eu agradeço!

 

Opa To com problema na hr do loginserver, da algum tipo de erro de anormalidade!

da uma olhada ai nas configuraçoes dos IPS plz, e alguem me diz se tem algo errado por favor.

 

LONGINSERVE

 

# Ïî óìîë÷àíèþ: 127.0.0.1

ExternalHostname = l2bruninho.no-ip.org

 

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

 

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

# Ïîäêëþ÷åíèå âíóòðè ñåòè. Äëÿ òåõ ëþäåé êîòîðûå èãðàþò ñ âàìè â îäíîé ñåòè.

# Èëè 127.0.0.1 åñëè õîòèòå èãðàòü îäèí (òåñòèðîâàòü ñåðâåð).

# Ïî óìîë÷àíèþ: 127.0.0.1

InternalHostname = 127.0.0.1

 

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

 

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

# Åñëè ó âàñ åñòü ðîóòåð, êîòîðûé èñïîëüçóåò ëîêàëüíûé IP äëÿ Port Forwarding, òî ñòåðèòå # ïåðåä RouterHostname,

# è âïèøèòå òóäà ñâîé ëîêàëüíûé IP åñëè õîòèòå, ÷òîá ëþäè íå èç âàøåé ñåòè ìîãëè ïîäêëþ÷èòñÿ ê âàøåìó ñåðâåðó.

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

# RouterHostname =l2bruninho.no-ip.org

 

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

# Ïðèâÿçêà IP ê LoginServer, èñïîëüçóéòå * ÷òîáû ñâÿçàòü âñå äîñòóïíûå IP-àäðåñà. (Íå ìåíÿéòå ïàðàìåòð *).

# Ïî óìîë÷àíèþ: *

LoginServerHostname = 0.0.0.0

 

# Ïîðò ëîãèí ñåðâåðà

# Ïî óìîë÷àíèþ: 2106

LoginServerPort = 2106

 

# Àäðåñ, ê êîòîðîìó áóäåò ïîäêëþ÷àòñÿ Login äëÿ GameServers, èñïîëüçóéòå * ÷òîáû ñâÿçàòü âñå äîñòóïíûå IP-àäðåñà (Íå ìåíÿéòå ïàðàìåòð *).

# Ïî óìîë÷àíèþ: *

LoginHostname = 192.168.1.65

 

# Îñòàâüòå ýòîò ïîðò ïî óìîë÷àíèþ.

# Ïî óìîë÷àíèþ: 9014

LoginPort = 9014

 

 

 

GAMESERVER

 

# Ïî óìîë÷àíèþ: *

ExternalHostname = l2bruninho.no-ip.org

 

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

# Ïîäêëþ÷åíèå âíóòðè ñåòè. Òîåñòü äëÿ òåõ ëþäåé êîòîðûå íàõîäÿòñÿ ñ âàìè â îäíîé ñåòè.

# Èëè 127.0.0.1 åñëè õîòèòå èãðàòü îäèí (òåñòèðîâàòü ñåðâåð).

# Ïî óìîë÷àíèþ: *

InternalHostname = 127.0.0.1

 

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

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

# Íå ìåíÿéòå ýòîò ïàðàìåòð.

# Ïî óìîë÷àíèþ: 127.0.0.1

LoginHost = 192.168.1.65

 

# Ïî óìîë÷àíèþ: 9014

LoginPort = 9014

 

# Ïî óìîë÷àíèþ: *

GameserverHostname = 0.0.0.0

 

# Ïî óìîë÷àíèþ: 7777

GameserverPort = 7777

 

 

 

Se alguem poder ajudar eu agradeço! essa rev nao eh sua kevin + poder me ajduar eu agradeço muito!

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.