跳转到内容

内容注册表

内容注册表是管理游戏中地图、物品、技能等静态元数据,并将其与遥测数据关联的功能。

通用遥测工具无法理解事件数据中 ID 所代表的含义。使用内容注册表可以:

  • item_id: "sword_01" → “烈焰之剑(稀有 / 武器类别)”
  • map_id: "map_desert" → “沙漠竞技场(PvP 地图)”

为遥测数据赋予游戏上下文,使有意义的分析成为可能。

类型说明示例
map游戏地图关卡、竞技场、世界
item游戏内物品武器、消耗品、装备
skill技能/能力攻击、增益、被动
character角色可操作角色、NPC
custom自定义类型任意游戏元素

内容注册表的数据与游戏的主数据保持同步。

从仪表盘逐个注册,或通过 REST API 注册。POST /v1/content 端点需要 X-Project-Id 请求头,并将条目包装在 entries 信封中:

Terminal window
curl -X POST https://app.framedash.dev/api/v1/content \
-H "X-API-Key: fd_your_api_key_here" \
-H "X-Project-Id: your-project-uuid" \
-H "Content-Type: application/json" \
-d '{
"entries": [
{
"contentType": "item",
"contentId": "item_hp_01",
"displayName": "Health Potion",
"metadata": { "rarity": "common", "category": "consumable" }
}
]
}'

从 CI 流水线使用 CLI 以 JSON 格式批量导入主数据。CLI 接受由条目组成的纯 JSON 数组(无需 entries 信封):

Terminal window
framedash content import ./game-content.json

game-content.json 格式:

[
{
"contentType": "item",
"contentId": "item_hp_01",
"displayName": "Health Potion",
"metadata": { "rarity": "common", "category": "consumable" }
}
]

每个条目必须包含 contentTypecontentIddisplayNamemetadata 为可选项。

在使用 SDK 发送事件时包含对应的内容 ID(与 contentId 对应的 map_iditem_id 等),即可在仪表盘中自动显示内容名称和元数据。