Achievement.dbc
成就表(成就dbc,包含所有的成就)。CHM 详解涵盖62列:编号、阵营(0=部落,1=联盟,-1=双方)、地图、前一个(系列成就)、名称(16语言)、描述(如描述为空则是统计选项)、分类(参考 Achievement_Category.dbc)、点数(0/5/10/15/20/25/30/50)、组中次序、标识(256=每服唯一玩家,768=每服唯一团队)、技能图标、奖励、要求、引用成就等。
字段结构 - CHM详解
| 序号 | 字段名 | 类型 | 说明 |
|---|---|---|---|
| 1 | ID | int | 编号(CHM:成就编号) |
| 2 | Faction | int | 阵营(CHM:阵营,0=部落,1=联盟,-1=双方) |
| 3 | MapID | int | 地图(CHM:地图,只有设置跟地区相关的成就时才使用,否则为-1) |
| 4 | Previous | int | 前一个(CHM:前一个,如果这个成就属于一个系列,这里就是前一个成就的编号,否则为0) |
| 5-20 | Name_Lang_* | varchar(100) | 名称(CHM:成就的名称,16种语言) |
| 21 | Name_Mask | int | 未知(CHM:未知,貌似总为 0xFF01FE) |
| 22-37 | Description_Lang_* | varchar(300) | 描述(CHM:如果描述为空,说明这不是一个成就,而是统计选项的一部分) |
| 38 | Desc_Mask | int | 未知(CHM:未知,貌似总为 16712190,极少情况下是 16712188) |
| 39 | Category | int | 分类(CHM:成就分类编号,参考 Achievement_Category.dbc) |
| 40 | Points | int | 点数(CHM:点数,取值0、5、10、15、20、25、30、50) |
| 41 | OrderInGroup | int | 组中的次序(CHM:组中的次序,最小值是1) |
| 42 | Flags | int | 标识(CHM:标识,256=每个服务器只有一个玩家能获得此成就,768=每个服务器只有一个团队能获得此成就) |
| 43 | IconID | int | 技能图标(CHM:显示的图标) |
| 44-59 | Reward | varchar(100) | 奖励(CHM:奖励,包括第47列的奖金(额外的奖励文本)) |
| 60 | Unknown | int | 未知(CHM:未知) |
| 61 | RequiredCount | int | 要求(CHM:要求,得到此成就需要满足的要求,例如成就要求你获得25个徽章,那这里就是25) |
| 62 | ReferenceAchievement | int | 引用的成就(CHM:引用的成就,包括所有完成的标准) |
重要字段详解
阵营(第2列)
CHM 详解:0=部落,1=联盟,-1=双方。控制成就的阵营限制。
CHM 详解:0=部落,1=联盟,-1=双方。控制成就的阵营限制。
标识(Flags,第42列)/ 服务器唯一成就
CHM 详解揭示了标识的特殊值:256=每个服务器只有一个玩家能获得此成就(服务器第一),768=每个服务器只有一个团队能获得此成就。
CHM 详解揭示了标识的特殊值:256=每个服务器只有一个玩家能获得此成就(服务器第一),768=每个服务器只有一个团队能获得此成就。
成就点数(第40列)
CHM 详解明确点数取值范围:0、5、10、15、20、25、30、50。不是任意值。
CHM 详解明确点数取值范围:0、5、10、15、20、25、30、50。不是任意值。
描述为空时的特殊含义
CHM 详解特别指出:"如果描述为空,说明这不是一个成就,而是统计选项的一部分"。这些条目显示在成就界面的统计栏目中而非成就列表。
CHM 详解特别指出:"如果描述为空,说明这不是一个成就,而是统计选项的一部分"。这些条目显示在成就界面的统计栏目中而非成就列表。
使用技巧
- 系列成就:使用"前一个"(Previous)字段链接系列成就的前后关系
- 引用成就:第62列"引用的成就"指向包含所有完成标准的引用源
- 成就点数:必须使用规定的取值,不能自定义
- 关联关系:Achievement → Achievement_Category(分类),Achievement → Achievement_Criteria(具体条件)