以前介绍了TDB0.0.5的渊源,现在继续介绍TDB内部的一些细节。从[TC2 wiki ]可以查到TDB_0.0.5结构比较详细的介绍。

在一个完整的TDB_0.0.5的MYSQL安装库中,你可以看到已经安装的库包括:1、realmd;2、characters;3、world。

realmd库的表比较少,主要是realmlist和account比较重要,realmcharacters主要记录每个服每个帐号有多少个角 色。realmlist主要记录每个服的IP地址和端口,而account记录帐号的信息。当一个帐号登录时,首先会在account中校验用户和密码, 然后返回realmlist中服列表给客户端。客户端选择服之后,根据服的ip/port就转给了trinity-core来处理了。

characters库主要是帐号的角色信息。这里主要有characters表,是描述角色的各种属性,比如名称,种族、职业,金钱,所在地图。还有个data字段比较特殊,由空格划分成子字段,每个字段的含义根据序号来描述。需要注意的是,在【character data 】中描述的索引和trinity core2实际使用的索引是不一样的,trinity core2使用的索引在UpdateFields.h中EObjectFields和EUnitFields定的,最大的索引PLAYER_END = UNIT_END + 0x047A = OBJECT_END + 0x008E + 0x047A = 0x0006 + 0x008E + 0x047A = 0x050E= 1294 。

除此之外,还有角色所在的行会(GUILD)、竞技场(ARENA)、副本(INSTANCE)、宠物(PET)、战场(BATTLEGROUP)、成就(ACHIEVEMENT)、天赋(TALENT)、声望(REPUTATION)等。更详细的介绍,参看【characters db 】。

world库是比较复杂的。他存储的是和玩家无关的一些东西,即使没有任何玩家登录到trinity-core,这些数据也是被需要的。比如说,没 有玩家,但副本的BOSS的相关数据也会被存储在world库中,当玩家进入副本后,这些数据就从world库中提取出来,创建一个新的副本。【world db 】是他比较详细的介绍,一般说来,每次升级,或者增加新的副本,都是修改world库中的数据,基本上不会涉及到realmd和characters库。

world库有几个部分:

1、生物(creatures)相关,包括生物的基本信息,装备、相关声望、相关任务、人工智能。

2、玩家(player)相关,包括种族、职业相关的基本属性、每级经验、创建期信息

3、宠物(pet)相关,包括级别相关的信息。

4、NPC相关,训练师,对白,任务、魔法等

5、物品(item),属性以及和职业种族相关的东西

6、任务(quest)相关.

7、魔法(spell)相关,范围、属性、过程、要求、脚本等。

8、技能(skill)相关。

9、游戏事件(game event)相关,这个比较复杂,相关的表也很多。

10、游戏物品(game object)相关,item是静态,game object可以是动态的,还包含有脚本。

11、寻径(waypoint)相关。

DBC是从客户端提取出来一些比较特殊的数据库文件,他的具体描述[dbc db ]介绍比较详细。

客户端的所有基础数据都是在DBC中放着,在服务端使用DBC也是从客户端解压出来,所以DBC的数据和表十分庞大。我粗略估算了下解压出来的DBC文件,有464个之多。包含的内容也可以归纳入world那样的各个种类。

魔兽世界私服trinitycore2的数据库TDB(3)相关推荐

  1. 魔兽世界私服trinitycore2的数据库TDB(1)

    TDB_0.0.5 ,又叫[Phoenix]是配合trinitycore2的数据库,他的官方网站在[http://www.trinitydatabase.org/ ],下载地址在[http://svn ...

  2. 魔兽世界私服trinitycore2的架构——世界对象

    魔兽世界私服trinitycore2的架构--世界对象 假设世界突然静止,你能够从中单独去掉的物体就是构成这个世界的对象,包括玩家.怪物.武器.矿石等.魔兽世界是个大型的网游,里面的种类十分丰富,更不 ...

  3. 魔兽世界私服trinitycore2的架构(6)国际化

    在T端中,是由数据库保存终端的显示信息,比如物品的名称.默认情况下,他们是enUS英文的.不过,我们需要将他们修改为中文模式.在芒果以及国内比较著名的私服中,都是直接在原地修改的,我原来也是.不过后来 ...

  4. 魔兽世界私服trinitycore2的架构(5)世界对象

    假设世界突然静止,你能够从中单独去掉的物体就是构成这个世界的对象,包括玩家.怪物.武器.矿石等.魔兽世界是个大型的网游,里面的种类十分丰富,更不用说对象了.当我看着trinity-core2的源码中, ...

  5. 开源魔兽世界私服搭建

    本文档是原创的,具有可操作性,不是网络上互相抄袭的博客. 觉得有用就赞一个,项目源码: https://github.com/geektcp/Namjagbarwa-wow 同名原创文章(界面样式更简 ...

  6. Linux运行魔兽世界单机,在linux下架设魔兽世界私服

    制作:高进波 日期:2009-3-19 主题:How to compile MaNGOS on Linux. 两小时在linux下建立魔兽世界私服,以下内容亲测通过,是自己建立魔兽世界私服难得的资料. ...

  7. 魔兽世界 Mangos Trinity TrinityCore 数据库 结构 大纲

    魔兽世界 Mangos Trinity TrinityCore 数据库 结构 大纲 角色数据库:characters-tbc ===================================== ...

  8. 魔兽世界私服单机版中maps,vmaps,mmaps地图的作用

    很多朋友可能每次使用魔兽世界单机版的时候,或则自己搭建魔兽世界私服服务器的时候,总会发现,需要从客户端中提取很多类型的地图 例如常见的有 Maps ,Maps是必须的,而且提取后,必须放到魔兽私服单机 ...

  9. TrinityCore 魔兽世界私服11159 完整配置

    为什么要研究TrinityCore ? (1)它是一个完整成熟的可运行调试的网游服务器框架. (2)它是一个跨平台的标准C++编写的项目,在Windows.Linux.MacOSX上都可编译运行. ( ...

最新文章

  1. (转自scrum中文网)给Scrum Master的十个建议,你值得拥有
  2. 机器学习模型太大难部署?这里有 3 个解决方案
  3. Xcode制作动态及静态Framework
  4. mysql 触发器_进阶msql触发器-指南
  5. SVM针对中文文本分类
  6. 深度学习(三十九)——深度强化学习(2)概述, Deep Q-learning Network(1)
  7. 临颖一高2021高考成绩查询,临颍一高举办2021年决战高考百日冲刺誓师大会
  8. PHP中Cookie的使用
  9. 【java】System.arraycopy为什么快
  10. 软件项目开发文档 模板
  11. MATLAB —— 散点图绘制
  12. python27是什么文件夹可以删除吗_python如何跳过错误继续运行,同时删除产生错误的文档...
  13. 2069: [POI2004]ZAW
  14. ​LeetCode刷题实战488:祖玛游戏
  15. 利盟Lexmark Intuition S508 一体机驱动
  16. 埃森哲java开发怎么样_技术丨埃森哲Data Privacy 、商汤科技、平安科技人工智能(AI)类日常实习...
  17. K8s ❉ 报错 cannot be handled as a**
  18. 使用模拟退火算法解决旅行家问题——C
  19. Ubuntu 下统计文件数量的命令
  20. 团队高效执行力从何而来?

热门文章

  1. PAIP.VCF通讯录的乱码以及导入导出
  2. 非药物治疗鼻炎方法大全(转)
  3. 学计算机类专业要什么牌子笔记本,请问学计算机专业的大学生买什么牌子的笔记本比较合适...
  4. CIA-SSD那点事儿
  5. 11-18我的编码八年抗战史
  6. 微型计算机课程总结,微机课程设计心得体会
  7. 通过宝塔面板搭建nginx图片服务器
  8. u盘格式化后还能用吗?
  9. CSS文本颜色等常用样式
  10. php生成百度换量 XML文件