Követelmények
A szükséges csomagok telepítése
A szerver fájlok letöltése
MySQL beállítás
Játékfiók létrehozása
A szerver fájlok konfigurálása
Az rAthena szerver fordítása
Csomag verzió konfigurálása az ügyfélkapcsolatokhoz
A szerver indítása
Hivatkozások
Ebben a cikkben egy Ragnarok Online Servert fogunk beállítani az Ubuntu 14.04 x64 rendszeren. Bejelentkezhet rootként vagy szuperfelhasználói jogosultságokkal rendelkező felhasználóként. Biztonságosabb, ha ezt nem root felhasználóként állítod be a sudo segítségével. Ebben az oktatóanyagban az rAthena szerver fájljait fogjuk használni.
Ha Windowst használ, és Ubuntu Serverrel (VPS vagy dedikált) rendelkezik, akkor a következő programokra lesz szüksége.
- FileZilla
- Gitt
- Szövegszerkesztő (Sublime vagy Notepad++ ajánlott)
Követelmények
- apache2 – Ha a phpMyAdmin használatát tervezi távoli mysql eléréshez és webhelyének beállításához.
- php5 - Webhez és phpMyAdminhoz.
- phpmyadmin - Távoli MySQL hozzáférés webböngészővel.
- mysql-server - adatbázisunk a játékszerverhez.
- mysql-kliens
- git
- készítsenek
- gcc
- libmysqlclient-dev
- zlib1g-dev
- libpcre3-dev – Opcionális, PCRE támogatáshoz.
- libssl-dev – szükséges, a MySQL 5.5-ös fordításához.
Olvassa el ezt az útmutatót az Apache, a MySQL és a PHP telepítésével kapcsolatban.
A szükséges csomagok telepítése
Futtassa ezeket a parancsokat SSH-n keresztül.
Root felhasználó:
apt-get install php5 phpmyadmin mysql-server mysql-client git make gcc libmysqlclient-dev zlib1g-dev libpcre3-dev
Nem root, sudo jogosultságokkal:
sudo apt-get install php5 phpmyadmin mysql-server mysql-client git make gcc libmysqlclient-dev zlib1g-dev libpcre3-dev
A szerverkövetelmények sikeres telepítése után folytassuk a szerverfájlok telepítésével és konfigurálásával.
A szerver fájlok letöltése
Most megkapjuk az rAthena szerverfájlok legújabb frissítéseit. Ezek a fájlok egy Ragnarok Online szerver futtatásához szükségesek. Más szerverfájlok is használhatók, például a Hercules és az eAthena, de ebben az oktatóanyagban az rAthena-t használjuk. Futtassa az alábbi parancsot a fájlok letöltéséhez.
git clone https://github.com/rathena/rathena.git ~/rAthena
Ez az összes fájlt rAthenaaz aktuális könyvtárba helyezi a terminálba.
A kiszolgálófájlok legújabb verziójára való frissítéséhez futtassa ezt a parancsot.
cd rAthena
git pull
MySQL beállítás
Ebben a részben a MySQL-t konfiguráljuk szerverünk adatbázisához. Először ellenőrizze, hogy a MySQL Server fut-e.
service mysql status
Ha nem fut, írja be ezt a parancsot.
service mysqld start
A fenti parancsok futtatása után nyissa meg a MySQL konzolt.
mysql -u root -p
A rendszer kérni fogja a root jelszavát. Bejelentkezés után írja be a következő parancsokat a szerverünk adatbázisának létrehozásához.
CREATE DATABASE (your ragnarok database name); -- We'll name it "ragnarok".
mysql> CREATE DATABASE ragnarok;
Ezután hozzon létre egy új felhasználót a Ragnarok DB-hez, és naplózza a DB-t.
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";
A localhost lecserélheti egy IP-címre, ha azt szeretné, hogy a felhasználó távolról hozzáférhessen a MySQL-kiszolgálóhoz.
Hozzon létre naplóadatbázist a Ragnarok játéknaplókhoz.
CREATE DATABASE (your log database name) -- We'll name it "log".
mysql> CREATE DATABASE log;
Állítsa be az általunk korábban létrehozott, admin nevű felhasználó engedélyeit .
mysql> GRANT ALL ON log.* TO admin@localhost;
Állítsa vissza a szükséges táblákat a Ragnarok- és naplóadatbázisban. Ezt követően frissítse jelszavát -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
Játékfiók létrehozása
Az adatbázis eléréséhez a korábban telepített phpMyAdmint használjuk. A phpMyAdmin elérése a webböngészőn keresztül.
Válassza ki az ragnarokadatbázist, és válassza ki a logintáblát. Láthatjuk, hogy egy rekord van a táblázatban. Még ne törölje/módosítsa. A szerver használja. Játékfiók létrehozásához kattintson az SQL fülre az loginasztalon a lekérdezésszerkesztő megnyitásához. Futtassa a következő lekérdezést.
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');
Új felhasználót szúrtunk be a bejelentkezési táblázatba a következő információkkal.
- account_id = 2000000 (mindig 2000000-el kezdje, majd 2000001...)
- userid = admin (A játékon belüli felhasználóneved)
- user_pass = password123 (A fiók jelszava)
- sex = M (M vagy F, ne használd az S-t, mert csak a szerverre vonatkozik)
- email = email@email.com (A fiókod e-mail- címe , a karakterhelyek játékon belüli törlésére szolgál)
- group_id = 99 (tekintse meg
/rathena/conf/groups.confés ellenőrizze az id sorokat. Jelenleg 99, hogy ez GM-fiók legyen a speciális parancshasználati játékhoz.)
- character_slots = 9 (fiókonként létrehozható karakterek száma)
A többi értéket hagyja a jelenlegi állapotában. Gratulálunk. Sikeresen létrehoztad a fiókodat a játékhoz.
A szerver fájlok konfigurálása
Először is ismernie kell a szerver IP-címét. Lehet, hogy ezt már tudja, mivel ez már szerepelt a Vultr VPS szerverinformációi között. Ha ellenőrizni szeretné, írja be:
ifconfig
Keresse meg az eth0 inet addr:xxx.xxx.xxx.xxx részt. xxx.xxx.xxx.xxx lesz a szerver IP-címe. Ha telepítve van az Apache, elérheti ezt, hogy ellenőrizze, fut-e a webszerver.
A FileZillában jelentkezzen be a VPS-be a szerver hitelesítő adataival, és nyissa meg a /rAthena/confmappát.
Szerkessze char_athena.confés map_athena.confa kívánt szövegszerkesztővel.
Szerkesztés char_athena.confinnen:
// 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
Nak nek:
// 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
Hol xxx.xxx.xxx.xxxtalálható a szerver IP-címe.
Végezze el a inter_athena.txtkövetkező módosításokat a fájlban:
// 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égezze el a map_athena.txtkövetkező módosításokat a fájlban:
// 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
Hol xxx.xxx.xxx.xxxtalálható a szerver IP-címe.
Nyissa meg subnet_athena.txtés állítsa be az IP-címet.
subnet: 255.0.0.0:x.x.x.x:x.x.x.x
És készen is vagyunk a szerver konfigurálásával.
Az rAthena szerver fordítása
Itt az ideje a szerver összeállításának! Ebben a részben tudnia kell, hogy a Ragnarok Online kliens melyik verzióját fogja használni a szerverhez való csatlakozáshoz. Az ügyfél beállításához látogassa meg ezt az oldalt .
Miután eldöntötte, hogy melyik klienst használja, szerkesszünk néhány fájlt. Tegyük fel, hogy a 08072013kliens használatát választottuk, mivel ez a stabil megújító kliens.
Futtassa ezt a parancsot a terminálon:
./configure --enable-packetver=YYYYMMDD
Cserélje YYYYMMDDki az ügyfél dátumával (újraformázva).
./configure --enable-packetver=20130807
A konfiguráló szkript elvégzi a szükséges teszteket és makefile-okat generál a szerverünk számára.
Ezután fordítsa le a forráskódot az alábbi parancsok beírásával:
make server
chmod a+x login-server && chmod a+x char-server && chmod a+x map-server
... és várja meg, amíg véget ér. Ha módosítja a /rAthena/srcmappán belüli fájlokat, akkor újra kell fordítania.
make clean
make server
Csomag verzió konfigurálása az ügyfélkapcsolatokhoz
A FileZillában mutasson a /rAthena/dbmappára, és szerkessze a packet_db.txt.
Keresse meg ezt a sort, és szerkessze:
//
//packet_db_ver: 46
packet_db_ver: default
packet_keys_use: default
Mivel az 2013-08-07Ragexeügyfelet használjuk, keresse meg alább a megadott klienst, és keresse meg a packet_ver és packet_keys paramétereket .
//2013-08-07Ragexe
packet_ver: 45
packet_keys: 0x7E241DE0,0x5E805580,0x3D807D80 // [Shakto]
Cserélje le a packet_db_verés az alapértelmezett értékét packet_keys_usea megadott ügyfélértékekre.
//
//packet_db_ver: 46
packet_db_ver: 45
packet_keys_use: 0x7E241DE0,0x5E805580,0x3D807D80
És menteni. Ez annak meghatározására szolgál, hogy a játékosok melyik klienst használják. Nem akarjuk, hogy az általuk választott verziót használhassák.
A szerver indítása
A kiszolgálófájlok fordítása után ezekkel a parancsokkal indítsa el a kiszolgálót.
Kezdeni:
./athena-start start
Megállni:
./athena-start stop
Előröl kezdeni:
./athena-start restart
Ha ehhez hasonló hibát észlel:
-bash: ./athena-start: /bin/sh^M: bad interpreter
... majd telepítenie kell a dos2unix-ot a szkript konvertálásához.
apt-get install dos2unix
dos2unix athena-start
chmod a+x athena-start
A parancsok futtatása után indítsa újra a kiszolgálót.
Most, hogy végeztünk a kiszolgáló beállításával, csak be kell állítania a Ragnarok klienst, hogy a VPS-kiszolgálóra mutasson. Jó játékot az új szerveren!
Hivatkozások