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来管理工程,这样一来在公司内容搭建一个私服就非常有必 ...
随机推荐
- 通过图片获取gps地理位置
别人说通过一张照片就可以定位你的位置,看来个视频,仔细研究了一下自己的照片没想到真的可以做到,想想真的有点可怕. 如何通过一张照片去定位这张照片的经纬度下面我以我手机中的照片为例. 我们通过pytho ...
- tomcat报错catalina.sh: line 401: /usr/java/jdk1.7.52/bin/java: No such file or directory
将生产服务器的Tomcat目录打包过来后解压后,启动Tomcat后,发现如下问题: # ./shutdown.sh Using CATALINA_BASE: /usr/local/tomcat ...
- vue项目使用vw单位适配移动端方法
传送门: https://blog.csdn.net/zjw0742/article/details/79337336
- CMT跟踪算法学习笔记(一)
关于这个算法,已经有网友写出笔记. 这位网友用画图的方式总结出了算法的各个流程,并总结了源码中的各个类:http://blog.csdn.net/roamer_nuptgczx/article/det ...
- H5页面调用手机打电话功能
<head>里面加上: <meta name="format-detection" content="telephone=yes"/> ...
- #CSS margin-top父元素下落
[我的解决方法] 给该父元素添加如下代码 border-top: 1px solid rgba(0,0,0,0); box-sizing:border-box; [原因] css2.1盒模型中规定的内 ...
- 如何简单区分Web前后端与MVC
MVC是开发所有软件所必须涉及的基本几个划分 M主要负责数据与模型,V主要负责显示C主要负责交互与业务所以不管是前端还是后端,都是有MVC的.MVC是一个对于软件简单的抽象,不管是M还是V,还是C都是 ...
- 【PAT】1051 Pop Sequence (25)(25 分)
Given a stack which can keep M numbers at most. Push N numbers in the order of 1, 2, 3, ..., N and p ...
- 【AtCoder】AGC028 (A-E)题解
A - Two Abbreviations 如果有最小答案的话这个答案一定是N和M的lcm 我们考虑一下什么情况下 \(k \frac{L}{N} = h \frac{L}{M}\)且\(k,g\)互 ...
- 【LOJ】#2269. 「SDOI2017」切树游戏
题解 把所有的数组一开始就FWT好然后再IFWT回去可以减小常数 从13s跑到0.7s-- 可以参照immortalCO的论文,感受一下毒瘤的动态动态DP 就是用数据结构维护线性递推的矩阵的乘积 由于 ...