TrinityCore 魔兽世界私服11159 完整配置
- 为什么要研究TrinityCore ?
- (1)它是一个完整成熟的可运行调试的网游服务器框架。
- (2)它是一个跨平台的标准C++编写的项目,在Windows、Linux、MacOSX上都可编译运行。
- (3)它使用了ACE、OpenSSL、Socket Library等开源库。
- (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 完整配置的更多相关文章
- Nginx完整配置配置样例【官方版】
我们主要参考nginx官方给出的完整配置的样例: https://www.nginx.com/resources/wiki/start/topics/examples/full/# 完整摘录如下: n ...
- nginx.conf 集群完整配置
###############################nginx.conf 集群完整配置############################### #user nobody; # user ...
- [Nginx]Nginx的基本配置与优化1(完整配置示例与虚拟主机配置)
---------------------------------------------------------------------------------------- 完整配置示例: [ n ...
- java ant 编译打包build.xml完整配置范例
java ant 编译打包build.xml完整配置范例 <?xml version="1.0" encoding="UTF-8" ?> <p ...
- 一个完整配置例nginx.conf(生产环境中使用)
一个完整的nginx配置案例,生产环境 一个完整配置例(生产环境中使用) user nobody nobody; worker_processes 4; worker_rlimit_nofile 51 ...
- [转载]Mybatis Generator最完整配置详解
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE generatorConfiguration ...
- 魔兽世界私服Trinity,从源码开始
缘起因由 在一个无所事事的周末下午,突然想起魔兽世界,官方的账号很久没有上了,里面的大小号现在连满级都不是.以前曾经搭过传奇和星际争霸战网的私服自娱自乐,也听说过魔兽世界有开源的服务端模拟,既然兴致来 ...
- 私服 Nexus 的配置
一.概述 1.概要 现在的项目基本都是用Maven来管理工程,这样一来在公司内容搭建一个私服就非常有必要了,这样一来可以管理公司内部用的JAR包,也可以管理第三方的各种JAR来,以免每次都要从外网的仓 ...
- 私服 Nexus 的配置 (转)
https://www.cnblogs.com/yuanermen/p/4574473.html 一.概述 1.概要 现在的项目基本都是用Maven来管理工程,这样一来在公司内容搭建一个私服就非常有必 ...
随机推荐
- 【网络编程】使用getnameinfo()/getaddrinfo()/InetPton()
1.简要 从前用的网络编程函数现在又做了一定的改动,报了这么3个错误. error C4996: 'inet_ntoa': Use inet_ntop() or InetNtop() instead ...
- linux下brctl配置网桥
原文:http://zhumeng8337797.blog.163.com/blog/static/1007689142011643834429/ 先装好网卡,连上网线,这是废话,不用说了. 然后开始 ...
- usb device address error 110
ubuntu失灵了,怎么都起不来,报一堆错误usb device descriptor read/64, error 110......重启,换kvm的接口,usb键盘鼠标...终于在试了下面这个方法 ...
- centos6.8安装mysql5.6【转】
首先先要去看看本机有没有默认的mysql, 本地默认有的,我们应先卸载,在安装新的这个逻辑. rpm -qa | grep mysql 我本机默认安装的mysql5.1.73 下一步删除 rpm -e ...
- 用一句SQL查询相对复杂的统计报表
--统计从2017年3月份开始每个月金融服务支付前分期申请数以及通过(核账完成)数 ,ApplyTime)) ,ApplyTime)) as varchar)+'月' as 日期,count(*) a ...
- C++资源之不完全导引
1,前言 无数次听到“我要开始学习C++!”的呐喊,无数次听到“C++太复杂了,我真的学不会”的无奈.Stan Lippman先生曾在<C++ Primer>一书中指出“C++是最为难学的 ...
- 索引Hint提示(INDEX Hint)
定义:所谓的索引Hint提示,就是强制查询优化器为一个查询语句执行扫描或者使用一个指定的索引 前提:利用索引提示的前提就是当前表存在索引了,如果是堆表的情况,只能通过表扫描获取数据了. 用处:很多时候 ...
- IIS开多个HTTPS站点
默认情况一个服务器的IIS只能绑定一个HTTPS也就是443端口 要实现多个站点对应HTTPS只能更改IIS配置 地址:C:\Windows\system32\inetsrv\config\appli ...
- hdu 5038 (2014北京网络赛G 排序水题)
题意:有n个数字,带入10000 - (100 - ai) ^ 2公式得到n个数,输出n个数中频率最大的数,如果有并列就按值从小到大都输出输出,如果频率相同的数字是全部的n个数,就输出Bad....题 ...
- zabbix3.4+grafana5.0.1数据可视化
转自:https://blog.csdn.net/xiaoying5191/article/details/79530280