################## Disclaimer ###########################
This guide IS NOT security based and it is for testing
only. Use at your own risk! Also this guide will not
describe how to install and configure game client.
#########################################################
Tested on Ubuntu/Debian server operating systems (01.12.2017).
From my personal experienceon VirtualBox minimal server requirements for few palyers:
1 VCPU
3G RAM
20 GB HDD
1) Install server operating system. I recommend keep as minimal as possible, install minimal server software + openssh-server.
2) Connect to your server via SSH client putty or other and preapre software:
Code: Select all
$ apt-get install git-core openjdk-8-jdk vim htop dstat unzip
Code: Select all
$ mkdir ~/development
$ mkdir ~/server
$ cd ~/development/
Code: Select all
$ git clone https://bitbucket.org/l2jserver/l2j_server.git
$ git clone https://bitbucket.org/l2jserver/l2j_datapack.git
Code: Select all
$ cd ~/development/l2j_datapack
$ ./gradlew
Code: Select all
$ cd ~/development/l2j_server/
$ ./gradlew
Code: Select all
$ mv ~/development/l2j_datapack/build/distributions/L2J_DataPack_2017-12-08.zip ~/server/
$ mv ~/development/l2j_server/build/distributions/L2J_Server_2017-12-08.zip ~/server/
$ cd ~/server/
$ unzip L2J_Server_2017-12-08.zip
$ unzip L2J_DataPack_2017-12-08.zip
$ mkdir ~/server/game/log
$ mkdir ~/server/login/log
$ chmod 750 ~/server/login/*.sh
$ chmod 750 ~/server/game/*.sh
Code: Select all
$ sudo apt-get install mysql-server
Code: Select all
$ service mysql status
$ netstat -anp | grep :3306
Code: Select all
$ mysql -u root -p
Code: Select all
mysql> create database l2jgs;
mysql> create database l2jls;
mysql> grant insert, select, update, delete, alter, create, trigger, drop, index on l2jls.* to 'l2lsuser'@'localhost' identified by 'D0ntUs3SamePassw0rds';
mysql> grant insert, select, update, delete, alter, create, trigger, drop, index on l2jgs.* to 'l2gsuser'@'localhost' identified by 'MySup3rComplexPassw0rd';
9) Lets execute sql scripts to create tables and structure:
Code: Select all
$ cd ~/server/sql/login/
$ for i in `ls | grep .sql`; do sudo mysql --defaults-file=/etc/mysql/debian.cnf l2jls < $i; done
Code: Select all
$ cd ~/server/sql/game/
$ for i in `ls | grep .sql`; do sudo mysql --defaults-file=/etc/mysql/debian.cnf l2jgs < $i; done
Code: Select all
$ nano ~/server/login/config/LoginServer.properties
Login = l2lsuser
Password = D0ntUs3SamePassw0rds
Code: Select all
$ nano ~/server/game/config/Server.properties
11) Start Login serverLogin = l2gsuser
Password = MySup3rComplexPassw0rd
Code: Select all
$ cd ~/server/login/; ./startLoginServer.sh
Code: Select all
$ tail ~/server/login/log/stdout.log
## Also you can check if port is listening:[09/12 00:37:41] Listening for GameServers on 127.0.0.1:9014
[09/12 00:37:41] Telnet server is currently disabled.
[09/12 00:37:41] L2LoginServer: is now listening on: *:2106
Code: Select all
$ netstat -ntlp | grep :2106
Code: Select all
$ cd ~/server/game/; ./startGameServer.sh
Code: Select all
$ tail ~/server/game/log/stdout.log
## Also you can check if port is listening:[09/12 01:11:22] Connecting to login on 127.0.0.1:9014
[09/12 01:11:22] Registered on login as Server 1: Bartz
[09/12 01:11:22] GameServer: is now listening on: *:7777
Code: Select all
$ netstat -ntlp | grep :7777