博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TrinityCore3.3.5环境搭建
阅读量:6709 次
发布时间:2019-06-25

本文共 3500 字,大约阅读时间需要 11 分钟。

说起TrinityCore,可能知道的人不多,但是说起MaNGOS(芒果)知道的人应该就不少了。MaNGOS是一个魔兽私服服务器端,TrinityCore继承自TrinityCore并且做了优化,一直在更新,实属难能可贵,尤其是对于游戏服务器开发人员来说,更是一份不可多得的学习资料。

看看官网上这段话:“TrinityCore is an MMORPG framework that's built using C++, and using a back-end of MySQL for the DB content. Trinity was at one point a merger of MaNGOS with many patches submitted by users, that is no longer the case. Trinity is an individual project with a diverse development team, We love to hear from our users too, whether you want to give words of encouragment or if you have code for us to merge into the repo. Trinity has been cleaned up a lot, and will continue to be cleaned up and optimized over time. "

下面来看看怎么搭建TrinityCore的运行环境,网上可以搜到TrinityCore的一键安装,但是我们的目的是为了学习TrinityCore的代码,所以我们会自己编译server端。(向伟大的”墙“致敬,dropbox被封掉导致TrinityCore的数据库文件无法下载,还好我使用云盘搜索大法,惊奇的搜到了某位兄弟分享的一个数据库文件)用到的所有文件我都会给出国内云盘的分享地址。

注:目的是为了搭建一个可调试的server端,所以选择比较老的版本TrinityCore3.3.5,并且不会升级。

 

以下都是在win下进行,搭建32为TrinityCore运行环境。

 

GitExtensions 
Boost ≥ 1.49  
MySQL ≥ 5.1.0 
OpenSSL ≥ 1.0.0 
CMake ≥ 2.8.12 
ZeroMQ ≥ 3.2.4 
MS Visual Studio 2013 express 
 
下面是TrinityCore3.3.5.57自身的东西 
如果你需要下载魔兽世界客户端,请确保耐心和网速至少拥有一样。
 

 

环境搭建:

1:安装GitExtensions(一定要安装,虽然源码我也会提供,cmake需要用到),确保Git, MySYSGit, and KDiff三个都要选择安装,在git安装过程中选择”Run Git from the Windows Command Prompt“

 

2:安装vs2013,不多说了,地球人都知道

3:安装mysql,要记住自己设置的root的密码,字符集选择utf8,安装中选择加入环境变量。

4:boost,直接使用我上文提供的编译好的安装文件即可,安装完成后,设置环境变量BOOST_ROOT=你安装的boost的根目录

5:cmake,一路默认安装

6:openssl,其中有一步需要留意,就是会让选择把openSSL的dll拷贝到哪,要选择The OpenSSL binaries (/bin) directory

7:zeroMQ,一路默认安装

 

上面7个步骤安装完成之后,开始编译TrinityCore。

1:解压TrinityCore-TDB335.57.zip,TDB_full_335.57_2144_10_19.7z,并且在它们的同级目录下建立build目录,所以看起来是这样的。

2:打开cmake-gui,如下配置

然后点击configure,选择vs2013编译器,然后会开始生成vs2013工程文件,完成后如下

如果你看了官方教程,它会让你选择TOOLS,然后重新configure一次,选择TOOLS是为了生成从客户端提取配置文件的工具,所有配置文件我都会打包送出,所以我们可以跳过官方这一步,直接Generate即可。

3:进入build目录,打开TrinityCore.sln,选择release模式,编译。

编译完成后,进入build\bin\release目录,会看到

worldserver.conf.dist 

worldserver.exe 
authserver.conf.dist 
authserver.exe

这四个文件,把现在的config内的几个压缩文件解压到build\bin\release目录,然后把

libmySQL.dll - C:\Program Files\MySQL\MySQL Server 5.x\lib

libeay32.dll, ssleay32.dll - C:\OpenSSL-Win32\bin

libzmq-v120-mt-4_0_4.dll - C:\Program Files\ZeroMQ 4.0.4\bin

这4个dll也拷贝到build\bin\release目录内,现在build\bin\release目录如下

4:导入数据库

导入TrinityCore-TDB335.57\sql\create\sql_create.sql

选择auth数据库,导入TrinityCore-TDB335.57\sql\base\auth_database.sql

选择characters数据库,导入TrinityCore-TDB335.57\sql\base\characters_database.sql

选择world数据库,导入TDB_full_335.57_2014_10_19\TDB_full_335.57_2014_10_19.sql

选择world数据库,导入TrinityCore-TDB335.57\sql\updates\world\2014_10_19_00_world.sql

NOTE!!!,导入数据库时候,查看auth数据库的realmlist表,可以看到gamebuild字段为12340,一定要改为13930才行,

UPDATE realmlist SET gamebuild=13930 WHERE id=1;

如果不改的话,客户端可以看到服务器显示为离线状态,无法登录(我会给你我的吐血经历),分析见这里

5:修改server端配置

进入bin\build\release目录,authserver.conf.dist到新文件authserver.conf,拷贝worldserver.conf.dist到新文件worldserver.conf

打开authserver.conf,修改第140行LoginDatabaseInfo = "127.0.0.1;3306;root;root;auth",其中root,root是我的数据库的用户名root,密码也是root(自行修改)

打开worldserver.conf,修改93---95三行

LoginDatabaseInfo     = "127.0.0.1;3306;root;root;auth"

WorldDatabaseInfo     = "127.0.0.1;3306;root;root;world"
CharacterDatabaseInfo = "127.0.0.1;3306;root;root;characters"

6:修改客户端配置文件

确保客户端已经打补丁到了3.3.5.13930版本,打开Data\zhCN\realmlist.wtf,修改前两行

set realmlist 127.0.0.1

set patchlist 127.0.0.1

7:ok,现在已经搭建成功了,启动authserver和worldserver,worldserver启动成功后,可以输入命令

account create username password创建一个帐号,打开客户端,使用该帐号即可登录

 

放一张图片吧

 

转自:http://blog.csdn.net/qq575787460/article/details/41444811

你可能感兴趣的文章
读书笔记 UltraGrid(16)
查看>>
抛物线动画
查看>>
[LeetCode] Sparse Matrix Multiplication
查看>>
1005. 继续(3n+1)猜想 (25)
查看>>
使用POI循环写入数据时发现只有最后一列有数据
查看>>
Animation(四)
查看>>
USB转串口驱动安装及注意事项
查看>>
vue 中的computed和watch
查看>>
Delphi窗体显示Echarts图表
查看>>
使用模板时 error LNK2019: 无法解析的外部符号
查看>>
第四十六课、查找对话框的功能实现------------------狄泰软件学院
查看>>
在平台中使用JNDI 数据源
查看>>
Android中Listview实现分页加载效果OnScrollListener
查看>>
linux学习笔记
查看>>
js中获取数组中的最大值最小值
查看>>
R基础函数操作
查看>>
在linux中添加ftp用户,并设置相应的权限
查看>>
MySQL 5.1中文参考手册 - 学习笔记
查看>>
树莓派入手,相关设置以及使用迅雷远程下载
查看>>
IOS Note - Outlet(插座) & Action(动作)
查看>>