天龙八部私服环境配置(Ubuntu)
找出了15年前买的一台笔记本(联想Y430A),当时是挺好的,后来更新换代,闲置未用,之前升级过CPU和内存(从T3200花30元升级到T9600,内存升级到4G),用来跑游戏服务器也足够了,主要是自己玩。
之前安装过ubuntu22,是64位,未设置成功,本次安装ubuntu16-32位试试。一路记下过程
一、安装ubuntu
1、下载安装镜像ISO
http://old-releases.ubuntu.com/releases/?spm=a2c6h.13651104.d-5186.2.70ad29ca5De0AY
下载ISO镜像:官网速度慢的话,可以从国内镜像站下载,常用的几个镜像:
http://mirrors.163.com/ubuntu-releases/16.04/
https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/16.04/
https://mirrors.aliyun.com/oldubuntu-releases/releases/?spm=a2c6h.25603864.0.0.63826f0f8F7GqN
下载:ubuntu-16.04-server-amd64.iso
2、安装
制作安装盘安装,我是用Ventoy制作启动盘,ISO放里面,可启动。好处是:这是一个启动盘,其他ISO放里面也可以安装,不用再整盘重写,对于我来说太方便了,经常装系统,搞系统维护。
安装过程不用赘述。
注意点:
- 笔记本太老,只能用传统启动模式,MBR格式,装了几次才装上
- 插上网线,一次性连网上驱动安装好
- 安装时附带安装OpenSSH,可远程操作
二、配置环境
1、安装mysql数据库及驱动
#安装mysql
sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
#安装odbc
sudo apt-get install unixodbc
sudo apt-get install unixodbc-dev
sudo apt-get install libmyodbc
其中,前5个都能装,最后一个libmyodbc安装不上,搜索方法,只有到官网去下载安装
#最新版:
https://dev.mysql.com/downloads/connector/odbc/
#旧版
https://downloads.mysql.com/archives/c-odbc/
我们安装旧版,选择了
Product Version: 5.1.0
Operating System: Linux - Generic
OS Version: All Operating Systems (Generic) (x86, 32-bit) All Operating Systems (Generic) (x86, 64-bit)
mysql-connector-odbc-5.3.2-linux-glibc2.5-x86-32bit.tar.gz)
解压后,将lib目录下的libmyodbc5.so 复制到/usr/lib/odbc/下
wget https://downloads.mysql.com/archives/get/p/10/file/mysql-connector-odbc-5.1.0-alpha-linux-x86-32bit.tar.gz
cd mysql-connector-odbc-5.3.2-linux-glibc2.5-x86-32bit
sudo cp lib/libmyodbc5-5.1.0.so /usr/lib/odbc/libmyodbc.so
至此驱动安装好了。
2、导入数据库
mysql -uroot -p
CREATE DATABASE tlbbdb DEFAULT CHARACTER SET latin1;
CREATE DATABASE web DEFAULT CHARACTER SET latin1;
导入空白数据库:预先将tlbbdb.sql、web.sql放入home目录:
use tlbbdb;
source /home/tlbbdb.sql;
use web;
sorece /home/web.sql;
3、测试驱动
修改/etc/odbc.ini:
sudo vi /etc/odbc.ini
odbc.ini内容,其中,用户名、密码换成自己设置的数据库用户名和密码:
[tlbbdb]
Driver = /usr/lib/odbc/libmyodbc.so
Description = MyODBC 3.51 Driver DSN
SERVER = 127.0.0.1
PORT = 3306
USER = root
Password = 123456
Database = tlbbdb
OPTION = 3
SOCKET
odbc连接测试
isql tlbbdb -v
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
SQL>
以上界面则连接成功,数据库及驱动安装成功。
三、天龙八部服务端配置
服务端运行,需要天龙八部服务端和验证网关,一般linux云行服务端,windows云南验证网关,以前的一键端都是在本机内云行两个VMware虚拟机,非常占用内存,直到”liuguangw”老大写了linux下的验证网关后,可直接云行在linux下,省去了windwos虚拟机,都知道windows比linux更占资源。
本次是实体机安装,不用虚拟机.
流光老大还写了一个天龙八部的网管GM工具:
https://github.com/liuguangw/TlbbGmTool
1、服务端
服务端放在/home/目录,方式多种多样,将tlbb.tar.gz上传到/home/
cd /home/
tar -zxvf tlbb.tar.gz
cd tlbb
2、验证网关:
就用流光大神的billing_go
cd /home
wget https://github.com/liuguangw/billing_go/releases/download/v1.3.3/billing-release-x32.tar.gz
tar -zxvf billing-release-x32.tar.gz
cd billing
3、配置billing:有yaml和json格式
vi config.yaml
# #后面的为注释
# 字符串可以不加引号,除非里面有#字符,所以如果数据库密码有#字符、空格时,就要加上引号
#
#billing服务器的ip,默认127.0.0.1即可
ip: 127.0.0.1
#
#billing服务器监听的端口(自定义一个未被占用的端口即可)
#本验证网关监听端口,要与/home/tlbb/Server/Config/ServierInfo.ini内的Billing端口一至
port: 12680
#
#MySQL服务器的ip或者主机名
db_host: localhost
#
#MySQL服务器端口
db_port: 3306
#
#MySQL用户名
db_user: root
#
#MySQL密码
db_password: 'root'
#
#账号数据库名(一般为web)
db_name: web
#
#只有在老版本MySQL报old_password错误时,才需要设置为true
allow_old_password: false
#
#用户登录的账号不存在时,是否引导用户进行注册
auto_reg: true
#
#允许的服务端连接ip,为空时表示允许任何ip,不为空时只允许指定的ip连接,
#allow_ips:
# - 1.1.1.1
# - 127.0.0.1
#
#登录的玩家总数量限制,如果为0则表示无上限
max_client_count: 500
#
#每台电脑最多可以同时登录的用户数量限制,如果为0则表示无上限
pc_max_client_count: 3
config.json:说明同上
{
"ip": "127.0.0.1",
"port": 12680,
"db_host": "localhost",
"db_port": 3306,
"db_user": "root",
"db_password": "root",
"db_name": "web",
"allow_old_password": false,
"auto_reg": true,
"allow_ips": [],
"max_client_count": 500,
"pc_max_client_count": 3
}
启动
Linux下启动billing方法(前台模式)
#进入billing所在文件夹,比如/home
cd /home
#添加执行权限
chmod +x ./billing
#启动billing
./billing
Linux以守护进程后台运行billing的方法(daemon模式)
#进入billing所在文件夹,比如/home/billing
cd /home/billing
#添加执行权限
chmod +x ./billing
#启动billing
./billing up -d
Windows下,直接双击billing.exe
即可
停止
停止billing命令
# 使用stop命令
./billing stop
# 也可以使用kill命令
kill -SIGTERM $(pgrep -f billing)
如果是前台模式,可以使用Ctrl + C 组合键停止服务器
4、配置服务端
天龙配置只需配置3个文件,即可运行:
/home/tlbb/Server/Config/下的:
ServerInfo.ini、LoginInfo.ini、ShareMemInfo
ServerInfo.ini
[System]
Desc0=功能:配置服务器端程序的相关情况;
Desc1=IP0、Port0指外网的地址和端口;
Desc2=IP1、Port1指内网的地址和端口;
Desc3=Type:Game=0;Login=1;
CurrentServerID=0
ServerNumber=2
EnableEffAudit=0
EffAuditSaveResultInterval=0
EffAuditReportInterval=0
EnableEffAuditSceneID_1ST=0
EnableEffAuditSceneID_2ND=0
EnableEffAuditSceneID_3RD=0
EnableEffAuditSceneID_3RD=0
[Mother]
IP=0.0.0.0
Port=0
[World]
IP=192.168.1.7
Port=777
[Billing]
Number=1
IP0=127.0.0.1 #验证网关地址,这里是本机
Port0=12680 #验证网关的监听端口
IP1=0.0.0.0
Port1=10101
IP2=0.0.0.0
Port2=10101
IP3=0.0.0.0
Port3=10101
IP4=0.0.0.0
Port4=10101
[Proxy]
Proxy0ForCncUser= 0.0.0.0
;Proxy1ForCncUser=0.0.0.0
Proxy0ForCtcUser=0.0.0.0
;Proxy1ForCtcUser=0.0.0.0
Proxy0ForEduUser= 0.0.0.0
;Proxy1ForEduUser=0.0.0.0
[Server0]
ServerID=0
MachineID=0
IP0=192.168.1.7
Port0=3731 #游戏端口
IP1=192.168.1.7
Port1=8880
Type=0
IP(CNC)= 0.0.0.0
Port(CNC)=1000
IP(CTC)=0.0.0.0
Port(CTC)=0
IP(EDU)= 0.0.0.0
Port(EDU)=1000
HumanSMKey=1001
PlayShopSMKey=4001
ItemSerialKey=7001
CommisionShopKey=6001
EnableShareMem=1
[Server1]
ServerID=2
MachineID=0
IP0=192.168.1.7
port0=7384 #登陆端口
IP1=192.168.1.7
Port1=8882
Type=1
IP(CNC)= 0.0.0.0
Port(CNC)=1000
IP(CTC)=0.0.0.0
Port(CTC)=0
IP(EDU)= 0.0.0.0
Port(EDU)=1000
HumanSMKey=1003
PlayShopSMKey=4003
ItemSerialKey=7003
CommisionShopKey=6003
EnableShareMem=0
LoginInfo.ini
[System]
LoginID=2
DBIP=127.0.0.1
DBPort=3306
DBName=tlbbdb
DBUser=root
DBPassword=passwd
ClientVersion=1005
DBConnectCount=10
TurnPlayerCount=100
CryptPwd=0
ProxyConnect=0
EnableLicense=0
ReLoginLimit=0
ReLoginStop=0
ReLoginStopTime=60000
NotifySafeSign = 0
ShareMemInfo.ini
[System]
DBIP=127.0.0.1 ;数据库ip
DBPort=3306 ;数据库端口
DBName=tlbbdb ;数据库名称
DBUser=root ;用户名
DBPassword=passwd ;密码
SMUInterval=1200000 ;world数据存盘时间(毫秒)
DATAInterval=900000 ;Human数据存盘时间(毫秒)
CryptPwd=0 ;密码是否加密
[ShareMem]
KeyCount=11
Key0=1001
Type0=1 ;HumanSMU
Key1=2001
Type1=2 ;GuildSMU
Key2=3001
Type2=3 ;MailSMU
Key3=4001
Type3=4 ;PlayerShopSM
Key4=5001
Type4=5 ;GlobalDataSMU
Key5=6001
Type5=6 ;CommisionShopSMU
Key6=7001
Type6=7 ;ItemSerialKeySMU
Key7=8001
Type7=8 ;PetProcreateItemSM
Key8=9001
Type8=9 ;CitySMU
Key9=10001
Type9=10 ;GuildLeagueSMU
Key10=11001
Type10=11 ;FindFriendADSMU
四、客户端、登陆器配置
五、换端操作
实际上的操作很简单,将服务端上传到服务器/home/目录,解压,确保/home/tlbb 这样的目录结构,再配置上面的3个文件,中的地址、端口、数据库即可
当然换端建议备份原来的数据库,将新端的数据库导入,新端没数据库的,就导入开区的空白库。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 vault@coolxy.cn