在Ubuntu 22.04上从零搭建TrinityCore 3.3.5魔兽私服:保姆级避坑指南(含公网部署)

发布时间:2026/5/31 7:28:34

在Ubuntu 22.04上从零搭建TrinityCore 3.3.5魔兽私服:保姆级避坑指南(含公网部署) 在Ubuntu 22.04上从零搭建TrinityCore 3.3.5魔兽私服保姆级避坑指南含公网部署魔兽世界怀旧服的热度持续攀升许多玩家和技术爱好者都希望搭建自己的私服。本文将带你从零开始在Ubuntu 22.04系统上完整部署TrinityCore 3.3.5版本服务器涵盖从环境准备到公网部署的全过程特别针对常见陷阱提供解决方案。1. 环境准备与依赖安装搭建TrinityCore服务器首先需要确保系统环境满足要求。Ubuntu 22.04 LTS是最推荐的系统版本因其长期支持特性和稳定性。以下是必须安装的开发工具和库sudo apt update sudo apt install -y git clang cmake make gcc g libmysqlclient-dev \ libssl-dev libbz2-dev libreadline-dev libncurses-dev libboost-all-dev \ mysql-server p7zip注意如果使用非root账户所有命令前都需要添加sudo。配置编译器默认使用clangsudo update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100 sudo update-alternatives --install /usr/bin/c c /usr/bin/clang 100常见问题排查若遇到libboost版本冲突可尝试指定版本安装sudo apt install libboost1.74-devMySQL安装后建议运行安全脚本sudo mysql_secure_installation2. 源码获取与编译TrinityCore的源码托管在GitHub建议直接克隆3.3.5分支git clone -b 3.3.5 --depth 1 https://github.com/TrinityCore/TrinityCore cd TrinityCore国内用户若访问GitHub困难可使用镜像源git clone -b 3.3.5 --depth 1 https://gitcode.com/gh_mirrors/TrinityCore.git编译配置与安装步骤mkdir build cd build cmake ../ -DCMAKE_INSTALL_PREFIX/home/$(whoami)/server make -j $(nproc) make install关键参数说明-DCMAKE_INSTALL_PREFIX指定服务器安装路径-j $(nproc)使用所有CPU核心加速编译3. 数据库配置与初始化TrinityCore需要三个数据库auth认证、characters角色和world游戏世界。初始化步骤如下登录MySQLsudo mysql -u root -p执行创建脚本假设源码在/home/wow/TrinityCoreSOURCE /home/wow/TrinityCore/sql/create/create_mysql.sql;create_mysql.sql内容摘要CREATE USER trinitylocalhost IDENTIFIED BY trinity; CREATE DATABASE world DEFAULT CHARACTER SET utf8mb4; CREATE DATABASE characters DEFAULT CHARACTER SET utf8mb4; CREATE DATABASE auth DEFAULT CHARACTER SET utf8mb4; -- 授权语句省略...避坑指南确保使用utf8mb4字符集以避免特殊字符问题如果使用MariaDB可能需要手动调整认证插件ALTER USER trinitylocalhost IDENTIFIED VIA mysql_native_password USING PASSWORD(trinity);4. 地图数据与配置文件地图数据是独立于源码的必备资源。从官方推荐源下载3.3.5a版本的地图文件wget https://tc.arctium.io/data/3.3.5a/maps_vmaps_dbc.7z 7z x maps_vmaps_dbc.7z -o/home/wow/server/data配置文件位于server/etc/目录需要重命名并编辑cd /home/wow/server/etc cp worldserver.conf.dist worldserver.conf cp bnetserver.conf.dist bnetserver.conf关键配置项修改配置项推荐值说明DataDir/home/wow/server/data必须使用绝对路径LoginDatabaseInfo127.0.0.1;3306;trinity;trinity;auth数据库连接信息WorldDatabaseInfo127.0.0.1;3306;trinity;trinity;world角色数据库连接CharacterDatabaseInfo127.0.0.1;3306;trinity;trinity;characters世界数据库连接Instance.IgnoreRaid1允许单人进入团队副本5. 服务器启动与账户管理启动顺序必须先认证服务器后世界服务器cd /home/wow/server/bin ./authserver ./worldserver 在worldserver控制台创建游戏账户account create test test account set gmlevel test 3 -1命令说明第一个test是账号名第二个是密码3表示GM等级-1应用于所有服务器6. 网络配置与公网部署要让服务器可被局域网或公网访问必须修改realmlist表USE auth; UPDATE realmlist SET address 你的公网IP WHERE id 1;多网络环境解决方案纯局域网环境UPDATE realmlist SET address 192.168.x.x;公网局域网共存INSERT INTO realmlist (name, address, localaddress, port) VALUES (LAN Realm, 192.168.x.x, 127.0.0.1, 8085);使用域名推荐公网部署UPDATE realmlist SET address yourdomain.com;端口转发配置示例sudo iptables -t nat -A PREROUTING -p tcp --dport 8085 -j DNAT --to-destination 192.168.x.x:8085 sudo iptables -A FORWARD -p tcp --dport 8085 -d 192.168.x.x -j ACCEPT7. 高级配置与优化性能调优参数参数推荐值影响范围MaxCoreStuckTime60服务器无响应超时PlayerLimit100同时在线玩家数SaveRespawnTimeImmediately1立即保存重生时间Rate.XP.Kill1.0经验值倍率添加机器人NPCBots下载补丁wget https://github.com/trickerer/Trinity-Bots/raw/master/NPCBots.patch应用补丁cd ~/TrinityCore patch -p1 NPCBots.patch重新编译并配置NpcBot.Enable 1 NpcBot.MaxBots 1,2,3,4,5,6,7,8,98. 日常维护与监控自动启动脚本systemd服务创建/etc/systemd/system/trinitycore.service[Unit] DescriptionTrinityCore World Server Afternetwork.target mysql.service [Service] Typesimple Userwow WorkingDirectory/home/wow/server/bin ExecStart/home/wow/server/bin/worldserver Restartalways [Install] WantedBymulti-user.target启用服务sudo systemctl daemon-reload sudo systemctl enable trinitycore sudo systemctl start trinitycore数据库备份脚本#!/bin/bash DATE$(date %Y%m%d) mysqldump -u trinity -ptrinity auth /backup/auth_$DATE.sql mysqldump -u trinity -ptrinity characters /backup/characters_$DATE.sql mysqldump -u trinity -ptrinity world /backup/world_$DATE.sql实际部署中发现使用绝对路径配置DataDir能解决90%的地图加载问题。对于公网部署建议搭配Cloudflare等CDN服务来缓解DDoS风险同时定期检查服务器日志中的异常登录尝试。

相关新闻