Nastavte Ragnarok Online Server na Ubuntu 14.04 x64

V tomto článku sa chystáme nastaviť Ragnarok Online Server na Ubuntu 14.04 x64. Môžete byť prihlásený ako root alebo používateľ s oprávneniami superužívateľa. Je bezpečnejšie nastaviť to ako používateľ bez oprávnenia root pomocou sudo. V tomto návode budeme používať súbory servera rAthena.

Ak používate Windows a máte Ubuntu Server (VPS alebo Dedicated), budete potrebovať nasledujúce programy.

  • FileZilla
  • PuTTY
  • Textový editor (odporúča sa Sublime alebo Notepad++)

Požiadavky

  • apache2 - Ak plánujete použiť phpMyAdmin na vzdialený prístup k mysql a nastavenie vašej webovej stránky.
  • php5 – pre web a phpMyAdmin.
  • phpmyadmin - Vzdialený prístup k MySQL pomocou webového prehliadača.
  • mysql-server - naša databáza pre herný server.
  • mysql-klient
  • git
  • urobiť
  • gcc
  • libmysqlclient-dev
  • zlib1g-dev
  • libpcre3-dev - Voliteľné pre podporu PCRE.
  • libssl-dev - Vyžaduje sa na kompiláciu s MySQL 5.5.

Môžete si pozrieť túto príručku týkajúcu sa inštalácie Apache, MySQL a PHP.


Inštalácia požadovaných balíkov

Spustite tieto príkazy cez SSH.

  • Používateľ root:

    apt-get install php5 phpmyadmin mysql-server mysql-client git make gcc libmysqlclient-dev zlib1g-dev libpcre3-dev
    
  • Non-root s oprávneniami sudo:

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

Po úspešnej inštalácii serverových požiadaviek pokračujte v inštalácii a konfigurácii serverových súborov.


Sťahovanie súborov servera

Teraz získame najnovšie aktualizácie súborov servera rAthena. Toto sú súbory potrebné na spustenie servera Ragnarok Online. Existujú aj iné serverové súbory, ktoré možno použiť, napríklad Hercules a eAthena, ale v tomto návode používame rAthena. Spustite príkaz nižšie a stiahnite si súbory.

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

Toto umiestni všetky súbory do rAthenavášho aktuálneho adresára v termináli.

Ak chcete aktualizovať súbory servera na najnovšiu revíziu, spustite tento príkaz.

    cd rAthena
    git pull

Nastavenie MySQL

V tejto časti konfigurujeme MySQL pre databázu nášho servera. Najprv skontrolujte, či váš server MySQL beží.

    service mysql status

Ak nie je spustený, zadajte tento príkaz.

    service mysqld start

Po spustení vyššie uvedených príkazov otvorte konzolu MySQL.

    mysql -u root -p

Budete požiadaní o heslo používateľa root. Po prihlásení zadajte nasledujúce príkazy na vytvorenie databázy pre náš server.

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

    mysql> CREATE DATABASE ragnarok;

Potom vytvorte nového používateľa pre Ragnarok DB a prihláste sa do 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";

Môžete nahradiť localhost s IP adresou, ak chcete, aby užívateľ bude mať prístup k MySQL serveru vzdialene.

Vytvorte databázu denníkov pre denníky hry Ragnarok.

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

    mysql> CREATE DATABASE log;

Nastavte povolenia pre používateľa, ktorého sme predtým vytvorili s názvom admin .

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

Obnovte požadované tabuľky vo vašej databáze Ragnarok a denníka. Potom aktualizujte svoje heslo -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

Vytvorenie herného účtu

Na prístup k databáze používame phpMyAdmin, ktorý sme si predtým nainštalovali. Prístup k phpMyAdmin cez váš webový prehliadač.

Vyberte ragnarokdatabázu a vyberte logintabuľku. Vidíme, že v tabuľke je jeden záznam. Zatiaľ ho nemažte/neupravujte. Používa ho server. Ak chcete vytvoriť herný účet, kliknite na kartu SQL na loginstole a otvorte editor dotazov. Spustite nasledujúci dotaz.

    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@email.com', '99', '0', '0', '0', '0', '0000-00-00 00:00:00', '', '0000-00-00', '9', '', '0', '0', '0');

Do prihlasovacej tabuľky sme vložili nového používateľa s nasledujúcimi informáciami.

  • account_id = 2000000 (vždy začínať s 2000000, potom 2000001...)
  • userid = admin (Vaše používateľské meno v hre)
  • user_pass = password123 (heslo pre váš účet)
  • pohlavie = M (M alebo F, nepoužívajte S, pretože je to len pre server)
  • email = email@email.com ( e-mail vášho účtu, ktorý sa používa na odstránenie slotov na postavy v hre)
  • group_id = 99 (pozrite si /rathena/conf/groups.confa skontrolujte riadky id. Zatiaľ, 99, aby ste z toho urobili účet GM na použitie špeciálnych príkazov v hre.)
  • character_slots = 9 (počet znakov, ktoré je možné vytvoriť na účet)

Ostatné hodnoty nechajte tak, ako sú. gratulujem. Úspešne ste si vytvorili účet pre hru.


Konfigurácia súborov servera

Najprv musíte poznať IP adresu vášho servera. Možno to už viete, pretože to už bolo zahrnuté v informáciách o serveri vášho Vultr VPS. Ak to chcete skontrolovať, napíšte:

    ifconfig

Vyhľadajte časť eth0 inet addr:xxx.xxx.xxx.xxx . xxx.xxx.xxx.xxx bude IP adresa vášho servera. Ak máte nainštalovaný Apache, môžete k nemu pristupovať a skontrolovať, či váš webový server beží.

Vo FileZilla sa prihláste do svojho VPS pomocou poverení servera a prejdite do /rAthena/confpriečinka.

Upravte char_athena.confa map_athena.confpomocou preferovaného textového editora.

Upraviť char_athena.confz:

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

Komu:

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

Kde xxx.xxx.xxx.xxxje IP adresa vášho servera.

V inter_athena.txtsúbore vykonajte tieto zmeny:

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

V map_athena.txtsúbore vykonajte tieto zmeny:

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

Kde xxx.xxx.xxx.xxxje IP adresa vášho servera.

Otvorte subnet_athena.txta nastavte IP adresu.

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

A skončili sme s konfiguráciou servera.


Kompilácia servera rAthena

Teraz je čas skompilovať server! V tejto časti potrebujete vedieť, akú verziu klienta Ragnarok Online budete používať na pripojenie k serveru. Pre nastavenie klienta navštívte túto stránku .

Keď sa rozhodnete, ktorého klienta použijete, upravte niektoré súbory. Povedzme, že sme sa rozhodli použiť 08072013klienta, pretože ide o stabilného klienta na obnovenie.

Spustite tento príkaz na termináli:

    ./configure --enable-packetver=YYYYMMDD

Nahraďte YYYYMMDDdátumom klienta (preformátovaný).

    ./configure --enable-packetver=20130807

Konfiguračný skript vykoná potrebné testy a vygeneruje makefiles pre náš server.

Potom skompilujte zdrojový kód zadaním týchto príkazov:

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

...a počkajte, kým to skončí. Ak vykonáte úpravy na súboroch v /rAthena/srcpriečinku, budete ho musieť prekompilovať.

    make clean
    make server

Konfigurácia verzie paketu pre pripojenia klientov

V programe FileZilla ukážte na /rAthena/dbpriečinok a upravte súbor packet_db.txt.

Nájdite tento riadok a upravte:

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

Keďže používame 2013-08-07Ragexeklienta, nájdite zadaného klienta nižšie a vyhľadajte jeho packet_ver a packet_keys .

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

Nahraďte predvolenú hodnotu packet_db_vera packet_keys_usedo špecifikovaných klientskych hodnôt.

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

A uložiť. Slúži na určenie, akého klienta majú hráči používať. Nechceme, aby mohli použiť svoju verziu výberu.


Spustenie servera

Po skompilovaní súborov servera použite tieto príkazy na spustenie servera.

Začať:

    ./athena-start start

Prestať:

    ./athena-start stop

Ak chcete reštartovať:

    ./athena-start restart

Ak ste narazili na takúto chybu:

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

... potom musíte nainštalovať dos2unix na konverziu skriptu.

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

Po spustení týchto príkazov znova spustite server.

Teraz, keď sme skončili s nastavením servera, stačí nastaviť klienta Ragnarok tak, aby ukazoval na váš server VPS. Užite si hranie na svojom novom serveri!


Referencie

Zanechať komentár

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Umelá inteligencia nie je v budúcnosti, je tu priamo v súčasnosti V tomto blogu si prečítajte, ako aplikácie umelej inteligencie ovplyvnili rôzne sektory.

Útoky DDOS: Stručný prehľad

Útoky DDOS: Stručný prehľad

Ste aj vy obeťou DDOS útokov a máte zmätok ohľadom metód prevencie? Ak chcete vyriešiť svoje otázky, prečítajte si tento článok.

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Zaujímalo vás niekedy, ako hackeri zarábajú peniaze?

Možno ste už počuli, že hackeri zarábajú veľa peňazí, ale premýšľali ste niekedy nad tým, ako môžu zarábať také peniaze? poďme diskutovať.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Revolučné vynálezy od spoločnosti Google, ktoré vám uľahčia život.

Chcete vidieť revolučné vynálezy od Google a ako tieto vynálezy zmenili život každého dnešného človeka? Potom si prečítajte na blogu a pozrite si vynálezy spoločnosti Google.

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Piatok Essential: Čo sa stalo s autami poháňanými AI?

Koncept samoriadených áut vyraziť na cesty s pomocou umelej inteligencie je snom, ktorý máme už nejaký čas. Ale napriek niekoľkým prísľubom ich nikde nevidno. Prečítajte si tento blog a dozviete sa viac…

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Technologická singularita: vzdialená budúcnosť ľudskej civilizácie?

Ako sa veda vyvíja rýchlym tempom a preberá veľa nášho úsilia, zvyšuje sa aj riziko, že sa vystavíme nevysvetliteľnej singularite. Prečítajte si, čo pre nás môže znamenať singularita.

Funkcionality vrstiev referenčnej architektúry veľkých dát

Funkcionality vrstiev referenčnej architektúry veľkých dát

Prečítajte si blog, aby ste čo najjednoduchším spôsobom spoznali rôzne vrstvy architektúry veľkých dát a ich funkcie.

Vývoj ukladania dát – Infografika

Vývoj ukladania dát – Infografika

Spôsoby ukladania údajov sa môžu vyvíjať už od zrodu údajov. Tento blog sa zaoberá vývojom ukladania údajov na základe infografiky.

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

6 úžasných výhod toho, že máme v živote inteligentné domáce zariadenia

V tomto digitálnom svete sa inteligentné domáce zariadenia stali kľúčovou súčasťou života. Tu je niekoľko úžasných výhod inteligentných domácich zariadení o tom, ako robia náš život, ktorý stojí za to žiť, a ktorý zjednodušujú.

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Aktualizácia doplnku macOS Catalina 10.15.4 spôsobuje viac problémov, ako ich rieši

Spoločnosť Apple nedávno vydala doplnkovú aktualizáciu macOS Catalina 10.15.4 na opravu problémov, ale zdá sa, že táto aktualizácia spôsobuje ďalšie problémy, ktoré vedú k blokovaniu počítačov Mac. Prečítajte si tento článok a dozviete sa viac