# 场景多幕创作与流程改造实施进度 2026-04-20 更新时间:`2026-04-20` ## 1. 本轮落地范围 本轮先完成 `scene_chapter` 的第一批基础链路,让“场景章节 -> 多幕 -> 主角色 -> 幕背景/相遇 NPC”真正进入现有创作工具和草稿系统。 本轮目标不是一次性做完 PRD 全量能力,而是先把下面这条主干打通: 1. 草稿层可以承载 `scene chapter / scene act` 2. 草稿编译器可以把 `scene_chapter` 编译成正式卡片 3. 创作页可以看到、打开、编辑 `scene_chapter` 4. 编辑后的幕信息可以正确写回草稿 5. 运行时共享层先具备读取幕背景、主角色、相遇 NPC 池的基础能力 ## 2. 本轮已落地 ## 2.1 草稿与运行时结构 已补齐多幕相关结构: 1. `CustomWorldFoundationDraftProfile.sceneChapters` 2. `CustomWorldFoundationDraftSceneChapter` 3. `CustomWorldFoundationDraftSceneAct` 4. `CustomWorldProfile.sceneChapterBlueprints` 5. `StoryEngineMemoryState.currentSceneActState` 同时补齐了地点/营地草稿里的 `imageSrc`,避免幕背景回落时丢失现有场景图资产引用。 ## 2.2 scene_chapter 草稿编译 `server-node/src/services/customWorldAgentDraftCompiler.ts` 已完成第一批接入: 1. `scene_chapter` 正式进入草稿编译结果 2. 支持从显式 `sceneChapters` 或地点/章节数据回退生成场景章节卡 3. 每张卡会编译出场景摘要、幕结构总览、每幕背景图、主角色、辅助 NPC、幕目标、过渡钩子 4. 每幕生成动态可编辑 section id 5. 已增加基础警告: - 幕数不足 - 缺背景图 - 缺相遇 NPC - 主角色不在第一位 - 缺线程挂钩 - NPC 或线程引用失配 ## 2.3 scene_chapter 草稿编辑 `server-node/src/services/customWorldAgentDraftEditService.ts` 已支持: 1. 编辑场景章节标题、摘要 2. 编辑每幕标题、摘要、背景图链接、相遇 NPC、幕目标、过渡钩子 3. `encounterNpcIds` 支持用角色 id 或角色名回写 4. 回写后自动用第一位 NPC 覆盖 `primaryNpcId` `server-node/src/services/customWorldAgentChangeSummaryService.ts` 也已支持解析 `scene_chapter` 标题。 ## 2.4 创作页展示 前端已完成第一批接入: 1. 草稿抽屉正式加入 `scene_chapter` 分组 2. `scene_chapter` 分组顺序位于 `chapter` 后、`thread` 前 3. 详情面板已支持 `场景章节` 类型标签 4. 幕背景 section 在详情面板里会直接渲染图片预览 5. 编辑面板已支持幕摘要 / 相遇 NPC / 幕目标 / 过渡钩子等动态多行字段 ## 2.5 运行时基础层 本轮同步补齐了幕运行的基础读取能力,便于下一轮继续接游戏流程: 1. 当前幕背景图优先覆盖场景默认背景 2. 当前幕相遇 NPC 池可参与场景相遇过滤 3. 当前幕主角色与负好感有限聊天的判定 helper 已建立 4. 场景预览层已能识别“负好感主角色不直接自动开战”的基础分支 ## 3. 当前仍未完成 下面这些仍属于 PRD 未完项,需要下一轮继续: 1. 创作页里的“新增幕 / 删除幕 / 调整幕顺序”交互 2. 背景图配置与 NPC 配置的独立面板化交互 3. 发布期 `qualityFindings` / blocker 的正式接入 4. `SceneActRuntimeState` 的完整推进与持久化 5. 当前幕主角色负好感 `5` 轮聊天限制的前后端完整闭环 6. 第 `5` 轮“铺垫式收束”提示与强制退出聊天态 7. 幕切换后的系统提示与 Adventure 面板状态展示 ## 4. 下一轮建议顺序 建议下一轮按下面顺序继续: 1. 先补 `SceneActRuntimeState` 初始化与幕推进 2. 再接 `npcEncounterActions / aiService / chatOrchestrator` 的负好感有限聊天闭环 3. 最后补创作页的幕增删改序和独立配置面板 这样可以先把“能跑”补齐,再把“编辑体验”补完整。