利用trinitycore框架的搭建魔兽世界私服
TrinityCore 框架的搭建
框架信息
Github页https://github.com/TrinityCore/TrinityCore/releases
官网https://github.com/TrinityCore/TrinityCore/releases
服务器配置
双核心4G,debian 11.1
安装mysql
安装 mysql(版本5.7),据说是因为官网说的那个mariadb安装因为版本问题容易报错
1
| wget [http://repo.mysql.com/mysql-apt-config_0.8.13-1_all.deb](http://repo.mysql.com/mysql-apt-config_0.8.13-1_all.deb)
|
然后要安装以下组件gnupg
接下来进行安装
1
| dpkg -i mysql-apt-config_0.8.13-1_all.deb
|
1 2 3 4 5 6
| dpkg-reconfigure mysql-apt-config
apt update;apt install mysql-server
|
我这里先用123456
安装编译环境
官方资料,但是要去掉mariabd,
1 2 3 4 5 6 7 8 9 10 11 12 13
| apt-get update
apt-get install git clang cmake make gcc g++ libmariadbclient-dev-compat libssl-dev libbz2-dev libreadline-dev libncurses-dev libboost-all-dev p7zip default-libmysqlclient-dev
update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100
update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang 100
git clone -b 3.3.5 git://github.com/TrinityCore/TrinityCore.git
|
克隆、编译的时候可以利用screen工具切出去干别的。
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
cd TrinityCore
mkdir build
cd build
cmake ../ -DCMAKE_INSTALL_PREFIX=/home/wow/server -DTOOLS=1
make -j 6 install
|
配置数据库
1 2 3 4 5 6 7
|
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
sudo /etc/init.d/mysql restart
|
1 2 3 4 5 6
|
Mysql
Update user set host = “%” where user = “root”;
|
如果有iptables防火墙
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
|
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 3306 -j ACCEPT
iptables -A INPUT -p tcp --dport 3724 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 3724 -j ACCEPT
iptables -A INPUT -p tcp --dport 8085 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 8085 -j ACCEPT
|
如果mysql密码瞎写的,设置跳过密码
搞定服务端
地图提取
如果已经都抽取好了,可以直接放到服务器,就不用这么干了
创建data目录放地图
Cd到游戏根目录,然后开始提取地图
1
| /home/<username>/server/bin/mapextractor
|
如
1
| /home/wow/server/bin/mapextractor
|
移动抽取出的地图
1
| cp -r Cameras dbc maps /home/<username>/server/data
|
如
1
| cp -r Cameras dbc maps /home/wow/server/data
|
vmap抽取
1
| /home/<username>/server/bin/vmap4extractor
|
如
1 2 3 4 5 6 7 8 9 10 11 12 13
| /home/wow/server/bin/vmap4extractor
mkdir vmaps
/home/<username>/server/bin/vmap4assembler Buildings vmaps
cp -r vmaps /home/<username>/server/data
mkdir mmaps
/home/<username>/server/bin/mmaps_generator
cp -r mmaps /home/<username>/server/data
|
数据库的设置
使用如navicat的软件连接数据库,跑以下脚本
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| CREATE USER 'trinity'@'localhost' IDENTIFIED BY 'trinity' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0;
GRANT USAGE ON * . * TO 'trinity'@'localhost';
CREATE DATABASE `world` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE DATABASE `characters` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE DATABASE `auth` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON `world` . * TO 'trinity'@'localhost' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON `characters` . * TO 'trinity'@'localhost' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON `auth` . * TO 'trinity'@'localhost' WITH GRANT OPTION;
|
T端数据库
T 数据库,使用版本19101
启动服务
1 2 3 4 5 6 7
| Cd server/bin
./worldserver
./authserver
|
修改客户端的ip
魔兽世界注册页面
利用WoWSimpleRegistration实现TrinityCore自助注册