Files
Genarrative/docs/technical/RPG_CREATION_WORLD_ATTRIBUTE_SCHEMA_EDITING_2026-04-26.md
2026-04-28 20:25:37 +08:00

2.2 KiB
Raw Blame History

RPG 创作世界角色维度信息编辑落地说明

更新时间:2026-04-26

1. 背景

统一角色属性系统把一个世界中“角色能力如何被理解”收口到 CustomWorldProfile.attributeSchema.slots。这六个 slot 是世界级设定,不是单个角色自己的六个字段。

当前结果页世界页可以展示角色维度。旧方案曾允许编辑维度定义、正负信号和战斗/社交/探索用途,但这些字段会让创作和提示词下游过早背负规则说明。本轮收缩为只允许修订六个维度名称。

2. 本次目标

在“编辑基本设定”独立面板中允许用户编辑六个角色维度名称:

  1. 只修改 attributeSchema.slots 中每个维度的 name
  2. 不在可扮演角色或场景角色编辑器中新增单角色六维数值编辑。
  3. 保存时同步更新 profile.attributeSchema
  4. profile.ownedSettingLayers.ruleProfile.attributeSchema 存在,同步写入同一份 schema避免世界档案和设定层出现双源漂移。
  5. 前端只负责编辑名称,不新增属性结算逻辑,也不再保存维度说明、正负信号和用途文本。

3. 交互设计

入口位置:

  • 世界页点击“基本设定”里的编辑按钮
  • 打开现有“编辑基本设定”面板
  • 在基础世界文本字段下方增加“角色维度”区块

每个维度只展示并允许编辑“维度名称”。

4. 数据落点

保存路径:

  • profile.attributeSchema.slots[n].name
  • profile.ownedSettingLayers.ruleProfile.attributeSchema.slots[n].name,仅当 ownedSettingLayers 已存在时同步

系统仍保留 slotId 作为稳定键,解析旧草稿时会丢弃旧 definitionpositiveSignalsnegativeSignalscombatUseTextsocialUseTextexplorationUseText 字段。

不修改:

  • profile.playableNpcs[n].attributeProfile
  • profile.storyNpcs[n].attributeProfile

5. 验收

  1. 基本设定面板能看到六个角色维度名称。
  2. 修改任一维度名称后,保存到 profile.attributeSchema.slots,且不会写回旧说明字段。
  3. 编辑角色自身时不出现单角色六维数值输入区。
  4. UI 仍读取当前世界 schema不回退写死旧四维文案。