Configurer Ragnarok Online Server sur Ubuntu 14.04 x64

Dans cet article, nous allons configurer un serveur en ligne Ragnarok sur Ubuntu 14.04 x64. Vous pouvez être connecté en tant que superutilisateur ou utilisateur avec des privilèges de superutilisateur. Il est plus sûr de configurer cela en tant qu'utilisateur non root avec sudo. Dans ce tutoriel, nous allons utiliser les fichiers du serveur rAthena.

Si vous utilisez Windows et que vous avez Ubuntu Server (VPS ou dédié), vous aurez besoin des programmes suivants.

  • FileZilla
  • Mastic
  • Éditeur de texte (Sublime ou Notepad ++ recommandé)

Exigences

  • apache2 - Si vous prévoyez d'utiliser phpMyAdmin pour accéder à distance à mysql et configurer votre site Web.
  • php5 - Pour le web et phpMyAdmin.
  • phpmyadmin - Accès MySQL à distance à l'aide d'un navigateur Web.
  • mysql-server - notre base de données pour le serveur de jeu.
  • client mysql
  • git
  • faire
  • gcc
  • libmysqlclient-dev
  • zlib1g-dev
  • libpcre3-dev - Facultatif, pour la prise en charge PCRE.
  • libssl-dev - Obligatoire pour la compilation avec MySQL 5.5.

Vous pouvez vous référer à ce guide concernant l'installation d'Apache, MySQL et PHP.


Installation des packages requis

Exécutez ces commandes sur SSH.

  • Utilisateur root:

    apt-get install php5 phpmyadmin mysql-server mysql-client git make gcc libmysqlclient-dev zlib1g-dev libpcre3-dev
    
  • Non root avec les privilèges sudo:

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

Après avoir correctement installé la configuration requise pour le serveur, procédons à l'installation et à la configuration des fichiers du serveur.


Téléchargement des fichiers du serveur

Maintenant, nous allons obtenir les dernières mises à jour des fichiers du serveur rAthena. Ce sont les fichiers nécessaires à l'exécution d'un serveur Ragnarok Online. Il existe d'autres fichiers serveur qui peuvent être utilisés, comme Hercules et eAthena, mais dans ce tutoriel, nous utilisons rAthena. Exécutez la commande ci-dessous pour télécharger les fichiers.

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

Cela placera tous les fichiers à l'intérieur rAthenade votre répertoire actuel dans le terminal.

Pour mettre à jour les fichiers du serveur vers la dernière révision, exécutez cette commande.

    cd rAthena
    git pull

Configuration de MySQL

Dans cette partie, nous configurons MySQL pour la base de données de notre serveur. Tout d'abord, vérifiez si votre serveur MySQL fonctionne.

    service mysql status

Si ce n'est pas en cours d'exécution, entrez cette commande.

    service mysqld start

Après avoir exécuté les commandes ci-dessus, ouvrez la console MySQL.

    mysql -u root -p

On vous demandera votre mot de passe root. Après vous être connecté, tapez les commandes suivantes pour créer la base de données pour notre serveur.

CREATE DATABASE (votre nom de base de données ragnarok); - Nous l'appellerons "ragnarok".

    mysql> CREATE DATABASE ragnarok;

Ensuite, créez un nouvel utilisateur pour la base de données Ragnarok et la base de données de journal.

DONNER TOUT SUR ragnarok. * À votrenomdutilisateurabase @ localhost IDENTIFIÉ PAR "votremotdepasse"; - Nous allons créer un nouvel utilisateur appelé admin avec un mot de passe 123456 .

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

Vous pouvez remplacer localhost par une adresse IP si vous souhaitez que l'utilisateur puisse accéder à distance à votre serveur MySQL.

Créez une base de données de journaux pour les journaux de jeu Ragnarok.

CRÉER UNE BASE DE DONNÉES (nom de votre base de données de journaux) - Nous l'appellerons "journal".

    mysql> CREATE DATABASE log;

Définissez les autorisations pour l'utilisateur que nous avons créé précédemment, nommé admin .

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

Restaurez les tables requises dans votre base de données Ragnarok et journal. Mettez à jour votre mot de passe après en -pconséquence.

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

Créer un compte de jeu

Nous utilisons phpMyAdmin que nous avons installé précédemment pour accéder à la base de données. Accédez à phpMyAdmin via votre navigateur Web.

Sélectionnez la ragnarokbase de données et choisissez la logintable. Nous pouvons voir qu'il y a un enregistrement dans ce tableau. Ne le supprimez / modifiez pas encore. Il est utilisé par le serveur. Pour créer un compte de jeu, cliquez sur l'onglet SQL sur la logintable pour ouvrir l'éditeur de requête. Exécutez la requête suivante.

    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');

Nous avons inséré un nouvel utilisateur dans la table de connexion avec les informations suivantes.

  • account_id = 2000000 (Commencez toujours par 2000000, puis 2000001 ...)
  • userid = admin (votre nom d'utilisateur dans le jeu)
  • user_pass = password123 (Le mot de passe de votre compte)
  • sex = M (M ou F, n'utilisez pas S car c'est juste pour le serveur)
  • email = [email protected] (e-mail de votre compte, utilisé pour supprimer les emplacements de personnage dans le jeu)
  • group_id = 99 (reportez /rathena/conf/groups.conf-vous aux lignes d'identification et vérifiez-les. Pour l'instant, 99 pour en faire un compte GM pour une utilisation spéciale des commandes dans le jeu.)
  • character_slots = 9 (Nombre de caractères pouvant être créés par compte)

Laissez les autres valeurs telles quelles. Toutes nos félicitations. Vous avez réussi à créer votre compte pour le jeu.


Configuration des fichiers du serveur

Tout d'abord, vous devez connaître l'adresse IP de votre serveur. Vous le savez peut-être déjà, car il était déjà inclus dans les informations de serveur de votre Vultr VPS. Si vous souhaitez le vérifier, tapez:

    ifconfig

Recherchez la partie eth0 inet addr: xxx.xxx.xxx.xxx . xxx.xxx.xxx.xxx sera l'adresse IP de votre serveur. Si vous avez installé Apache, vous pouvez y accéder pour vérifier si votre serveur Web fonctionne.

Dans FileZilla, connectez-vous à votre VPS avec les informations d'identification de votre serveur et accédez au /rAthena/confdossier.

Modifiez char_athena.confet map_athena.confavec votre éditeur de texte préféré.

Modifier à 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       

À:

    // 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

xxx.xxx.xxx.xxxest l'adresse IP de votre serveur.

Dans le inter_athena.txtfichier, apportez ces modifications:

    // 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

Dans le map_athena.txtfichier, apportez ces modifications:

    // 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

xxx.xxx.xxx.xxxest l'adresse IP de votre serveur.

Ouvrez subnet_athena.txtet définissez l'adresse IP.

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

Et nous avons fini de configurer le serveur.


Compiler le serveur rAthena

Maintenant, il est temps de compiler le serveur! Dans cette partie, vous devez savoir quelle version du client Ragnarok Online vous utiliserez pour vous connecter au serveur. Pour la configuration du client, visitez cette page .

Après avoir décidé quel client utiliser, modifions certains fichiers. Disons simplement que nous avons choisi d'utiliser le 08072013client car il s'agit du client de renouvellement stable.

Exécutez cette commande sur le terminal:

    ./configure --enable-packetver=YYYYMMDD

Remplacez YYYYMMDDpar la date du client (reformatée).

    ./configure --enable-packetver=20130807

Le script configure effectuera les tests nécessaires et générera des makefiles pour notre serveur.

Après cela, compilez le code source en entrant ces commandes:

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

... et attendez qu'il se termine. Si vous apportez des modifications aux fichiers à l'intérieur du /rAthena/srcdossier, vous devrez le recompiler.

    make clean
    make server

Configuration de la version de paquet pour les connexions client

Dans FileZilla, pointez sur le /rAthena/dbdossier et modifiez packet_db.txt.

Recherchez cette ligne et modifiez:

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

Puisque nous utilisons le 2013-08-07Ragexeclient, recherchez le client spécifié ci-dessous et recherchez ses packet_ver et packet_keys .

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

Remplacez la valeur par défaut de packet_db_veret packet_keys_usedans les valeurs client spécifiées.

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

Et enregistrer. C'est pour spécifier quel client doit être utilisé par les joueurs. Nous ne voulons pas qu'ils puissent utiliser la version de leur choix.


Démarrage du serveur

Après avoir compilé les fichiers du serveur, utilisez ces commandes pour démarrer le serveur.

Commencer:

    ./athena-start start

Arrêter:

    ./athena-start stop

Recommencer:

    ./athena-start restart

Si vous avez rencontré une erreur comme celle-ci:

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

... alors vous devez installer dos2unix pour convertir le script.

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

Après avoir exécuté ces commandes, redémarrez le serveur.

Maintenant que nous avons terminé la configuration du serveur, il vous suffit de configurer votre client Ragnarok pour qu'il pointe vers votre serveur VPS. Profitez de jouer sur votre nouveau serveur!


Références



Leave a Comment

Comment générer des clés SSH?

Comment générer des clés SSH?

Découvrez comment générer une clé SSH pour accéder à votre serveur sans mot de passe. Suivez nos étapes faciles à comprendre pour créer et ajouter des clés SSH.

Créer un serveur de messagerie avec hMailServer sous Windows

Créer un serveur de messagerie avec hMailServer sous Windows

Découvrez comment créer un serveur de messagerie avec hMailServer sous Windows pour recevoir des e-mails facilement.

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

LIA peut-elle lutter contre un nombre croissant dattaques de ransomware

Les attaques de ransomware sont en augmentation, mais l'IA peut-elle aider à lutter contre le dernier virus informatique ? L'IA est-elle la réponse ? Lisez ici, sachez que l'IA est un boone ou un fléau

ReactOS : est-ce lavenir de Windows ?

ReactOS : est-ce lavenir de Windows ?

ReactOS, un système d'exploitation open source et gratuit est ici avec la dernière version. Cela peut-il suffire aux besoins des utilisateurs de Windows modernes et faire tomber Microsoft ? Découvrons-en plus sur cet ancien style, mais une expérience de système d'exploitation plus récente.

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Restez connecté via lapplication de bureau WhatsApp 24 * 7

Whatsapp a finalement lancé l'application de bureau pour les utilisateurs Mac et Windows. Vous pouvez désormais accéder facilement à Whatsapp depuis Windows ou Mac. Disponible pour Windows 8+ et Mac OS 10.9+

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Comment lIA peut-elle faire passer lautomatisation des processus au niveau supérieur ?

Lisez ceci pour savoir comment l'intelligence artificielle devient populaire parmi les petites entreprises et comment elle augmente les probabilités de les faire grandir et de donner à leurs concurrents un avantage.

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

La mise à jour du supplément macOS Catalina 10.15.4 cause plus de problèmes quelle nen résout

Récemment, Apple a publié macOS Catalina 10.15.4, une mise à jour supplémentaire pour résoudre les problèmes, mais il semble que la mise à jour cause davantage de problèmes, ce qui entraîne le bridage des machines mac. Lisez cet article pour en savoir plus

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux dextraction de données de Big Data

13 outils commerciaux d'extraction de données de Big Data

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Quest-ce quun système de fichiers de journalisation et comment fonctionne-t-il ?

Notre ordinateur stocke toutes les données d'une manière organisée connue sous le nom de système de fichiers de journalisation. C'est une méthode efficace qui permet à l'ordinateur de rechercher et d'afficher des fichiers dès que vous appuyez sur la recherche.https://wethegeek.com/?p=94116&preview=true

Singularité technologique : un futur lointain de la civilisation humaine ?

Singularité technologique : un futur lointain de la civilisation humaine ?

Alors que la science évolue à un rythme rapide, prenant le pas sur une grande partie de nos efforts, les risques de nous soumettre à une Singularité inexplicable augmentent également. Lisez, ce que la singularité pourrait signifier pour nous.