AreaPOI.dbc
区域兴趣点定义文件。控制在 overhead map(世界地图)上显示的兴趣点,包含战场地图。兴趣点包括文本、图标、定位和其他杂项信息
文件概述
AreaPOI.dbc 定义了世界地图(按M键打开的界面)上显示的各个兴趣点(Point of Interest)。包括城镇、飞行点、副本入口、重要NPC位置等地图标记,每个POI显示为一个图标并附带主名称和副名称,点击可查看详细信息。也包含战场地图上的兴趣点。
列结构
| 列号 | 名称 | 类型 | 详细说明 |
|---|---|---|---|
| 1 | 编号 | 整数 | 兴趣点唯一标识符 |
| 2~12 | 图标 | 整数 | 兴趣点图标资源信息(多列定义图标外观) |
| 13 | X | 浮点数 | 兴趣点在地图上的 X 坐标 |
| 14 | Y | 浮点数 | 兴趣点在地图上的 Y 坐标 |
| 15 | Z | 浮点数 | 兴趣点在地图上的 Z 坐标 |
| 16 | 地图编号 | 整数 | 表明是哪个地图的兴趣点,参考 Map.dbc |
| 17 | 值1 | 整数 | 附加数值(用途待确认) |
| 18 | 区域编号 | 整数 | 所属区域编号,参考 AreaTable.dbc |
| 19~34 | 名称 | 字符串 | 兴趣点主名称(本地化字符串) |
| 35 | 名称标识 | 整数 | 主名称标识,疑似总为 16712190(0xFF01FE) |
| 36~51 | 名称2 | 字符串 | 兴趣点副名称(本地化字符串,如区域描述) |
| 52 | 名称标识2 | 整数 | 副名称标识。如果有副名称时一般为 0xFF01FE,否则为 0xFF01FC |
| 53 | 世界状态 | 整数 | 关联的世界状态ID,控制兴趣点的显示条件 |
| 54 | 值2 | 整数 | 附加数值(用途待确认) |
重要字段详解
图标列(2~12)
多列共同定义兴趣点在世界地图上显示的图标样式。不同重要程度和类型的兴趣点使用不同的图标资源。
坐标系统(X, Y, Z)
兴趣点在游戏世界中的三维坐标位置:
- X/Y/Z:精确定位兴趣点在世界空间中的位置
- 坐标值需要与 Map.dbc 中对应地图的坐标系统一致
- 用于在世界地图上正确标记兴趣点位置
地图编号(列16)
指定该兴趣点属于哪张地图,参考 Map.dbc。不同地图(如东部王国、卡利姆多、外域、诺森德等)各自拥有独立的兴趣点集。战场地图的兴趣点也在此定义。
名称与副名称
每个兴趣点有两个名称字段:
- 名称(列19~34):兴趣点的主名称,如"闪金镇"、"十字路口"
- 副名称(列36~51):兴趣点的副名称或补充描述
- 名称标识(列35):主名称的标志位,通常为 16712190
- 名称标识2(列52):副名称的标志位,有副名称时为 0xFF01FE,否则为 0xFF01FC
世界状态(列53)
关联 WorldState,用于控制兴趣点在特定条件下的显示/隐藏:
- 冬拥湖的战斗中与战斗外的不同显示
- 阶段性副本解锁后显示新入口标记
- 节日活动期间显示的临时兴趣点
使用技巧
- 自定义地图添加兴趣点时,坐标需要与 Map.dbc 中的坐标系统一致
- 图标引用的是固定的图标图集,自定义图标需要修改客户端资源
- 名称和副名称支持多语言,通过不同的列索引实现
- 地图上有多个层级(大陆地图、区域地图),兴趣点需要设置在正确的层级
- 名称标识列的值对于确认字符串是否有效非常重要