zoukankan      html  css  js  c++  java
  • 编译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

       

      

  • 相关阅读:
    bzoj1857: [Scoi2010]传送带
    积分:变步长梯形法
    《java并发编程实战》读书笔记7--线程池的使用
    《java并发编程实战》读书笔记6--取消与关闭
    jpa缓存导致无法查询到更新后的数据&android出现ANR的一个解决办法
    《java并发编程实战》读书笔记5--任务执行, Executor框架
    《java并发编程实战》读书笔记4--基础构建模块,java中的同步容器类&并发容器类&同步工具类,消费者模式
    《java并发编程实战》读书笔记3--对象的组合
    转载---HttpUrlConnection发送post请求汉字出现乱码的一个解决方法及其原因
    《java并发编程实战》读书笔记2--对象的共享,可见性,安全发布,线程封闭,不变性
  • 原文地址:https://www.cnblogs.com/zhusd/p/6714652.html
Copyright © 2011-2022 走看看