本篇文章是我几个月前在CSDN的blog上写的,现在移过来
折腾了两天,终于将Mangos Zero在自己的Windows电脑上搭建起来了,下面总结一下安装Mangos Zero过程。网上也有很多安装Mangos Zero的教程,都比较老了,有些基本不能用了。
1. 安装环境
- Windows XP 64位
2. 前期准备
- MySQL(本人使用的是5.5的版本)
- SQLyog(这个根据个人喜好,就是MySQL的GUI)
- Git
- World of Warcraft 1.12 (Google找一下,我这边有一个,但忘记网址了,过一阵子上传到网盘上)
- VS 2010 或更高版本 (本人是VS2013)
3. 安装MySQL
MySQL的安装我就不多说了,不会的网上一大堆教程的,这里要记住MySQL安装过程中设置的密码,后面会用到。
4. 安装Git
安装指引一步一步安装就好,没有什么可注意的地方。
5. 创建一个根目录
创建一个名为Mangos的根目录,下面的所有操作我们都会在这个目录下进行
6. 下载database
> cd Mangos
> git clone --recursive http://github.com/mangoszero/database.git -b develop21
这里要多少几句,我使用的是develop21分支,一开始我使用的是release20这个分支,但发现database和server的版本不匹配,并且按网上的说法打Patch都解决不了,所有就用了最新的开发分支,经本人测试完全可用。因为是开发分支,可能开发者在上面修改导致一些其他问题,所以我自己也fork了一个这样的分支,大家也可用clone我自己的git
git clone --recursive https://github.com/Whosemario/database.git -b develop21
7.将数据加载到MySQL
> cd Mangos
> cd database
> InstallDatabases.bat
起始就是运行database文件夹下的InstallDatabases.bat脚本。跟着提示一路配置下去。几点要注意:
- 第一步输入N进行下一步
- MySQL的密码就是上面安装MySQL设置的密码
- 没有其他什么要求,剩下的配置都使用默认就好,下面的教程将根据默认配置来
如果一切顺利,你会在MySQL里面看到三个新的数据库,如下
它们分别是character0 mangos0 realmd
此时还没完,这里的character0的版本会和mangos server的版本不一致,打开character0的db_version这张表。
它的structure一列位1,但server需要的版本为2,所以我们要为character0打个Patch,在database/Character/Updates/rel21/目录下有一个sql文件Rel21_2_0_honor_flush.sql,将其运行即可。
8. 下载server
> cd Mangos
> git clone https://github.com/mangoszero/server.git --recursive -b develop21
相同的,我也有一个对应的repo
git clone https://github.com/Whosemario/server.git -b develop21
9. 编译server
到Mangos/server/win目录下,里面有很多安装软件,分别安装cmake和openssl,然后运行MaNGOS_EasyBuild.exe,点击按钮Check Now,如果上面的安装一切正常,会如图
点击Build Options,会有一些基本选项,按自己的需求去选择,没有什么大问题,然后点击Generate Project,最后会打开你的Visual Studio,然后rebuild整个项目,项目rebuild成功后,会在Mangos文件加下生成server_build的目录,然后进行下面两步操作:
- 将server_build/bin/Debug/下的文件都拷贝到你的WoW客户端的根目录(也就是WoW.exe所在的目录)
- 再将server_build/bin/Debug/tools/下的文件都拷贝到你的WoW客户端的根目录
- 在WoW客户端目录下,运行ExtractResources.sh,跟着指引一步一步配置,当运行完后,会生成三个目录 dbc maps vmaps。
- 在Mangos目录下新建名为Data的文件夹,将上面的三个目录拷贝到Data文件夹下
10. 配置Mangos Server
进入Mangos/server_build/bin/Debug/文件夹下,将mangosd.conf.dist文件重命名为mangosd.conf,并修改里面的内容
DataDir = "."
修改为
DataDir = "C:\Mangos\Data"
假设你的Mangos新建在C盘根目录下。
LoginDatabaseInfo "127.0.0.1;3306;mangos;mangos;realmd" WorldDatabaseInfo = "127.0.0.1;3306;mangos;mangos;mangos" ScriptDev2DatabaseInfo = "127.0.0.1;3306;mangos;mangos;mangos" CharacterDatabaseInfo = "127.0.0.1;3306;mangos;mangos;character0"
修改为:
LoginDatabaseInfo = "127.0.0.1;3306;root;123456;realmd"
WorldDatabaseInfo = "127.0.0.1;3306;root;123456;mangos0"
ScriptDev2DatabaseInfo = "127.0.0.1;3306;root;123456;mangos0"
CharacterDatabaseInfo = "127.0.0.1;3306;root;123456;characters"
假设你的MySQL密码为123456.
将realmd.conf.dist文件重命名为realmd.conf
LoginDatabaseInfo = "127.0.0.1;3306;mangos;mangos;realmd"
改为:
LoginDatabaseInfo = "127.0.0.1;3306;root;123456;realmd"
- 修改realmd数据库里面的realmlist表,将第一列带有MaNGOS的字符串替换为MyWoW
11. 修改客户端
- 打开realmlist.wtf,将最后的域名改为127.0.0.1
12. 启动游戏
- 打开Mango\server_build\bin\Debug\realmd.exe
- 打开Mango\server_build\bin\Debug\mangosd.exe
- 新建一个玩家
打开客户端WoW.exe
reference