Advertisement

TrinityCore 编译安装指南

阅读量:

简介

《魔兽世界:巫妖王之怒》的虚拟服务器TrinityCore在Windows下的安装说明,参考官方Wiki的Install Guide

一、Windows 环境需求

  • CPU型支持SSE2指令集
    • 建议使用Boost≥1.66版本及以上
    • MySQL支持≥5.6及5.7系列版本
    • 该库要求OpenSSL≥1.0.x版本
    • CMake版本建议选用3.8及以上
    • 微软Visual Studio社区版及以上的安装要求为Windows系统

1.安装 Git

  • 设置 Git 和 图形界面 Tortoise Git
    • 注意:在运行 Git 时,在路径选择部分,请选择 "从 Windows 命令提示符运行 Git"

2.安装 IDE

  • 获取并安装Visual Studio 2019官方版本:访问https://visualstudio.microsoft.com/zh-hans/
  • 设置工作负载为“基于C++的桌面开发”。
  • 若需离线安装,请参考VS官方指南:运行vs_community.exe -l C:\vslayout -a Microsoft.VisualStudio.Workload.NativeDesktop -i Microsoft.VisualStudio.Workload.Platform独立 -c zh-CN。

3.安装 MySQL Community

  • 获取MySQL 5.7 安装包,请访问 官网,点击下载按钮。
    • 访问下载页面后,请点击最底部的蓝色提示 "No thanks, just start my download."。
    • 当安装接近完成时,请确保已选择了 "Launch the MySQL Instance Configuration Wizard" 选项后点击 "Finish"。
    • 在配置过程中,默认设置通常足够使用。建议用户记住登录名和密码,并考虑注册为服务以实现自动启动。

4.安装数据库管理软件

  • Navicat Premium
  • MySQL Workbench(该款软件)(安装选项丰富)(操作界面较为复杂)(其特色在于能够建立数据库模型)
  • 在管理软件中建立数据库连接(输入指定的用户名和密码以完成测试)

5.安装 Boost

  • 获取Boost,访问链接"Prebuilt windows binaries"(当然也可以自行编译,请注意时间可能稍长)
  • VS 2019 支持Boost最小版本为[1.70](可参考源forge
  • 配置到标准位置[C:\local\boost_1_xx_0]后创建环境变量BOOST_ROOT"C:/local/boost_1_70_0"(请确保路径无尾部斜杠如图所示)
boost环境变量设置

6.安装 CMake

安装程序用于下载并执行CMake ,请指定最新版本,并建议选用64位版本。
如果存在多个MySQL服务器版本,请根据需求选择合适的 MySQL 版本进行配置。
您需要将CMake工作目录设置为选定 MySQL 版本的安装路径,并将 MySQL 的安装路径加入环境变量 MYSQL_ROOT。
请注意,在路径中应使用斜杠而非反斜杠。

7.安装OpenSSL

  • 获取OpenSSL,建议选择64位版本,并安装"Win64 OpenSSL v1.1.x"版本软件,请不建议选择"Light"版本。
  • 当安装程序提示缺少Visual C++库时,请自行从官网下载安装。

8.可选

  • 若在不同的PC设备上进行编译/运行Trinity,则必须先安装Visual C++ 2017开发环境。
  • 特别提示:TrinityCore无法在Windows XP或Windows 2003系统版本上运行。

二、源码拉取和编译

1.从GIT拉取源码

  • 设置TortoiseGit,如有其他问题请参考Git教程

  • 在任务栏菜单中找到并打开"TortoiseGit\PuTTYgen"应用程序,选择"RSA",然后点击"Generate"

  • 在进度条完成后轻晃鼠标以便保存私钥(p)

  • 将从Puttygen复制到下方文本框中的公钥粘贴到密钥位置(p)

  • 打开GitHub账户设置界面

  • 添加新的SSH密钥

  • 在项目配置中输入标题(p),在密钥字段中粘贴之前生成的公钥(p)

  • 设置SSH客户端参数:打开"TortoiseGit\Settings",进入"Network",选择"SSH Client",点击"Browse..."打开"TortoiseGitPlink.exe"文件夹

  • 访问Trinity源码库,然后单击“Clone and download”,最后获取复制连接信息。

  • 创建一个名为"D:\Trinity"的目录。

    • 进入该目录后进行如下操作:
      • 首先右键点击以调出菜单。
      • 选择并激活包含‘Load Putty Key’选项。
      • 将光标移至该选项上以激活它。
      • 单击‘…’按钮时会弹出保存该私钥的位置对话框。
  • 在‘Directory:’字段中输入'D:\Trinity\Source’。
  • 选择包含‘Load Putty Key’选项,并将光标移至该选项上以激活它。
  • 单击‘…’按钮时会弹出保存该私钥的位置对话框。
  • 完成所有设置后点击OK完成操作。

在下载完成后进入源码根目录->单击右键选择TortoiseGit选项->→ 'Switch/Checkout...'->从下拉菜单中选择分支'3.3.5'>点击"OK">切换到版本...

2.使用CMake配置和生成Visual C++解决方案

  • 编译前先建立编译文件目录,比如"D:/Trinity/Build".
  • 运行CMake -> 点击 Browse Source… -> 选择源码目录"D:/Trinity/Source"
  • 点击 Browse Build… -> 选择编译目录"D:/Trinity/Build"
  • 点击 Configure -> 确保"Use default native compilers"被选中 -> 选"Visual Studio 16 2019" -> 选"x64" -> 点Finish
  • 确保"Tools"被选中(用于解包生成服务器所需资源),之后更新源码重新编译源码时可不选
  • 再次点击Configure -> 点击Generate,生成VS解决方案所需的相关文件到"D:/Trinity/Build"中
  • 点击 Open Project, 打开VS2019并打开项目源码

3.编译源码

生成

请稍等片刻后重新启动计算机以确保系统稳定运行

单击菜单栏中的【生成

将活动解决方案的配置设为Releases状态

将活动解决方案平台属性设为x64,并确认所有已安装软件均为64位版本

然后点击关闭按钮退出设置界面

在解决方案资源管理器窗口中对ALL_BUILD项目执行右键清理操作

随后单击右键再次选择ALL_BUILD项目以启动编译过程

当编译成功时,在D:\Trinity\Build\bin\Release目录下会找到生成的可执行文件

4.保持源码更新

  • 在源码目录"D:\Trinity\Source"中进行右键点击操作后依次选择"Git Sync"选项并提交
  • 启动CMake后按照指引依次配置生成并重新启动项目
  • 启动世界服务器 并留意命令行窗口显示的SQL脚本更新信息

三、提取资源文件 DBC Maps VMaps MMaps

为了将'D:\Trinity\Build\bin\Release'中的指定4个可执行文件移动至WOW客户端(3.3.5)的根目录中

  • map extractor 程序提取 db 和 cam 数据库项目

  • vmap4 extractor 解析相应的地图数据

  • mipmap generator 生成各类型的游戏模块

  • vmap4 assembler 组装各个部分的组件

将'D:\Trinity\Source\contrib\extractor.bat'批处理文件移动至客户端主目录下 → 以右键点击方式打开 extractor.bat → 以 elevated 命令方式运行该程序

按住Enter键执行命令,并进行DBC与MAPS文件的提取。在提取DBC与MAPS完成后,请再次按住Enter键执行命令以获取VMAPS文件。随后,在耗时超过一小时的情况下无法中断,请继续执行命令以完成M MAPS文件的提取。

在提取完成后,并将其迁移至服务端程序根目录D:\Trinity\Build\bin\Release中的指定位置

四、安装数据库

启动指定的MySQL数据文件D:\Trinity\Source\sql\create\create_mysql.sql -> 配置账号信息 -> 运行脚本以建立所需数据库表结构:

  • Auth:账号存储库 - 包含账号名称、口令、管理员权限以及服务器信息等

  • Characters:角色存储库 - 包括各种角色数据、背包物品以及拍卖行记录

  • World:世界存储库 - 包含游戏体验相关内容如NPC行为、任务列表以及物品清单

获取数据库脚本,源自官方源码库下载sql

  • 请记住每个数据库脚本独立于其所属的分支,请确认'TDB 335.xxxxx'对应的主分支是第3.3.5版本。

  • 请下载带有'.7z'后缀的压缩文件,并使用7zip进行解压。

  • 将解压完成后的SQL脚本文件放置在与worldserver.exe处于同一目录结构下的'D:\Trinity\Build\bin\Release'路径中。
    *请注意无需自行管理数据库配置。若您的设置要求手动导入数据库,请务必禁用worldserver.conf中的Updates.AutoSetup选项。

保持数据库更新

  • 安装完成后,每次启动"worldserver.exe"时,将自动运行最新的SQL升级脚本,无需人工操作.

五、Worldserver 和 Authserver配置

在绝大多数基本配置情境下,在本地主机地址(127.0.0.1)的IP配置以及默认绑定IP地址(IPv4全量)都应予以保留。

修改 authserver.conf 配置文件

删除authserver.conf.dist文件中的".dist"扩展名,并通过文本编辑器Notepad++打开该文件。定位至MySQL SETTINGS配置区域,并将LoginDatabaseInfo字段设置为localhost, 3306, trinity, trinity, auth。

修改 worldserve.conf 配置文件

  • 首先跳过worldserve.conf.dist中的’.dist’扩展项并打开该配置文件中的'CONNECTIONS AND DIRECTORIES'部分。
  • 将LoginDatabaseInfo字段设置为localhost, 3306, trinity, trinity, 并指定身份验证参数auth。
  • WorldDatabaseInfo字段被配置为localhost, 3306, trinity, trinity, 并指定世界参数world。
  • CharacterDatabaseInfo字段则被设置为localhost, 3306, trinary(tr), trinary(auth), 并指定角色参数characters。

请将斜体文字设置为您的用户名和密码

修改服务器IP地址(本机测试可忽略该步骤)

  • 请确保将将进入的实际区服地址分配给Internet连接,请配置auth数据库中的realmlist表。

  • 按以下步骤操作:首先打开数据库管理工具;接着依次打开auth数据库和realmlist表;最后根据需求设置address字段。

  • 对于同一路由器下的不同计算机(通常位于同一局域网内),建议使用服务器IP地址。

  • 当WoW和TrinityCore运行在同一台计算机上且仅由你进行连接时,请保留默认配置。

  • 如果希望其他用户也能访问您的服务器,请访问链接获取外部IP地址。

请指定字段'auth.realmlist.gamebuild'的值为您的魔兽世界客户端版本号(中国大陆地区对应13930, 台湾地区对应12340)。

六、启动服务器

运行 authserver.exe - 登录与网关程序

复制代码
 * 允许你输入用户名和密码来连接到区服选择界面

运行 worldserver.exe - 游戏主程序

您可以将自己登录至所选区服本身;一进入游戏后,请确保不再让他人也能登录至该服务器。

创建账号并授予GM权限,在worldserver.exe的DOS窗口中输入如下命令:

  • 注册一个新的账号:account.create();示例:account.create(test.test)
  • 属性值设置为true时才允许访问游戏世界:player.level >= 2 && player.cash >= 500
  • 授予用户GM权限:account.set(user, gmLevel, 3, -1);示例:account.set(gmUser, gmLevel, 3, -1)

七、配置WoW客户端

登录到客户端"World of Warcraft\Data\zhCN"目录 -> 访问"realmist.wtf"文件 -> 设置为 五.4 步骤中的IP

  • 将第一条命令更改为指定realmlist变量,并根据表格中的IP地址设置其值(例如:realmlist = 127.0.0.1)

    • (可选)当运行WoW Launch.exe时,在客户端配置中应将patchlist设置为与realmlist相同的IP地址和DNS名称

打开游戏,输入刚才创建的GM账号,在艾泽拉斯的世界中尽情遨游吧!

GM命令大全

日志配置

全部评论 (0)

还没有任何评论哟~