配置表联动关系查看器
一个用于查看 Unity 项目中配置表联动关系的编辑器工具,支持跨项目复用。
功能特性
- 配置表管理:搜索过滤、存在性检测、支持 TXT 文件
- 联动关系查看:正向关联和反向引用查询,支持跳转到关联表
- 数据格式可视化:自动解析
item_id_num、id_lv_num等复合格式 - Excel 操作:一键打开配置表,批量打开关联表
- 导出配置:批量导出为 JSON 和 C# 代码
- 清理空行:自动检测并删除 Excel 中
id列为空的垃圾数据行 - 智能体辅助:支持 AI 智能体高效维护配置文件
安装
- 复制
ConfigLinkViewer文件夹到目标项目的Assets/Editor/下 - 或使用 Git 子模块:
git submodule add <repository-url> Assets/Editor/ConfigLinkViewer
快速上手
Unity 编辑器菜单:Tools → 配置表联动查看器
界面布局
| 区域 | 功能 |
|---|---|
| 左侧面板 | 配置表列表,支持搜索过滤 |
| 右侧面板 | 当前表详情、联动关系、数据格式示例 |
| 顶部按钮 | 日常操作(清理空行、导出配置、刷新) |
| 配置标签页 | 路径设置、配置生成、智能体辅助 |
按钮说明
日常操作:
| 按钮 | 说明 |
|---|---|
| 清理Excel空行 | 删除 Excel 中 id 列为空或非数字的行 |
| 导出配置 | 将 Excel 批量导出为 JSON 和 C# 代码 |
| 打开表格 | 打开当前选中表的 Excel 文件 |
| 批量打开关联表 | 打开所有关联的配置表 |
配置操作:
| 按钮 | 说明 |
|---|---|
| 生成配置 | 扫描 Excel 文件夹,生成 ConfigLinkData.json 骨架 |
| 补全配置 | 运行 Python 脚本,自动分析字段引用关系 |
| 刷新 | 重新加载配置文件 |
使用流程
首次配置
- 切换到「配置」标签页
- 设置 Excel 文件夹路径
- 点击「生成配置」生成骨架
- 点击「补全配置」自动分析引用关系
日常维护
- 策划修改 Excel 后,点击「清理Excel空行」
- 点击「导出配置」生成运行时数据
智能体辅助
当需要补充中文配置或联动关系时,可使用 AI 智能体:
推荐提示词模板:
请帮我维护配置表联动查看器的配置文件:
- 目录:d:\Project\Unity\YY9\YY9_game\unity\Assets\Editor\ConfigLinkViewer\
- 补充缺失的中文名称和描述
- 添加未识别的字段引用关系
- 同时更新 table_info.json 和 ConfigLinkData.json
常见场景:
| 场景 | 操作 |
|---|---|
| 添加新表 | 在两份文件中添加 displayName 和 description |
| 添加关联 | 在 ConfigLinkData.json 的 relations 中添加 |
| 同步配置 | 将 ConfigLinkData.json 的中文配置同步到 table_info.json |
数据格式说明
| 格式 | 示例 | 说明 |
|---|---|---|
item_id_num |
1001_10_5 |
类型:1001, ID:10, 数量:5 |
id_lv_num |
100_30_5 |
ID:100, 等级:30, 数量:5 |
id_lv_count_delay |
100_30_5_120 |
ID:100, 等级:30, 数量:5, 时间:120秒 |
配置文件格式
ConfigLinkData.json
{
"tables": [
{
"name": "hero",
"displayName": "英雄",
"description": "英雄基础属性配置",
"fileExtension": ".xlsx",
"relations": [
{
"field": "skill_ids",
"target": "skill",
"targetField": "id",
"format": "",
"description": "技能ID列表"
}
]
}
]
}
table_info.json(中文名称数据源)
{
"entries": [
{
"name": "hero",
"displayName": "英雄",
"description": "英雄基础属性配置"
}
]
}
文件结构
Assets/Editor/ConfigLinkViewer/
├── ConfigLinkViewerWindow.cs # 编辑器窗口界面
├── ConfigLinkDatabase.cs # 数据管理和格式解析
├── generate_config_link_data.py # 自动分析脚本
├── ConfigLinkData.json # 完整配置数据
├── settings.json # 路径和格式模板配置
├── table_info.json # 中文名/描述(共用数据源)
└── README.md # 使用文档
注意事项
- Excel 文件命名必须与配置表名一致(如
hero.xlsx) - 路径设置自动保存到
EditorUserSettings,多项目隔离 - 清理空行会直接修改 Excel 源文件,建议先提交版本控制
- 补全配置需要 Python 环境
- 编辑配置文件后点击「刷新」重新加载
配置文件同步规则
| 文件 | 存储内容 | 更新时机 |
|---|---|---|
table_info.json |
中文名称、描述 | 添加新表或修改中文名时 |
ConfigLinkData.json |
完整配置 + 联动关系 | 生成/补全配置、添加关联关系时 |
更新日志
v2.0.1
- 优化智能体提示词,支持联动关系分析
- 修复配置表列表滚动区域高度计算问题
- 更新 Python 脚本的 AI 提示词格式
v2.0.0 — 零依赖重构
- 移除所有
MFrame直接引用,拖入即用 - 新增
settings.json,零代码扩展格式类型 - 新增
table_info.json,Python 和 C# 共用中文名数据源 - 窗口拆分为「查看」和「配置」两个标签页
- 编辑器启动时自动检测 MFrame 框架并绑定回调
v1.0.1
- 修复 Excel 共享字符串解析问题
- 新增
t="s"和t="inlineStr"单元格类型解析
v1.0.0
- 初始版本,支持配置表列表、联动关系查看、Excel 操作
许可证
MIT License