Iestatiet Ragnarok tiešsaistes serveri Ubuntu 14.04 x64

Šajā rakstā mēs iestatīsim Ragnarok tiešsaistes serveri Ubuntu 14.04 x64. Jūs varat pieteikties kā root vai lietotājs ar superlietotāja privilēģijām. Drošāk ir iestatīt to kā lietotājam, kas nav root lietotājs, izmantojot sudo. Šajā apmācībā mēs izmantosim rAthena servera failus.

Ja izmantojat Windows un jums ir Ubuntu serveris (VPS vai Dedicated), jums būs nepieciešamas šādas programmas.

  • FileZilla
  • PuTTY
  • Teksta redaktors (ieteicams Sublime vai Notepad++)

Prasības

  • apache2 — ja plānojat izmantot phpMyAdmin attālai piekļuvei mysql un vietnes iestatīšanai.
  • php5 — Web un phpMyAdmin.
  • phpmyadmin — attālā MySQL piekļuve, izmantojot tīmekļa pārlūkprogrammu.
  • mysql-server - mūsu datubāze spēļu serverim.
  • mysql-klients
  • git
  • veidot
  • gcc
  • libmysqlclient-dev
  • zlib1g-dev
  • libpcre3-dev — pēc izvēles, PCRE atbalstam.
  • libssl-dev — nepieciešams, lai kompilētu ar MySQL 5.5.

Varat skatīt šo rokasgrāmatu par Apache, MySQL un PHP instalēšanu.


Nepieciešamo pakotņu instalēšana

Palaidiet šīs komandas, izmantojot SSH.

  • Saknes lietotājs:

    apt-get install php5 phpmyadmin mysql-server mysql-client git make gcc libmysqlclient-dev zlib1g-dev libpcre3-dev
    
  • Ne-root ar sudo privilēģijām:

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

Pēc servera prasību veiksmīgas instalēšanas turpināsim servera failu instalēšanu un konfigurēšanu.


Servera failu lejupielāde

Tagad mēs iegūsim jaunākos rAthena servera failu atjauninājumus. Šie ir faili, kas nepieciešami, lai palaistu Ragnarok Online serveri. Var izmantot arī citus servera failus, piemēram, Hercules un eAthena, taču šajā apmācībā mēs izmantojam rAthena. Palaidiet tālāk norādīto komandu, lai lejupielādētu failus.

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

Tādējādi visi faili tiks ievietoti rAthenajūsu pašreizējā direktorijā terminālī.

Lai atjauninātu servera failus uz jaunāko versiju, palaidiet šo komandu.

    cd rAthena
    git pull

MySQL iestatīšana

Šajā daļā mēs konfigurējam MySQL mūsu servera datubāzei. Vispirms pārbaudiet, vai darbojas jūsu MySQL serveris.

    service mysql status

Ja tā nedarbojas, ievadiet šo komandu.

    service mysqld start

Pēc iepriekš minēto komandu palaišanas atveriet MySQL konsoli.

    mysql -u root -p

Jums tiks lūgts ievadīt jūsu root paroli. Pēc pieteikšanās ierakstiet šādas komandas, lai izveidotu mūsu servera datu bāzi.

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

    mysql> CREATE DATABASE ragnarok;

Pēc tam izveidojiet jaunu Ragnarok DB lietotāju un reģistrējiet 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";

Localhost var aizstāt ar IP adresi, ja vēlaties, lai lietotājs varētu attālināti piekļūt jūsu MySQL serverim.

Izveidojiet žurnālu datu bāzi Ragnarok spēļu žurnāliem.

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

    mysql> CREATE DATABASE log;

Iestatiet atļaujas iepriekš izveidotajam lietotājam ar nosaukumu admin .

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

Atjaunojiet vajadzīgās tabulas savā Ragnarok un žurnālu datubāzē. Pēc tam -pattiecīgi atjauniniet savu paroli .

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

Spēles konta izveide

Mēs izmantojam phpMyAdmin, ko instalējām iepriekš, lai piekļūtu datu bāzei. Piekļūstiet phpMyAdmin, izmantojot savu tīmekļa pārlūkprogrammu.

Atlasiet ragnarokdatu bāzi un izvēlieties logintabulu. Mēs redzam, ka šajā tabulā ir viens ieraksts. Vēl neizdzēsiet/pārveidojiet to. To izmanto serveris. Lai izveidotu spēles kontu, noklikšķiniet uz cilnes SQL, atrodoties uz logingalda, lai atvērtu vaicājumu redaktoru. Palaidiet šādu vaicājumu.

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

Mēs esam ievietojuši jaunu lietotāju pieteikšanās tabulā ar šādu informāciju.

  • account_id = 2000000 (vienmēr sāciet ar 2000000, pēc tam 2000001...)
  • userid = admin (jūsu spēles lietotājvārds)
  • user_pass = password123 (jūsu konta parole)
  • dzimums = M (M vai F, neizmantojiet S, jo tas ir paredzēts tikai serverim)
  • e-pasts = email@email.com (jūsu konta e-pasts, kas tiek izmantots, lai dzēstu rakstzīmju vietas spēlē)
  • group_id = 99 (skatiet /rathena/conf/groups.confun pārbaudiet id rindas. Pagaidām 99, lai padarītu šo GM kontu īpašai komandu izmantošanas spēlei.)
  • character_slots = 9 (rakstzīmju skaits, ko var izveidot vienā kontā)

Pārējās vērtības atstājiet tādas, kādas tās ir. Apsveicu. Jūs esat veiksmīgi izveidojis savu kontu spēlei.


Servera failu konfigurēšana

Pirmkārt, jums jāzina sava servera IP adrese. Iespējams, jūs to jau zināt, jo tas jau bija iekļauts jūsu Vultr VPS servera informācijā. Ja vēlaties to pārbaudīt, ierakstiet:

    ifconfig

Atrodiet daļu eth0 inet addr:xxx.xxx.xxx.xxx . xxx.xxx.xxx.xxx būs jūsu servera IP adrese. Ja esat instalējis Apache, varat tam piekļūt, lai pārbaudītu, vai darbojas jūsu tīmekļa serveris.

Programmā FileZilla piesakieties savā VPS, izmantojot servera akreditācijas datus, un piekļūstiet /rAthena/confmapei.

Rediģējiet char_athena.confun map_athena.confar vēlamo teksta redaktoru.

Rediģēt char_athena.confno:

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

Kam:

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

Kur xxx.xxx.xxx.xxxir jūsu servera IP adrese.

Šajā inter_athena.txtfailā, veikt šādas izmaiņas:

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

Šajā map_athena.txtfailā, veikt šādas izmaiņas:

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

Kur xxx.xxx.xxx.xxxir jūsu servera IP adrese.

Atveriet subnet_athena.txtun iestatiet IP adresi.

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

Un esam pabeiguši servera konfigurēšanu.


rAthena servera kompilēšana

Tagad ir laiks apkopot serveri! Šajā daļā jums jāzina, kuru Ragnarok Online klienta versiju izmantosit, lai izveidotu savienojumu ar serveri. Lai iestatītu klientu, apmeklējiet šo lapu .

Kad esat izlēmis, kuru klientu izmantot, rediģēsim dažus failus. Teiksim, mēs izvēlējāmies izmantot 08072013klientu, jo tas ir stabilas atjaunošanas klients.

Palaidiet šo komandu terminālī:

    ./configure --enable-packetver=YYYYMMDD

Aizstāt YYYYMMDDar klienta datumu (pārformatēts).

    ./configure --enable-packetver=20130807

Konfigurācijas skripts veiks nepieciešamos testus un ģenerēs makefailus mūsu serverim.

Pēc tam apkopojiet avota kodu, ievadot šīs komandas:

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

... un gaidiet, kad tas beigsies. Ja veicat izmaiņas /rAthena/srcmapē esošajos failos , jums tas būs jāpārkompilē.

    make clean
    make server

Pakešu versijas konfigurēšana klienta savienojumiem

Programmā FileZilla norādiet uz /rAthena/dbmapi un rediģējiet packet_db.txt.

Atrodiet šo rindiņu un rediģējiet:

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

Tā kā mēs izmantojam 2013-08-07Ragexeklientu, atrodiet norādīto klientu tālāk un meklējiet tā packet_ver un packet_keys .

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

Aizstāt noklusējuma vērtību packet_db_verun packet_keys_usear norādītajām klienta vērtībām.

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

Un ietaupiet. Tas ir paredzēts, lai norādītu, kurš klients spēlētājiem ir jāizmanto. Mēs nevēlamies, lai viņi varētu izmantot savu izvēlēto versiju.


Servera palaišana

Pēc servera failu kompilēšanas izmantojiet šīs komandas, lai aktivizētu serveri.

Sākt:

    ./athena-start start

Apstāties:

    ./athena-start stop

Lai restartētu:

    ./athena-start restart

Ja esat saskāries ar šādu kļūdu:

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

... tad jums jāinstalē dos2unix, lai konvertētu skriptu.

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

Pēc šo komandu palaišanas vēlreiz startējiet serveri.

Tagad, kad esam pabeiguši servera iestatīšanu, jums vienkārši jāiestata Ragnarok klients, lai tas norādītu uz jūsu VPS serveri. Izbaudiet spēlēšanu savā jaunajā serverī!


Atsauces

Atstājiet komentāru

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk