编译MangosZero

最近研究了一下魔兽世界模拟器MangosZero,花了两天时间终于编译成功!现在把编译的过程做个完整的记录,以便让想要学习编译的同学们少走弯路!

服务器端运行界面:

客户端运行界面:

一:下载源程序

  所需软件Git-1.7.9-preview20120201和TortoiseGit-1.7.7.0-64bit,这里把下载地址提供给大家,百度网盘链接:http://pan.baidu.com/s/1pLbhfyb 密码:dwb5

  新建一个目录Mangos,右键Git Clone 输入 http://github.com/mangoszero/database.git,要勾选Recursive

  

     这里是下载数据库,下载完成以后,再右键选择Git Clone,输入https://github.com/mangoszero/server.git,同样也要勾选Recursive

  

  这是服务器源码。

  下载完成后,在win目录有些程序要先进行安装

  

   可选择32位或64的进行安装,安装完成之后,运行MaNGOS_EasyBuild.exe

      

       箭头所示表示可编译32位或者64位程序,有一个打勾即可,现在可以运行CMake生成解决方案

  建立一个空目录,用来放置生成的解决方案,比如 Server_VS

    

     点击configure

   

    点击Finish,完成后点击Generate开始生成解决方案,然后就可以编译了

二:导入数据库

将数据加载到MySQL

> cd Mangos
> cd database
> InstallDatabases.bat

起始就是运行database文件夹下的InstallDatabases.bat脚本。跟着提示一路配置下去。几点要注意:
1. 第一步输入N进行下一步
2. MySQL的密码就是上面安装MySQL设置的密码
3. 没有其他什么要求,剩下的配置都使用默认就好,下面的教程将根据默认配置来
如果一切顺利,你会在MySQL里面看到三个新的数据库,如下
这里写图片描述
它们分别是character0 mangos0 realmd

三:生成地图文件

1. 将server_build/bin/Debug/下的文件都拷贝到你的WoW客户端的根目录(也就是WoW.exe所在的目录)
2. 再将server_build/bin/Debug/tools/下的文件都拷贝到你的WoW客户端的根目录
3. 在WoW客户端目录下,运行ExtractResources.sh,跟着指引一步一步配置,当运行完后,会生成三个目录 dbc maps vmaps
4. 在Mangos目录下新建名为Data的文件夹,将上面的三个目录拷贝到Data文件夹下

四:配置Mangos Server

  1. 进入Mangos/server_build/bin/Debug/文件夹下,将mangosd.conf.dist文件重命名为mangosd.conf,并修改里面的内容

    DataDir = "."   
    

    修改为

    DataDir = "C:MangosData"
    

    假设你的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.
2. 将realmd.conf.dist文件重命名为realmd.conf

    LoginDatabaseInfo     = "127.0.0.1;3306;mangos;mangos;realmd"

改为:

    LoginDatabaseInfo     = "127.0.0.1;3306;root;123456;realmd"

五:创建帐号

客户端后登录会发现没有账号可用,注册账号的办法有两种:

  1. 第一种方法是通过SQL语句直接在数据库里面加

    INSERT INTO account
    (username, sha_pass_hash, email)
    VALUES
    ('用户名',SHA1(CONCAT(UPPER('用户名'),':',UPPER('密码'))), '邮件地址')
    

    替换命令中的 用户名、密码、邮件地址 即可。

  2. 第二种方法最简单,后面启动游戏服务器worldserver之后,在这个命令窗口可以输入GM命令:

    create account 用户名 密码
六:下载客户端及登陆器
链接:http://pan.baidu.com/s/1kVDiZt1 密码:lp1d
链接:http://pan.baidu.com/s/1pKTF7ej 密码:0uaj

   

  

原文地址:https://www.cnblogs.com/zhusd/p/6714652.html