Dialogue Script IntelliSense
用于编写 SUDS 对话脚本的 VSCode 扩展。
功能
- 语法高亮、诊断和 DSL 格式化。
- 说话者、姓名引用、按键提示、富文本样式及事件补全。
- 动态说话者补全,仅使用注册表中勾选动态的脚本 ID。
- 标签跳转、引用查找、大纲和折叠。
- 可配置的稳定富文本颜色。
- 已保存项目数据自动同步,无须打开 Unreal Editor。
开始使用
- 安装扩展,打开可信 Unreal 项目中的 .sud 文件。
- 项目负责人提供 .dialogue-code-assistant/project.json,并将它随项目提交。
- 扩展自动生成本机索引;首次读取完成后即可使用项目补全。其他成员不需要重复配置。
当前内置资产读取支持 Windows x64。没有项目配置时,基础语法、高亮和格式化仍可使用。
项目配置
下例中的资产路径是占位示例,请替换为项目的实际来源。也可以从 配置示例 开始。
{
"schemaVersion": 1,
"sources": {
"nameTables": ["/Game/Dialogue/ST_Names"],
"inputActions": "/Game/Dialogue/DT_InputActions",
"richTextStyles": "/Game/Dialogue/DT_TextStyles",
"eventTables": ["/Game/Dialogue/DT_Events"]
}
}
需要动态说话者时,在 sources 中增加:
"dynamicSpeakers": {
"registry": "/Game/Dialogue/DA_Speakers",
"roots": ["Game.Dialogue.Speaker"]
}
roots 应与项目允许省略的说话者前缀一致。候选显示脚本 ID,实际姓名由游戏运行时决定。
project.json 是共享配置;editor-data.json 是自动生成的本机缓存,不需要手工编辑或提交。配置文件不需要填写机器的绝对路径。来源、字段映射和个人覆盖设置可在 VSCode 的 Dialogue Script IntelliSense 设置中调整。
保存数据表或动态说话者注册表后,补全会自动更新。未保存的资产修改不会进入索引。只读取配置的资产,不修改它们。
常用操作
- Ctrl+Space:显示补全。
- F12:跳转到定义。
- “格式化文档方式…”:选择 Dialogue Script IntelliSense。
- “Dialogue Script IntelliSense: 刷新项目数据”:立即重新同步。
- “Dialogue Script IntelliSense: 查看项目数据”:查看当前索引。
遇到问题请参阅 使用帮助。
许可证
本扩展保留上游版权和许可声明。详见 LICENSE.txt 与 第三方许可。