Instalação do Ragnarok Online Server no Ubuntu 14.04 x64

Neste artigo, vamos configurar um servidor online Ragnarok no Ubuntu 14.04 x64. Você pode fazer login como root ou como um usuário com privilégios de superusuário. É mais seguro configurá-lo como um usuário não root com sudo. Neste tutorial, vamos usar os arquivos do servidor rAthena.

Se você estiver usando o Windows e tiver o Ubuntu Server (VPS ou Dedicado), precisará dos seguintes programas.

  • FileZilla
  • PuTTY
  • Editor de texto (recomendado Sublime ou Notepad ++)

Exigências

  • apache2 - Se você planeja usar o phpMyAdmin para acesso remoto ao mysql e configurar seu site.
  • php5 - Para web e phpMyAdmin.
  • phpmyadmin - Acesso remoto ao MySQL usando um navegador da web.
  • mysql-server - nosso banco de dados para o servidor do jogo.
  • cliente mysql
  • git
  • faço
  • gcc
  • libmysqlclient-dev
  • zlib1g-dev
  • libpcre3-dev - Opcional, para suporte ao PCRE.
  • libssl-dev - Necessário, para compilar com o MySQL 5.5.

Você pode consultar este guia sobre a instalação do Apache, MySQL e PHP.


Instalando Pacotes Necessários

Execute esses comandos no SSH.

  • Usuário raiz:

    apt-get install php5 phpmyadmin mysql-server mysql-client git make gcc libmysqlclient-dev zlib1g-dev libpcre3-dev
    
  • Não raiz com privilégios sudo:

    sudo apt-get install php5 phpmyadmin mysql-server mysql-client git make gcc libmysqlclient-dev zlib1g-dev libpcre3-dev
    

Depois de instalar com êxito os requisitos do servidor, vamos continuar instalando e configurando os arquivos do servidor.


Fazendo Download dos Arquivos do Servidor

Agora, obteremos as atualizações mais recentes dos arquivos do servidor rAthena. Estes são os arquivos necessários para executar um servidor Ragnarok Online. Existem outros arquivos de servidor que podem ser usados, como Hercules e eAthena, mas neste tutorial, estamos usando o rAthena. Execute o comando abaixo para baixar os arquivos.

    git clone https://github.com/rathena/rathena.git ~/rAthena

Isso colocará todos os arquivos dentro rAthenado seu diretório atual no terminal.

Para atualizar os arquivos do servidor para a revisão mais recente, execute este comando.

    cd rAthena
    git pull

Configuração do MySQL

Nesta parte, estamos configurando o MySQL para o banco de dados do nosso servidor. Primeiro, verifique se o seu servidor MySQL está em execução.

    service mysql status

Se não estiver em execução, insira este comando.

    service mysqld start

Após executar os comandos acima, abra o console do MySQL.

    mysql -u root -p

Você será solicitado a fornecer sua senha root. Após o login, digite os seguintes comandos para criar o banco de dados para o nosso servidor.

CREATE DATABASE (nome do seu banco de dados ragnarok); - Vamos chamá-lo de "ragnarok".

    mysql> CREATE DATABASE ragnarok;

Em seguida, crie um novo usuário para o Ragnarok DB e o log DB.

CONCEDE TUDO NO ragnarok. * PARA yourdatabaseusername @ localhost IDENTIFICADO POR "yourdesiredpassword"; - Criaremos um novo usuário chamado admin com uma senha 123456 .

    mysql> GRANT ALL ON ragnarok.* TO admin@localhost IDENTIFIED BY "123456";

Você pode substituir o host local por um endereço IP, se desejar que o usuário possa acessar seu servidor MySQL remotamente.

Crie um banco de dados de log para os logs do jogo Ragnarok.

CREATE DATABASE (seu nome do banco de dados de log) - Vamos chamá-lo de "log".

    mysql> CREATE DATABASE log;

Defina permissões para o usuário que criamos anteriormente chamado admin .

    mysql> GRANT ALL ON log.* TO admin@localhost;

Restaure as tabelas necessárias no seu Ragnarok e no banco de dados de log. Atualize sua senha depois -p.

mysql> quit;

mysql -u admin -p123456 ragnarok  < /path/to/your/rathena folder/sql-files/main.sql
mysql -u admin -p123456 log < /path/to/your/rathena folder/sql-files/logs.sql

Criando uma conta de jogo

Estamos usando o phpMyAdmin que instalamos anteriormente para acessar o banco de dados. Acesse o phpMyAdmin através do seu navegador.

Selecione o ragnarokbanco de dados e escolha a logintabela. Podemos ver que há um registro nessa tabela. Não exclua / modifique ainda. É usado pelo servidor. Para criar uma conta de jogo, clique na guia SQL enquanto estiver na loginmesa para abrir o editor de consultas. Execute a seguinte consulta.

    INSERT INTO `ragnarok`.`login` (`account_id`, `userid`, `user_pass`, `sex`, `email`, `group_id`, `state`, `unban_time`, `expiration_time`, `logincount`, `lastlogin`, `last_ip`, `birthdate`, `character_slots`, `pincode`, `pincode_change`, `vip_time`, `old_group`) VALUES ('2000000', 'admin', 'password123', 'M', '[email protected]', '99', '0', '0', '0', '0', '0000-00-00 00:00:00', '', '0000-00-00', '9', '', '0', '0', '0');

Inserimos um novo usuário na tabela de login com as seguintes informações.

  • account_id = 2000000 (sempre inicie com 2000000, depois 2000001 ...)
  • userid = admin (seu nome de usuário no jogo)
  • user_pass = password123 (a senha da sua conta)
  • sexo = M (M ou F, não use S porque é apenas para o servidor)
  • email = [email protected] (o email da sua conta, usado para excluir slots de caracteres no jogo)
  • group_id = 99 (consulte /rathena/conf/groups.confe verifique as linhas de identificação. Por enquanto, 99 para fazer disso uma conta GM para uso especial de comandos no jogo).
  • character_slots = 9 (número de caracteres que podem ser criados por conta)

Deixe os outros valores como estão. Parabéns. Você criou sua conta para o jogo.


Configurando os Arquivos do Servidor

Primeiro, você deve saber o endereço IP do seu servidor. Você já deve saber disso, pois ele já foi incluído nas informações do servidor do seu Vultr VPS. Se você quiser verificá-lo, digite:

    ifconfig

Procure a parte eth0 inet addr: xxx.xxx.xxx.xxx . xxx.xxx.xxx.xxx será o endereço IP do seu servidor. Se você possui o Apache instalado, você pode acessá-lo para verificar se o servidor da web está em execução.

No FileZilla, efetue login no seu VPS com as credenciais do servidor e acesse a /rAthena/confpasta.

Edite char_athena.confe map_athena.confcom o seu editor de texto preferido.

Editar a char_athena.confpartir de:

    // Login Server IP
    // The character server connects to the login server using this IP address.
    // NOTE: This is useful when you are running behind a firewall or are on
    // a machine with multiple interfaces.
    //login_ip: 127.0.0.1

    // The character server listens on the interface with this IP address.
    // NOTE: This allows you to run multiple servers on multiple interfaces
    // while using the same ports for each server.
    //bind_ip: 127.0.0.1

    // Login Server Port
    login_port: 6900

    // Character Server IP
    // The IP address which clients will use to connect.
    // Set this to what your server's public IP address is.
    //char_ip: 127.0.0.1       

Para:

    // Login Server IP
    // The character server connects to the login server using this IP address.
    // NOTE: This is useful when you are running behind a firewall or are on
    // a machine with multiple interfaces.
    login_ip: xxx.xxx.xxx.xxx

    // The character server listens on the interface with this IP address.
    // NOTE: This allows you to run multiple servers on multiple interfaces
    // while using the same ports for each server.
    //bind_ip: 127.0.0.1

    // Login Server Port
    login_port: 6900

    // Character Server IP
    // The IP address which clients will use to connect.
    // Set this to what your server's public IP address is.
    char_ip: xxx.xxx.xxx.xxx

Onde xxx.xxx.xxx.xxxestá o endereço IP do seu servidor.

No inter_athena.txtarquivo, faça estas alterações:

    // Global SQL settings
    // overridden by local settings when the hostname is defined there
    // (currently only the login-server reads/obeys these settings)

    // MySQL Login server
    login_server_ip: 127.0.0.1 // <- either 127.0.0.1 or your server's ip, we'll use 127.0.0.1 since it listens to own mySQL server, change it to IP if your mySQL Server is in different server.
    login_server_port: 3306
    login_server_id: ragnarok // <- change this to your mySQL User your created earlier
    login_server_pw: ragnarok // <- its password 
    login_server_db: ragnarok // <- change this if your ragnarok db you set is different
    login_codepage:
    login_case_sensitive: no

    ipban_db_ip: 127.0.0.1 // <- either 127.0.0.1 or your server's ip, we'll use 127.0.0.1 since it listens to own mySQL server, change it to IP if your mySQL Server is in different server.
    ipban_db_port: 3306
    ipban_db_id: ragnarok // <- change this to your mySQL User your created earlier
    ipban_db_pw: ragnarok // <- its password 
    ipban_db_db: ragnarok // <- change this if your ragnarok db you set is different
    ipban_codepage:

    // MySQL Character server
    char_server_ip: 127.0.0.1 // <- either 127.0.0.1 or your server's ip, we'll use 127.0.0.1 since it listens to own mySQL server, change it to IP if your mySQL Server is in different server.
    char_server_port: 3306
    char_server_id: ragnarok // <- change this to your mySQL User your created earlier
    char_server_pw: ragnarok // <- its password 
    char_server_db: ragnarok // <- change this if your ragnarok db you set is different

    // MySQL Map Server
    map_server_ip: 127.0.0.1 // <- either 127.0.0.1 or your server's ip, we'll use 127.0.0.1 since it listens to own mySQL server, change it to IP if your mySQL Server is in different server.
    map_server_port: 3306
    map_server_id: ragnarok // <- change this to your mySQL User your created earlier
    map_server_pw: ragnarok // <- its password 
    map_server_db: ragnarok // <- change this if your ragnarok db you set is different

    // MySQL Log Database
    log_db_ip: 127.0.0.1 // <- either 127.0.0.1 or your server's ip, we'll use 127.0.0.1 since it listens to own mySQL server, change it to IP if your mySQL Server is in different server.
    log_db_port: 3306
    log_db_id: ragnarok // <- change this to your mySQL User your created earlier
    log_db_pw: ragnarok // <- its password 
    log_db_db: log // <- change this if your log db you set is different
    log_codepage:
    log_login_db: loginlog

No map_athena.txtarquivo, faça estas alterações:

    // Character Server IP
    // The map server connects to the character server using this IP address.
    // NOTE: This is useful when you are running behind a firewall or are on
    // a machine with multiple interfaces.
    char_ip: x.x.x.x


    // The map server listens on the interface with this IP address.
    // NOTE: This allows you to run multiple servers on multiple interfaces
    // while using the same ports for each server.
    //bind_ip: 127.0.0.1

    // Character Server Port
    char_port: 6121


    // Map Server IP
    // The IP address which clients will use to connect.
    // Set this to what your server's public IP address is.
    map_ip: x.x.x.x

    // Map Server Port
    map_port: 5121

Onde xxx.xxx.xxx.xxxestá o endereço IP do seu servidor.

Abra subnet_athena.txte defina o endereço IP.

    subnet: 255.0.0.0:x.x.x.x:x.x.x.x

E terminamos de configurar o servidor.


Compilando o servidor rAthena

Agora, é hora de compilar o servidor! Nesta parte, você precisa saber qual versão do cliente Ragnarok Online você usará para se conectar ao servidor. Para configuração do cliente, visite esta página .

Depois de decidir qual cliente usar, vamos editar alguns arquivos. Digamos que optamos por usar o 08072013cliente, pois esse é o cliente de renovação estável.

Execute este comando no terminal:

    ./configure --enable-packetver=YYYYMMDD

Substitua YYYYMMDDpela data do cliente (reformatada).

    ./configure --enable-packetver=20130807

O script configure irá executar os testes necessários e gerar makefiles para o nosso servidor.

Depois disso, compile o código fonte digitando estes comandos:

    make server
    chmod a+x login-server && chmod a+x char-server && chmod a+x map-server

... e espere terminar. Se você fizer modificações nos arquivos dentro da /rAthena/srcpasta, será necessário recompilá-lo.

    make clean
    make server

Configurando a versão do pacote para conexões do cliente

No FileZilla, aponte para a /rAthena/dbpasta e edite packet_db.txt.

Encontre esta linha e edite:

    //
    //packet_db_ver: 46
    packet_db_ver: default
    packet_keys_use: default

Como estamos usando o 2013-08-07Ragexecliente, encontre o cliente especificado abaixo e procure por packet_ver e packet_keys .

    //2013-08-07Ragexe
    packet_ver: 45
    packet_keys: 0x7E241DE0,0x5E805580,0x3D807D80 // [Shakto] 

Substitua o valor padrão de packet_db_vere packet_keys_usenos valores especificados do cliente.

    //
    //packet_db_ver: 46
    packet_db_ver: 45
    packet_keys_use: 0x7E241DE0,0x5E805580,0x3D807D80

E salve. Isto é para especificar qual cliente deve ser usado pelos jogadores. Não queremos que eles possam usar a versão de sua escolha.


Iniciando o servidor

Após compilar os arquivos do servidor, use estes comandos para inicializar o servidor.

Para iniciar:

    ./athena-start start

Parar:

    ./athena-start stop

Reiniciar:

    ./athena-start restart

Se você encontrou um erro como este:

    -bash: ./athena-start: /bin/sh^M: bad interpreter

... então você precisa instalar o dos2unix para converter o script.

    apt-get install dos2unix
    dos2unix athena-start 
    chmod a+x athena-start

Após executar esses comandos, inicie o servidor novamente.

Agora que terminamos a configuração do servidor, basta definir o seu cliente Ragnarok para apontar para o seu servidor VPS. Divirta-se jogando em seu novo servidor!


Referências



Leave a Comment

Instalando o McMyAdmin no Ubuntu 14.10

Instalando o McMyAdmin no Ubuntu 14.10

McMyAdmin é um painel de controle do servidor Minecraft usado para administrar seu servidor. Embora o McMyAdmin seja gratuito, há várias edições, algumas das quais são pai

Como configurar o servidor Left 4 Dead 2 no Ubuntu

Como configurar o servidor Left 4 Dead 2 no Ubuntu

Neste tutorial, você aprenderá como configurar um servidor Left 4 Dead 2 no Ubuntu. Este guia foi testado no servidor Ubuntu 15.10. Atualização de pré-requisitos

Como instalar um servidor Just Cause 2 (JC2-MP) no CentOS 7

Como instalar um servidor Just Cause 2 (JC2-MP) no CentOS 7

Neste tutorial, aprenda como configurar um servidor multiplayer Just Cause 2. Pré-requisitos Verifique se o sistema está totalmente atualizado antes de começarmos

Como instalar o servidor Starbound no CentOS 7

Como instalar o servidor Starbound no CentOS 7

Usando um sistema diferente? Neste tutorial, explicarei como configurar um servidor Starbound no CentOS 7. Pré-requisitos Você precisa ser o proprietário deste jogo

Como instalar o Unturned no Linux

Como instalar o Unturned no Linux

Usando um sistema diferente? Introdução Neste guia, você aprenderá como configurar e instalar um servidor Unturned no Linux. Unturned é uma sobrevivência popular

Instalando um servidor Reflex no Windows

Instalando um servidor Reflex no Windows

Introdução O Reflex é um competitivo FPS de Arena da Turbo Pixel Studios. Este tutorial mostrará como configurar seu próprio servidor Reflex no

Como instalar o PufferPanel (painel de controle gratuito do Minecraft) no CentOS 7

Como instalar o PufferPanel (painel de controle gratuito do Minecraft) no CentOS 7

Introdução Neste tutorial, também esteja instalando o PufferPanel em nosso Vultr VPS. O PufferPanel é um painel de controle de código aberto e gratuito para gerenciar você

Como instalar o servidor Counter-Strike 1.6 no Linux

Como instalar o servidor Counter-Strike 1.6 no Linux

Este guia mostra como configurar um servidor Counter-Strike: 1.6 no Linux. As etapas aqui funcionarão para a maioria das distribuições Linux compatíveis com o SteamCMD. Primeiro

Como instalar o Unturned 2.2.5 no CentOS 6

Como instalar o Unturned 2.2.5 no CentOS 6

Neste guia, você aprenderá como configurar um servidor Unturned 2.2.5 em um Vultr VPS executando o CentOS 6. Nota: Esta é uma versão editada do Unturned que não

Configurar um servidor Team Fortress 2 no Arch Linux

Configurar um servidor Team Fortress 2 no Arch Linux

Este tutorial explica como configurar um servidor Team Fortress 2 no Arch Linux. Presumo que você esteja logado com uma conta de usuário não raiz que tenha acesso ao sudo

Como configurar um servidor Tekkit Classic no Ubuntu 16.10

Como configurar um servidor Tekkit Classic no Ubuntu 16.10

Usando um sistema diferente? O que é o Tekkit Classic? Tekkit Classic é um modpack para o jogo que todo mundo conhece e ama; Minecraft. Ele contém algumas das ver

Configurar um servidor Minecraft PE no CentOS 6

Configurar um servidor Minecraft PE no CentOS 6

Este artigo ensinará como configurar um servidor Minecraft Pocket Edition no CentOS 6. A configuração de um servidor Minecraft PE é bastante simples. Primeiro, instale o

Como instalar o servidor Teamspeak 3 no Ubuntu 16.04 de 64 bits

Como instalar o servidor Teamspeak 3 no Ubuntu 16.04 de 64 bits

Usando um sistema diferente? Você está cansado de usar o Discord / Skype? Cansado de não ter controle total do seu servidor? Ou talvez seja por causa da falta de

Como instalar o ARK Survival Evolved (ArkSE) no CentOS 7

Como instalar o ARK Survival Evolved (ArkSE) no CentOS 7

Neste tutorial, aprenda bem como configurar um servidor ARK Survival no CentOS 7. Pré-requisitos O ARK requer uma grande quantidade de memória. Eu recomendo usar um V

Configurando Counter Strike: Ofensiva Global no Debian

Configurando Counter Strike: Ofensiva Global no Debian

Neste guia, estaremos configurando um servidor de jogo Counter Strike: Global Offensive no Debian 7. Esses comandos foram testados no Debian 7, mas eles devem também

Como instalar Unturned 2.2.5 no Ubuntu 16.04

Como instalar Unturned 2.2.5 no Ubuntu 16.04

Usando um sistema diferente? Introdução Neste guia, você aprenderá como configurar um servidor Unturned 2.2.5 em um Vultr VPS executando o Ubuntu 16.04. Nota: Thi

Como configurar um servidor Minecraft no Ubuntu 18.04

Como configurar um servidor Minecraft no Ubuntu 18.04

Minecraft ainda é um dos jogos mais populares do mundo. Se você joga, provavelmente joga em servidores o tempo todo. Este guia tem como objetivo ensinar

Como corrigir mundos corrompidos no Minecraft

Como corrigir mundos corrompidos no Minecraft

Às vezes, os mundos no Minecraft podem ser corrompidos. Este artigo explica como corrigir mundos quebrados. Infelizmente, porém, mundos corruptos não podem ser reparados

Servidor Minecraft Bukkit no Debian Wheezy

Servidor Minecraft Bukkit no Debian Wheezy

Introdução O Bukkit é uma extensão do Minecraft que oferece alguns recursos exclusivos, além de plugins que podem melhorar significativamente sua experiência de jogo.

Como instalar o Glowstone (Minecraft) em um servidor CentOS 6

Como instalar o Glowstone (Minecraft) em um servidor CentOS 6

Usando um sistema diferente? Introdução Glowstone é indubitavelmente o servidor mais otimizado para Minecraft. O software possui baixo uso de memória e uso

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.