天龙八部私服环境配置(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数据库及驱动 1 2 3 4 5 6 7 8 9 sudo apt-get install mysql-serversudo apt-get install mysql-clientsudo apt-get install libmysqlclient-dev sudo apt-get install unixodbcsudo apt-get install unixodbc-devsudo apt-get install libmyodbc
其中,前5个都能装,最后一个libmyodbc安装不上,搜索方法,只有到官网去下载安装
1 2 3 4 #最新版: 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)
https://downloads.mysql.com/archives/get/p/10/file/mysql-connector-odbc-5.1.0-alpha-linux-x86-32bit.tar.gz
解压后,将lib目录下的libmyodbc5.so 复制到/usr/lib/odbc/下
1 2 3 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、导入数据库 1 2 3 4 mysql -uroot -p CREATE DATABASE tlbbdb DEFAULT CHARACTER SET latin1; CREATE DATABASE web DEFAULT CHARACTER SET latin1;
导入空白数据库:预先将tlbbdb.sql、web.sql放入home目录:
1 2 3 4 5 use tlbbdb; source /home/tlbbdb.sql; use web; sorece /home/web.sql;
3、测试驱动 修改/etc/odbc.ini:
odbc.ini内容,其中,用户名、密码换成自己设置的数据库用户名和密码:
1 2 3 4 5 6 7 8 9 10 [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连接测试
1 2 3 4 5 6 7 8 9 10 11 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/
1 2 3 4 cd /home/ tar -zxvf tlbb.tar.gz cd tlbb
2、验证网关: 就用流光大神的billing_go
1 2 3 4 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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 # #后面的为注释 # 字符串可以不加引号,除非里面有#字符,所以如果数据库密码有#字符、空格时,就要加上引号 # #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:说明同上
1 2 3 4 5 6 7 8 9 10 11 12 13 14 { "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方法(前台模式 )
1 2 3 4 5 6 #进入billing所在文件夹,比如/home cd /home #添加执行权限 chmod +x ./billing #启动billing ./billing
Linux以守护进程后台运行billing的方法(daemon模式 )
1 2 3 4 5 6 #进入billing所在文件夹,比如/home/billing cd /home/billing #添加执行权限 chmod +x ./billing #启动billing ./billing up -d
Windows下,直接双击billing.exe
即可
停止 停止billing命令
1 2 3 4 5 # 使用stop命令 ./billing stop # 也可以使用kill命令 kill -SIGTERM $(pgrep -f billing)
如果是前台模式,可以使用Ctrl + C 组合键停止服务器
4、配置服务端 天龙配置只需配置3个文件,即可运行:
/home/tlbb/Server/Config/下的:
ServerInfo.ini、LoginInfo.ini、ShareMemInfo
ServerInfo.ini
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 [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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 [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
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 [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个文件,中的地址、端口、数据库即可
当然换端建议备份原来的数据库,将新端的数据库导入,新端没数据库的,就导入开区的空白库。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 jaytp@qq.com