Konfigurera Ragnarok Online Server på Ubuntu 14.04 x64

Konfigurera Ragnarok Online Server på Ubuntu 14.04 x64

I den här artikeln kommer vi att ställa in en Ragnarok Online Server på Ubuntu 14.04 x64. Du kan vara inloggad som root eller en användare med superanvändarprivilegier. Det är säkrare att ställa in detta som en icke-rootanvändare med sudo. I den här handledningen kommer vi att använda rAthena-serverfilerna.

Om du använder Windows och har Ubuntu Server (VPS eller Dedicated), behöver du följande program.

  • FileZilla
  • Spackel
  • Textredigerare (Sublim eller Notepad++ rekommenderas)

Krav

  • apache2 - Om du planerar att använda phpMyAdmin för fjärråtkomst till mysql och för att ställa in din webbplats.
  • php5 - För webb och phpMyAdmin.
  • phpmyadmin - Fjärråtkomst till MySQL med hjälp av en webbläsare.
  • mysql-server - vår databas för spelservern.
  • mysql-klient
  • git
  • göra
  • gcc
  • libmysqlclient-dev
  • zlib1g-dev
  • libpcre3-dev - Valfritt, för PCRE-stöd.
  • libssl-dev - Krävs för kompilering med MySQL 5.5.

Du kan hänvisa till den här guiden angående installation av Apache, MySQL och PHP.


Installerar nödvändiga paket

Kör dessa kommandon över SSH.

  • Rotanvändare:

    apt-get install php5 phpmyadmin mysql-server mysql-client git make gcc libmysqlclient-dev zlib1g-dev libpcre3-dev
    
  • Icke-root med sudo-privilegier:

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

Efter att ha lyckats installera serverkraven, låt oss fortsätta med att installera och konfigurera serverfilerna.


Ladda ner serverfilerna

Nu ska vi få de senaste uppdateringarna av rAthena-serverfiler. Det här är filerna som krävs för att köra en Ragnarok Online-server. Det finns andra serverfiler som kan användas, som Hercules och eAthena, men i den här handledningen använder vi rAthena. Kör kommandot nedan för att ladda ner filerna.

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

Detta kommer att placera alla filer rAthenai din nuvarande katalog i terminal.

Kör det här kommandot för att uppdatera serverfilerna till senaste versionen.

    cd rAthena
    git pull

MySQL-inställning

I den här delen konfigurerar vi MySQL för databasen på vår server. Kontrollera först om din MySQL-server körs.

    service mysql status

Om den inte körs, skriv in det här kommandot.

    service mysqld start

Öppna MySQL-konsolen efter att ha kört kommandona ovan.

    mysql -u root -p

Du kommer att bli ombedd att ange ditt root-lösenord. När du har loggat in skriver du följande kommandon för att skapa databasen för vår server.

CREATE DATABASE (your ragnarok database name); -- We'll name it "ragnarok".

    mysql> CREATE DATABASE ragnarok;

Skapa sedan en ny användare för Ragnarok DB och logga DB.

GRANT ALL ON ragnarok.* TO yourdatabaseusername@localhost IDENTIFIED BY "yourdesiredpassword"; -- We will create a new user called admin with a password of 123456.

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

Du kan ersätta localhost med en IP-adress om du vill att användaren ska kunna komma åt din MySQL-server på distans.

Skapa loggdatabas för Ragnarok-spelloggarna.

CREATE DATABASE (your log database name) -- We'll name it "log".

    mysql> CREATE DATABASE log;

Ange behörigheter för användaren som vi skapade tidigare med namnet admin .

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

Återställ de nödvändiga tabellerna i din Ragnarok och loggdatabas. Uppdatera ditt lösenord därefter -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

Skapa ett spelkonto

Vi använder phpMyAdmin som vi installerade tidigare för att komma åt databasen. Få åtkomst till phpMyAdmin via din webbläsare.

Välj ragnarokdatabasen och välj logintabellen. Vi kan se att det finns ett rekord i den tabellen. Ta inte bort/ändra det ännu. Den används av servern. För att skapa ett spelkonto, klicka på SQL-fliken på loginbordet för att öppna frågeredigeraren. Kör följande fråga.

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

Vi har infogat en ny användare i inloggningstabellen med följande information.

  • account_id = 2000000 (börja alltid med 2000000, sedan 2000001...)
  • userid = admin (Ditt användarnamn i spelet)
  • user_pass = password123 (Lösenordet för ditt konto)
  • sex = M (M eller F, använd inte S eftersom det bara är för servern)
  • email = [email protected] (Ditt kontos e-postadress, används för att radera karaktärsplatser i spelet)
  • group_id = 99 (se /rathena/conf/groups.confoch kontrollera id-raderna. Som nu, 99 för att göra detta till ett GM-konto för speciell kommandoanvändning i spelet.)
  • character_slots = 9 (Antal tecken som kan skapas per konto)

Lämna de andra värdena som de är. Grattis. Du har skapat ditt konto för spelet.


Konfigurera serverfilerna

Först måste du känna till din servers IP-adress. Du kanske redan vet detta eftersom det redan ingick i serverinformationen för din Vultr VPS. Om du vill kontrollera det, skriv:

    ifconfig

Leta efter eth0 inet addr:xxx.xxx.xxx.xxx delen. xxx.xxx.xxx.xxx kommer att vara din servers IP-adress. Om du har Apache installerat kan du komma åt detta för att kontrollera om din webbserver är igång.

I FileZilla loggar du in på din VPS med dina serveruppgifter och kommer åt /rAthena/confmappen.

Redigera char_athena.confoch map_athena.confmed din föredragna textredigerare.

Redigera char_athena.conffrån:

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

Till:

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

Var xxx.xxx.xxx.xxxär din servers IP-adress.

inter_athena.txtGör dessa ändringar i filen:

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

map_athena.txtGör dessa ändringar i filen:

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

Var xxx.xxx.xxx.xxxär din servers IP-adress.

Öppna subnet_athena.txtoch ställ in IP-adressen.

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

Och vi är klara med att konfigurera servern.


Kompilerar rAthena-server

Nu är det dags att kompilera servern! I den här delen behöver du veta vilken Ragnarok Online-klientversion du kommer att använda för att ansluta till servern. Besök den här sidan för klientinställning .

När du har bestämt vilken klient som ska användas, låt oss redigera några filer. Låt oss bara säga, vi valde att använda 08072013klienten eftersom detta är den stabila förnyelseklienten.

Kör detta kommando på terminalen:

    ./configure --enable-packetver=YYYYMMDD

Ersätt YYYYMMDDmed klientdatumet (omformaterat).

    ./configure --enable-packetver=20130807

Konfigureringsskriptet kommer att utföra nödvändiga tester och generera make-filer för vår server.

Därefter kompilerar du källkoden genom att ange dessa kommandon:

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

... och vänta tills det är klart. Om du gör ändringar i filerna i /rAthena/srcmappen måste du kompilera om den.

    make clean
    make server

Konfigurera paketversionen för klientanslutningar

I FileZilla, peka på /rAthena/dbmappen och redigera packet_db.txt.

Hitta den här raden och redigera:

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

Eftersom vi använder 2013-08-07Ragexeklienten, hitta den angivna klienten nedan och leta efter dess packet_ver och packet_keys .

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

Ersätt standardvärdet för packet_db_veroch packet_keys_usetill de angivna klientvärdena.

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

Och spara. Detta är för att specificera vilken klient som ska användas av spelare. Vi vill inte att de ska kunna använda sin valfria version.


Startar servern

Efter att ha kompilerat serverfilerna använder du dessa kommandon för att starta servern.

Att börja:

    ./athena-start start

Att stanna:

    ./athena-start stop

Att starta om:

    ./athena-start restart

Om du har stött på ett fel som detta:

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

... då måste du installera dos2unix för att konvertera skriptet.

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

När du har kört dessa kommandon startar du servern igen.

Nu när vi är klara med serverinställningen behöver du bara ställa in din Ragnarok-klient så att den pekar på din VPS-server. Njut av att spela på din nya server!


Referenser


Hur man ställer in en Tekkit Classic-server på Ubuntu 16.10

Hur man ställer in en Tekkit Classic-server på Ubuntu 16.10

Använder du ett annat system? Vad är Tekkit Classic? Tekkit Classic är ett modpack för spelet som alla känner och älskar; Minecraft. Den innehåller några av ver

Konfigurera 7 Days to Die Server på Ubuntu 14

Konfigurera 7 Days to Die Server på Ubuntu 14

I den här guiden lär du dig hur du ställer in din egen 7 Days to Die-server (7D2D) på Ubuntu. Observera att detta spel fortfarande är tidig tillgång och att th

Konfigurera en Half Life 2-server på CentOS 6

Konfigurera en Half Life 2-server på CentOS 6

Denna handledning kommer att täcka processen att installera en Half Life 2-spelserver på CentOS 6 System. Steg 1: Installera förutsättningarna För att ställa in ou

Counter-Strike Global Offensive Server Launcher på Ubuntu

Counter-Strike Global Offensive Server Launcher på Ubuntu

De som har erfarenhet av att sätta upp dedikerad CS:GO (Counter-Strike: Global Offensive) vet att processen att använda kommandoradsgränssnittet för att hantera

Ställa in Counter Strike: Source på Debian

Ställa in Counter Strike: Source på Debian

I den här guiden kommer vi att sätta upp en Counter Strike: Source-spelserver på Debian 7. Dessa kommandon testades på Debian 7 men de borde också fungera o

Hur man installerar Unturned 2.2.5 på Debian 8

Hur man installerar Unturned 2.2.5 på Debian 8

I den här guiden kommer du att lära dig hur du ställer in en Unturned 2.2.5-server på en Vultr VPS som kör Debian 8. Obs: Detta är en redigerad version av Unturned som inte

Hur man installerar Cuberite på en CentOS 6- eller 7-server

Hur man installerar Cuberite på en CentOS 6- eller 7-server

Introduktion Vad är Cuberite? Cuberite är en skalbar Minecraft-serverimplementering med öppen källkod som är skriven i C++. Den har en lättanvänd plugi

Installera Teamspeak på CentOS 7

Installera Teamspeak på CentOS 7

Teamspeak är en VOIP-server som kan användas för team/flera personer att kommunicera. Det är relativt lätt och säkert, eftersom uppdateringar släpps

Hur man installerar SteamCMD på din VPS

Hur man installerar SteamCMD på din VPS

I den här handledningen kommer vi att installera SteamCMD. SteamCMD kan användas för att ladda ner och installera många Steam-spelservrar, såsom Counter-Strike: Global Offensiv

Starta en Teamspeak 3-server på CentOS 6.4

Starta en Teamspeak 3-server på CentOS 6.4

Kör följande kommandon för att installera en Teamspeak 3-server. # Secure Iptables iptables -F iptables -X iptables -t nat -F iptables -t nat -X iptables -

Hur man installerar Left 4 Dead Server på CentOS 7

Hur man installerar Left 4 Dead Server på CentOS 7

I den här guiden kommer jag att förklara hur man installerar och konfigurerar en L4D-server på CentOS 7. Installera Left 4 Dead Innan vi börjar måste vi se till att

Hur man installerar en Minecraft-server på Ubuntu 14.04

Hur man installerar en Minecraft-server på Ubuntu 14.04

Använder du ett annat system? I den här artikeln kommer vi att installera en Minecraft-server på en Ubuntu. Se till att du är inloggad under en användare som inte är

Hur man installerar SA-MP San Andreas Multiplayer på CentOS 7

Hur man installerar SA-MP San Andreas Multiplayer på CentOS 7

I den här handledningen kommer du att lära dig hur du ställer in en SA-MP-server (San Andreas Multiplayer) på CentOS 7.

Konfigurera TeeWorlds server

Konfigurera TeeWorlds server

TeeWorlds är ett gratis och öppen källkod online multiplayer shooter-spel. I den här handledningen kommer jag att förklara hur man skapar en TeeWorlds-server. Dessa steg var

Hur man installerar en Tekkit Classic Server på CentOS 6/7

Hur man installerar en Tekkit Classic Server på CentOS 6/7

Använder du ett annat system? I den här handledningen kan du väl skapa en Tekkit Classic-server. Tekkit är ett annat populärt modpack gjord för Minecraft. På grund av mängden

Hur man installerar Glowstone (Minecraft) på en CentOS 7-server

Hur man installerar Glowstone (Minecraft) på en CentOS 7-server

Använder du ett annat system? Inledning Glowstone är utan tvekan den mest optimerade servern för Minecraft. Programvaran har låg minnesanvändning och användning

Hur man installerar Unturned på Linux

Hur man installerar Unturned på Linux

Använder du ett annat system? Inledning I den här guiden kommer du att lära dig hur du ställer in och installerar en Unturned-server på Linux. Unturned är en populär överlevnad

Konfigurera en JC2:MP-spelserver på Debian

Konfigurera en JC2:MP-spelserver på Debian

I den här guiden kommer vi att ställa in en Just Cause 2: Multiplayer Linux-server. Dessa kommandon testades på Debian 7 x64, men de bör också fungera på th

Installera en Minecraft-server på Fedora 26

Installera en Minecraft-server på Fedora 26

Använder du ett annat system? I den här handledningen kommer jag att guida dig genom att ställa in en Minecraft-server på en högpresterande SSD VPS på Vultr. Du kommer att lära dig ho

Terraria Server med TShock på Linux

Terraria Server med TShock på Linux

Terraria är ett MMORPG baserat på gruvdrift, byggnad och strid. Vissa människor säger att det är en 2D-version av Minecraft, men det skulle inte göra Terraria rättvisa

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.

DDOS-attacker: En kort översikt

DDOS-attacker: En kort översikt

Är du också ett offer för DDOS-attacker och förvirrad över de förebyggande metoderna? Läs den här artikeln för att lösa dina frågor.

Har du någonsin undrat hur hackare tjänar pengar?

Har du någonsin undrat hur hackare tjänar pengar?

Du kanske har hört att hackare tjänar mycket pengar, men har du någonsin undrat hur de tjänar den typen av pengar? låt oss diskutera.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Revolutionerande uppfinningar från Google som gör ditt liv lätt.

Vill du se revolutionerande uppfinningar av Google och hur dessa uppfinningar förändrade livet för varje människa idag? Läs sedan till bloggen för att se uppfinningar av Google.

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Fredag ​​Essential: Vad hände med AI-drivna bilar?

Konceptet med att självkörande bilar ska ut på vägarna med hjälp av artificiell intelligens är en dröm vi har ett tag nu. Men trots flera löften finns de ingenstans att se. Läs den här bloggen för att lära dig mer...

Technological Singularity: A Distant Future of Human Civilization?

Technological Singularity: A Distant Future of Human Civilization?

När vetenskapen utvecklas i snabb takt och tar över en hel del av våra ansträngningar, ökar också riskerna för att utsätta oss för en oförklarlig singularitet. Läs, vad singularitet kan betyda för oss.

Utveckling av datalagring – Infographic

Utveckling av datalagring – Infographic

Lagringsmetoderna för data har utvecklats kan vara sedan födelsen av data. Den här bloggen tar upp utvecklingen av datalagring på basis av en infografik.

Funktioner för Big Data Reference Architecture Layers

Funktioner för Big Data Reference Architecture Layers

Läs bloggen för att känna till olika lager i Big Data Architecture och deras funktionaliteter på enklaste sätt.

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

6 fantastiska fördelar med att ha smarta hemenheter i våra liv

I denna digitala värld har smarta hemenheter blivit en avgörande del av livet. Här är några fantastiska fördelar med smarta hemenheter om hur de gör vårt liv värt att leva och enklare.

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

macOS Catalina 10.15.4 tilläggsuppdatering orsakar fler problem än att lösa

Nyligen släppte Apple macOS Catalina 10.15.4, en tilläggsuppdatering för att åtgärda problem, men det verkar som om uppdateringen orsakar fler problem som leder till att mac-datorer blir murade. Läs den här artikeln för att lära dig mer