1. 为什么要研究TrinityCore ?
  2. (1)它是一个完整成熟的可运行调试的网游服务器框架。
  3. (2)它是一个跨平台的标准C++编写的项目,在Windows、Linux、MacOSX上都可编译运行。
  4. (3)它使用了ACE、OpenSSL、Socket Library等开源库。
  5. (4)代码质量高,适合于进阶C++高级程序员学习。

引言: 在2005年魔兽世界正流行时,有一批牛人基于官方WOW客户端生造一个模拟的服务器,这个开源项目叫Mangos,在于帮助人们了解网游服务器开发。 在2008年后,在Mangos的基础上又衍生了一个新的项目TrinityCore,经过多年的积累,魔兽私服TrinityCore已经相当稳定,可以正常的用官方客户端登录私服,体验魔兽世界。

但是由于魔兽版本过多,每更新一次WOW客户端就得对服务器进行调整,因为一旦客户端修改了网络包以及数据库结构,服务器也得同步更新,因此一个服务器版本只能对应一个指定的客户端版本。 这也导致想配置一个完整的私服环境是困难的,但本人经过两个月的不懈努力,终于成功搭建整个环境(需要各种文件资源的请QQ ME)。 

客户端使用官方的3.3.0 11159台服版本,客户端目录如下所示:

主要的资源文件为Data目录下的MPQ文件,打包存储了所有的资源文件。因为服务器端也需要部分资源文件,需要从客户端的MPQ文件里提取资源。

在11159服务器端包中,找到地图解压工具,如下图

将“TC2-3.3.0-V1.0.0.exe”文件放到WOW目录下,执行,得到dbc和maps两个文件夹,将两文件夹放到Trinity_Core_2目录下,作为服务器端资源文件。

从网上下载的源码包如下:

win文件夹下存放sln解决方案文件,如下图:

src文件夹下存放源代码文件。

sql文件夹下存放数据库sql文件,如下图:

正常执行顺序依次是:create_mysql.sql –》 realmd.sql –》 characters.sql–》 world.sql。

realmd数据库存放帐号和服务器列表信息,characters数据库存放玩家数据,world存放游戏信息。 在navicat formysql里执行sql文件(“运行批次处理文件”)

其中realmd和characters数据库只需要执行以上两个sql文件即可,里面可以没数据。但world数据库必须要有正式的数据,执行下面这个非常大的sql文件,该sql负责重建表,并插入大量数据(估计需要三四个小时)。

用Visual Studio 2005打开TrinityCore&Script VC80.sln文件,如下图:

主要有TrinityRealm和TrinityCore两个exe项目,其中zlib项目由于不知道什么原因,每次调试都重新编译,生成成功后将其卸载,由于只有shared项目直接依赖zlib库,右击shared属性,选择“管理员”-》“常规”-》“附加依赖项”,添加一条,如下图:

.\zlib__$(PlatformName)_$(ConfigurationName)\zlib.lib

由于要调试程序,要生成调试信息,并阻止VS对代码进行优化,因为一旦优化后就无法正常调试程序了,会出现查看不到变量信息,以及断点和代码不匹配的情况出现,设置如下(每个项目都要设置):

设置“调试信息格式”为“程序数据库Zi”

设置“优化”为“禁用”

exe项目还需要专门设置一项

设置“生成调试信息”为“是”

设置调试类型为“Release”,如下图

执行“重新生成解决方案”,在bin文件夹下生成dll和exe文件,如下图

转自:http://blog.csdn.net/lgh1700/article/details/7692394

TrinityCore 魔兽世界私服11159 完整配置的更多相关文章

  1. Nginx完整配置配置样例【官方版】

    我们主要参考nginx官方给出的完整配置的样例: https://www.nginx.com/resources/wiki/start/topics/examples/full/# 完整摘录如下: n ...

  2. nginx.conf 集群完整配置

    ###############################nginx.conf 集群完整配置############################### #user nobody; # user ...

  3. [Nginx]Nginx的基本配置与优化1(完整配置示例与虚拟主机配置)

    ---------------------------------------------------------------------------------------- 完整配置示例: [ n ...

  4. java ant 编译打包build.xml完整配置范例

    java ant 编译打包build.xml完整配置范例 <?xml version="1.0" encoding="UTF-8" ?> <p ...

  5. 一个完整配置例nginx.conf(生产环境中使用)

    一个完整的nginx配置案例,生产环境 一个完整配置例(生产环境中使用) user nobody nobody; worker_processes 4; worker_rlimit_nofile 51 ...

  6. [转载]Mybatis Generator最完整配置详解

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration ...

  7. 魔兽世界私服Trinity,从源码开始

    缘起因由 在一个无所事事的周末下午,突然想起魔兽世界,官方的账号很久没有上了,里面的大小号现在连满级都不是.以前曾经搭过传奇和星际争霸战网的私服自娱自乐,也听说过魔兽世界有开源的服务端模拟,既然兴致来 ...

  8. 私服 Nexus 的配置

    一.概述 1.概要 现在的项目基本都是用Maven来管理工程,这样一来在公司内容搭建一个私服就非常有必要了,这样一来可以管理公司内部用的JAR包,也可以管理第三方的各种JAR来,以免每次都要从外网的仓 ...

  9. 私服 Nexus 的配置 (转)

    https://www.cnblogs.com/yuanermen/p/4574473.html 一.概述 1.概要 现在的项目基本都是用Maven来管理工程,这样一来在公司内容搭建一个私服就非常有必 ...

随机推荐

  1. Redis Scan命令

    原地址:https://www.cnblogs.com/tekkaman/p/4887293.html [Redis Scan命令] SCAN cursor [MATCH pattern] [COUN ...

  2. Canvas 3D球形文字云动画特效

    Canvas 3D球形文字云动画特效 效果图: 代码如下,复制即可使用: (适用浏览器:360.FireFox.Chrome.Opera.傲游.搜狗.世界之窗. 不支持Safari.IE8及以下浏览器 ...

  3. 通过微信Android和iOS版,看两大系统的差异

    由于设计师或者产品经理使用的移动设备大部分是iPhone,所以在做设计时,容易忽略Android和iOS的差异,按照自己的使用习惯进行设计,导致大部分设计师或产品经理做出的设计都是基于iOS规范或习惯 ...

  4. Java第三阶段学习(八:网络通信协议、UDP与TCP协议)

    一.网络通信协议 1.概念: 通过计算机网络可以使多台计算机实现连接,位于同一个网络中的计算机在进行连接和通信时需要遵守一定的规则,在计算机网络中,这些连接和通信的规则被称为网络通信协议,它对数据的传 ...

  5. Angular快速学习笔记(2) -- 架构

    0. angular 与angular js angular 1.0 google改名为Angular js 新版本的,2.0以上的,继续叫angular,但是除了名字还叫angular,已经是一个全 ...

  6. vue-simple-uploader上传插件

    基于vue-simple-uploader封装文件分片上传.秒传及断点续传的全局上传插件 https://www.cnblogs.com/xiahj/p/vue-simple-uploader.htm ...

  7. windows下安装mysql8.0压缩版

         下面总结下安装过程: 首先解压下载好的压缩版本. 将解压后mysql的bin文件目录配置系统环境path变量中 使用cmd打开命令窗口,输入mysqld  --initialize命令初始化 ...

  8. 记一次重装系统(.net开发环境重装问题汇总)

    起因: 有一天,我突然感觉到电脑的运行明显变慢,慢的可怕,启动任务资源管理器一看,不看不知道,一看吓一跳,CPU使用率,物理内存皆100%,当时的第一印象,是电脑中病毒了吧!!,进入进程一看,有几个名 ...

  9. JAVAEE——宜立方商城13:Mycat数据库分片、主从复制、读写分离、100%Linux中成功安装Mysql的方法

    1 海量数据的存储问题 如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB.对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求.这个时候NoSQL ...

  10. bzoj 3999 线段树区间提取 有序链剖

    看错题目了,想成每个城市都可以买一个东西,然后在后面的某个城市卖掉,问最大收益.这个可以类似维护上升序列的方法在O(nlog^3n)的时间复杂度内搞定 这道题用到的一些方法: 1. 可以将有关的线段提 ...