Jump to content

🛠️ 2. Instalação do Servidor L2 Lucera no Windows


Recommended Posts

  • L2JBr ADM

 

Este tutorial é um guia de instalação básica para qualquer ambiente de instalação Windows, recomendamos que esteja limpo sem instalações anteriores de MySQL ou java para garantir seu sucesso, portanto os requisitos mínimos para iniciar é:

  • Possui um computador, vps ou dedicado com Windows Server 2012 ou posterior ou Windows 7 Posterior. 
  • Ter baixado via SVN o seu servidor, conforme este guia.

As configurações recomendadas mínimas pelo desenvolvedor, recomendo mais para Windows, encontre alguns planos de VPS em:

https://l2jcenter.com/vps ou https://l2jcenter.com/vps-ssd

VPS Linux: 1vCore, 2GB RAM, 20GB HD. 
VPS Windows: 2vCore, 4GB RAM, 20GB HD.

 

 

ATENÇÃO: SE VOCÊ ESTA SEGUINDO ESTE GUIA COM AS REVISÕES DE AVALIAÇÃO DO TÓPICO PRINCIPAL NÃO ESQUEÇA DE ADQUIRIR UMA LICENÇA PARA SERVIDOR ONLINE, LIMITE DE 20 PLAYERS PARA AVALIAÇÃO.

 

1 - Baixe e instale o Java 8 JDK: 

Você pode baixar o JDK 8 através do Google Driver da L2JBrasil ou diretamente na oracle:
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

wPUzT5A.png

 

2 - Baixe o MySQL 8 através do Google Driver da L2JBrasil ou diretamente pelo site do MySQL: 
https://dev.mysql.com/downloads/mysql/

DFBLaMo.jpg

tW06RGf.jpg

3 - Baixe um gerenciador de banco de dados, use o que você preferir, HeidiSQL (Grátis) ou Navicat (Pago, pare de se entupir de vírus com cracks). 

https://www.navicat.com/en/
https://www.heidisql.com/download.php


Baixou tudo? Vamos iniciar a instalação.


JAVA

Abra o instalador do java e siga o next, next, next básico para instalar.

ug2nms0.png

kEdSkFy.png,

DTnbVy0.png

FQ8dAhD.png

 

MYSQL

mNPLCtA.jpg

drGa18m.jpg

Selecione a 2° opção: "USE LEGACY AUTHENTICATION METHOD" caso contrario vai da problema.

utYNPgF.png

No campo MySQL Root Password você precisa criar uma senha para seu usuário, insira uma senha que não seja a palavra root também e não esqueça!

E3RcEyn.png

Z8rZZaR.png

79CFIIo.png

 

Instalando o servidor e banco de dados.

Antes de iniciar as configurações você precisa acessar a pasta default_english que fica dentro da pasta config do game/login server e colocar dentro da pasta config. Isso porque a revisão pode ser usada em duas linguagens. 

Spoiler

 

L3giTdM.jpg

6NsbLg3.jpg

 

 

Agora vamos restaurar o banco de dados, a Lucera faz o carregamento automaticamente do banco quando você liga o servidor pela primeira vez, mas antes você precisa criar o banco de dados. Vamos usar o HeidSQL abaixo:

HGfqn4A.png

 

Em network type confirme se a opção MySQL está selecionada, na sessão user mantenha root se sua instalação do MySQL foi a padrão do guia e em password a senha que criou durante a instalação e clique em open. 

07MexKY.png,

 

Ao abrir, clique com o botão direito do mouse sobre a conexão criada, selecione a opção Create New -> Database.

af20d6c848d02b29d99b594d7afbac5a.png

 

Na sessão Collation certifique que a opção: utf8_general_ci está selecionada e clique em Ok.

13778b8c15f2fd9b9b2be071745dc205.png

* Você pode criar o banco de dados normalmente como conhece pelo navicat.

Depois disso, você deve especifica o usuário, senha, nome do banco de dados nos arquivos server.propertiers e authserver.propeties que se encontram respectivamente dentro da pasta config do Login e Gameserver. 
A instalação do banco de dados ocorre automaticamente. Você não precisa fazer nada, o servidor instalará a base sozinho ao ligar!

# Database Host
DatabaseHost = 127.0.0.1
# Database Port
DatabasePort = 3306
# Database Name
DatabaseName = lucera2
# Database User
DatabaseUser = root
# Database Password
DatabasePassword = senha que você definiu

 

IP CONFIG SERVER

Para conectar-se no mesmo PC você não precisa realizar nenhuma configuração adicional de IP.

Para conectar-se em VPS ou Dedicado inclua apenas o IP externo o que você se conecta pela área remota do windows ou acesse algum site que mostra seu IP externo como myip.com, meuip.com.br e simplesmente troque na linha ExternalHostname presente no arquivo server.properties.

 

feur5zY.png

Pronto, certifique-se que as portas 7777 e 2106 estejam abertas no seu firewall e já estará pronto para conectar.

 

IP CONFIG CLIENTE (JOGO)

Para conectar-se no mesmo PC você não precisa realizar nenhuma configuração adicional de IP apenas mantenha o valor 127.0.0.1 na linha ServerAddr=127.0.0.1 ou se estiver em um VPS ou Dedicado, coloque o mesmo IP que configurou no ExternalHostname anterior.

Spoiler

OSq7CNx.png


LIGANDO O SERVIDOR

Navege até as pastas Authserver\StartAuthServer.bat e Gameserver\StartGameServer.bat para ligar o Login e Server respectivamente.

Pronto, seu servidor L2 Lucera Interlude/Classic está 100% instalado. 

Link to comment
Share on other sites

  • Kelvin changed the title to 🛠️2. Instalação do Servidor L2 Lucera no Windows
  • Kelvin changed the title to 🛠️ 2. Instalação do Servidor L2 Lucera no Windows
  • Kelvin pinned this topic
  • 2 years later...

Bom dia kevin , na hora de estalação do mysql ambos são diferentes o que você estala a versão é 8.0.18 o que tem pra download é a versão 8.1.0 conseguir estalar o mysql porém não têm essa opção pra escolher "USE LEGACY AUTHENTICATION  METHOD" vou ter problemas futuros ? Qual problema vai ocasionar ? essa funcão é responsavel pelo oque ? 

 

Sobre o heidsql 

Na sessão Collation não têm a opção: utf8_general_ci qual outra opção colocar ? essa funcão é responsavel pelo oque ? 

 

 

 

 

Link to comment
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Join now

    Be part of the largest and oldest communities about Lineage2 in Latin America.





  • Patrocinadores

  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • Interessante esse projeto, parabéns @BAN - L2JDev
    • Boa noite alguém pode me manda os arquivos da coroa hero preta??
    • @Kelvin, mesmo efetuando o download do plugin acima, ou trazendo ele junto com a importação do kit, não trouxe os cabeçalhos e rodapés. O que poderia ser?
    • ta dando esse erro ao tentar donatar, alguem sabe como resolver? Edit: o Pagseguro e Paypal estão da mesma forma  O sistema de doação não esta funcionando.  
    • Hola, lo tienen para acis 382, esa version me anda para probar
    • BAN NÃO TOU CONSGUINDO TER ACESSO... TOU SEM O PATCH PODERIA DISPONIBILIZAR ?
    • Hola, ¿tienes un comando de voz para este código?      package net.sf.l2j.gameserver.taskmanager;   import java.util.logging.Logger; import net.sf.l2j.Config; import net.sf.l2j.commons.util.ArraysUtil; import net.sf.l2j.gameserver.enums.ZoneId; import net.sf.l2j.gameserver.model.actor.Creature; import net.sf.l2j.gameserver.model.actor.Player; import net.sf.l2j.gameserver.model.holder.IntIntHolder; import net.sf.l2j.gameserver.skills.L2Skill; import net.sf.l2j.gameserver.skills.effects.EffectTemplate; public class AutoPotionTask implements Runnable  {     protected static final Logger _log = Logger.getLogger(AutoPotionTask.class.getName());     private int itemId;     private Player player;     private static final int[] HP_POTION_SKILL_IDS = new int[]{2031, 2032, 2037};     public AutoPotionTask(int itemId, Player player)      {         this.itemId = itemId;         this.player = player;     }     @Override     public void run()      {         if (player.isInOlympiadMode())          {             player.sendMessage("You cannot that in olympiad mode.");             player.stopAutoPotion(itemId);             return;         }                  if (player.isInJail() || player.isInsideZone(ZoneId.JAIL))          {             player.sendMessage("You cannot that in Jail mode.");             return;         }         if (Config.AUTO_POTIONS_LIMITS.containsKey(itemId))          {             String type = ((String[])Config.AUTO_POTIONS_LIMITS.get(itemId))[0];             int val = Integer.parseInt(((String[])Config.AUTO_POTIONS_LIMITS.get(itemId))[1]);             switch (type)              {                 case "CP":                 {                     if (!(player.getStatus().getCp() / (double)player.getStatus().getMaxCp() * 100.0 > (double)val)) break;                     return;                 }                 case "HP":                  {                     if (!(player.getStatus().getHp() / (double)player.getStatus().getMaxHp() * 100.0 > (double)val)) break;                     return;                 }                 case "MP":                  {                     if (!(player.getStatus().getMp() / (double)player.getStatus().getMaxMp() * 100.0 > (double)val)) break;                     return;                 }             }         }         if (!player.destroyItemByItemId("auto potion use", itemId, 1, null, true))          {             player.stopAutoPotion(itemId);             player.sendMessage("Incorrect item count.");             return;         }         if (player.getInventory().getItemByItemId(itemId) == null)          {             player.stopAutoPotion(itemId);             return;         }         IntIntHolder[] skills = player.getInventory().getItemByItemId(itemId).getEtcItem().getSkills();         if (skills == null)          {             _log.info("{} doesn't have any registered skill for handler." + player.getInventory().getItemByItemId(itemId).getName());             return;         }         for (IntIntHolder skillInfo : skills)          {             EffectTemplate template;             L2Skill itemSkill;             if (skillInfo == null || (itemSkill = skillInfo.getSkill()) == null) continue;             if (!itemSkill.checkCondition((Creature)player, (Creature)player, false))              {                 return;             }             if (player.isSkillDisabled(itemSkill))             {                 return;             }             if (itemSkill.isPotion() || itemSkill.isSimultaneousCast())              {                 player.getAI().tryToCast((Creature)player, itemSkill, false, false, itemId);             }              else              {                 player.getAI().tryToCast((Creature)player, itemSkill, false, false, itemId);             }             int skillId = skillInfo.getId();             if (!ArraysUtil.contains((int[])HP_POTION_SKILL_IDS, (int)skillId) || skillId < player.getShortBuffTaskSkillId() || (template = (EffectTemplate)itemSkill.getEffectTemplates().get(0)) == null) continue;             player.shortBuffStatusUpdate(skillId, skillInfo.getValue(), template.getCounter() * template.getPeriod());         }     }     public int getItemId()      {         return itemId;     } }  
    • @Ivan Pires como está as entregas automáticas desse painel?
×
×
  • Create New...

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.