Files
Genarrative/docs/GAME_UI_PRESET_EDITOR_TEXT_AUDIT_2026-04-02.md
高物 c49c64896a
Some checks failed
CI / verify (push) Has been cancelled
初始仓库迁移
2026-04-04 23:57:06 +08:00

24 KiB
Raw Blame History

游戏 UI / 预设 / 编辑器文本二次审计(扩展重查版)

日期:2026-04-02

说明:

  • 本文档用于替换同名上一版审计。上一版确实漏掉了不少内容,尤其是:
    • AdventurePanel 里的任务概览与奖励文案
    • npcInteractions.ts 里的 actionText / detailText
    • 自定义世界编辑器、NPC 视觉编辑器里的英文兜底和混合术语
    • 预设编辑器里多组仍未本地化的标题、字段名、保存反馈
  • 本次以当前仓库实际内容为准,不沿用旧结论;已经修掉的内容不再重复计入。

审计范围

  • 扫描目录:
    • src/components/
    • src/data/
    • src/hooks/
    • src/services/
    • src/routing/
    • src/editor/
  • 关注对象:
    • 玩家在主流程、冒险面板、弹窗里会看到的文本
    • 预设编辑器、自定义世界编辑器、NPC 视觉编辑器中会直接显示的文本
    • 会透传到 UI、弹窗、编辑器预览中的数据层文本源
  • 标记类型:
    • 英文直出:面向玩家 / 编辑器用户的英文文本仍直接显示
    • 中英混用:中文 UI 中混入 NPCHPMPAIURLShift 等术语
    • 异常显示:明显乱码、截断、异常问号替代、分隔符损坏

结论摘要

  • 游戏主流程里仍有明显英文残留:QQ GroupWeChatGENARRATIVECurrent Area
  • 游戏内任务 / 冒险面板仍有一批英文任务眉标和按钮辅助文案:BOUNTY TARGETCACHE TRACESPAR SESSIONInspect reward item ...Unknown monster
  • GameShellOverlays.tsx 仍有整组 loading fallback 出现异常编码。
  • 预设编辑器目前仍是问题最密集区域之一,CharacterPresetPanelMonsterPresetPanelSceneNpcPresetPanelScenePresetPanelStateFunctionEditor 里都有明显英文直出或半成品占位。
  • 数据层里仍有大量会透出到 UI / 编辑器的英文值,重点在:
    • npcInteractions.ts
    • useStoryGeneration.ts
    • storyGenerationState.ts
    • npcEncounterActions.ts
    • sceneObservation.ts
    • characterPresets.ts
    • stateFunctions.ts

一、游戏主流程 UI

文件 行号 类型 当前文本 / 字段 说明
src/components/game-shell/PreGameSelectionFlow.tsx 48-49 英文直出 QQ GroupWeChat 开场页联系方式标签仍是英文
src/components/game-shell/PreGameSelectionFlow.tsx 351 中英混用 contact.label === 'QQ Group' ? 'QQ群' : '微信' 逻辑分支仍依赖英文标签
src/components/game-shell/GameShellOverlays.tsx 123 异常显示 姝e湪鍔犺浇鍐掗櫓璇︽儏... 冒险详情 loading fallback 乱码
src/components/game-shell/GameShellOverlays.tsx 162 异常显示 姝e湪鍔犺浇闃熶紞闈㈡澘 队伍面板 loading fallback 乱码
src/components/game-shell/GameShellOverlays.tsx 187 异常显示 姝e湪鍔犺浇鑳屽寘闈㈡澘 背包面板 loading fallback 乱码
src/components/game-shell/GameShellOverlays.tsx 214 异常显示 姝e湪鍔犺浇闃熶紞钀ュ湴... 营地弹窗 loading fallback 乱码
src/components/game-shell/GameShellOverlays.tsx 229 异常显示 姝e湪鍔犺浇鍦板浘... 地图 loading fallback 乱码
src/components/game-shell/GameShellOverlays.tsx 248 异常显示 姝e湪鍔犺浇瑙掕壊鑱婂ぉ... 角色聊天 loading fallback 乱码
src/components/game-shell/GameShellOverlays.tsx 261 异常显示 姝e湪鍔犺浇 NPC 浜や簰... NPC 交互 loading fallback 同时混入 NPC
src/components/game-shell/GameShellRuntime.tsx 146 英文直出 Current Area 当前场景名缺失时的兜底文案仍是英文
src/components/game-shell/GameShellRuntime.tsx 200 英文直出 GENARRATIVE 顶部 logo 文案仍是英文
src/components/GameShell.tsx 311 英文直出 Current Area 旧壳组件里同样保留英文兜底
src/components/GameShell.tsx 365 英文直出 GENARRATIVE 旧壳组件里同样保留英文 logo
src/components/DeveloperTeamModal.tsx 44 英文直出 aria-label="Close developer team modal" 开发团队弹窗关闭按钮辅助文案未本地化

二、游戏内面板 / 弹窗

2.1 冒险与任务面板

文件 行号 类型 当前文本 / 字段 说明
src/components/AdventurePanel.tsx 197-198 异常显示 适合进攻型构适合防御型构 描述文本疑似被截断,正常语义应是“构筑”
src/components/AdventurePanel.tsx 206 异常显示 item.name + ' 奖励物品<E789A9>?'; 奖励物品描述兜底尾部异常
src/components/AdventurePanel.tsx 216 异常显示 ${hours}小时 ...<2E>?...秒 时长格式字符串出现异常字符
src/components/AdventurePanel.tsx 219 异常显示 ${minutes}<7D>?...秒 分钟格式字符串同样异常
src/components/AdventurePanel.tsx 248 英文直出 aria-label={`Inspect reward item ${item.name}`} 奖励物品按钮辅助文案是英文
src/components/AdventurePanel.tsx 279 英文直出 BOUNTY TARGET 任务眉标未本地化
src/components/AdventurePanel.tsx 283 英文直出 Unknown monster 目标怪物兜底文案是英文
src/components/AdventurePanel.tsx 290 英文直出 CACHE TRACE 宝藏任务眉标未本地化
src/components/AdventurePanel.tsx 295 英文直出 Inspect the hidden reward site 宝藏任务副文案未本地化
src/components/AdventurePanel.tsx 302 英文直出 SPAR SESSION 切磋任务眉标未本地化

2.2 NPC / 实体 / 交易相关弹窗

文件 行号 类型 当前文本 / 字段 说明
src/components/AdventureEntityModal.tsx 895 中英混用 label="HP" 实体状态估计面板直接显示 HP
src/components/AdventureEntityModal.tsx 901 中英混用 label="MP" 实体状态估计面板直接显示 MP
src/components/NpcModals.tsx 252 中英混用 NPC 商品列表 / 你的背包列表 交易列表标题混入 NPC
src/components/NpcModals.tsx 273 中英混用 这个 NPC 当前没有可售商品。 空状态文案混入 NPC
src/components/NpcModals.tsx 356 中英混用 NPC 商品 详情弹窗标题混入 NPC
src/components/NpcModals.tsx 408 中英混用 效果预览HP +... / MP +... / 冷却 -... 数值预览里直接保留 HPMP

2.3 自定义世界结果页

文件 行号 类型 当前文本 / 字段 说明
src/components/CustomWorldResultView.tsx 58 中英混用 新增 NPC 结果页新增操作标签混入 NPC

三、自定义世界 / NPC 视觉编辑

文件 行号 类型 当前文本 / 字段 说明
src/components/CustomWorldEntityEditorModal.tsx 242 英文直出 URL 图片地址输入提示词未本地化
src/components/CustomWorldEntityEditorModal.tsx 464 英文直出 MedievalFantasyCharacters 形象编辑副标题里直接暴露素材包英文名
src/components/CustomWorldEntityEditorModal.tsx 482-483 中英混用 AI生成NPC形象NPC 形象 AI 生成功能仍在开发中。 同时混入 AINPC
src/components/CustomWorldEntityEditorModal.tsx 635-636 中英混用 新增 NPC编辑 NPC... NPC 档案编辑标题混入英文缩写
src/components/CustomWorldEntityEditorModal.tsx 663 中英混用 修改形象 本行本身无问题,但上下文仍指向 NPC 视觉编辑入口
src/components/CustomWorldEntityEditorModal.tsx 734 中英混用 AI生成 按钮文案混入 AI
src/components/CustomWorldEntityEditorModal.tsx 762-763 中英混用 AI生成场景场景图片 AI 生成功能仍在开发中。 场景生成弹窗混入 AI
src/components/CustomWorldNpcVisualEditor.tsx 393 中英混用 AI生成 自定义 NPC 视觉编辑器按钮混入 AI
src/components/NpcVisualEditor.tsx 263-267 英文直出 Failed to load NPC visual overridesFailed to load NPC layout config 编辑器首屏可见的加载失败兜底为英文
src/components/NpcVisualEditor.tsx 284-308 英文直出 response was invalid, using bundled defaults 多组降级提示未本地化
src/components/NpcVisualEditor.tsx 463 中英混用 请先选择一个 NPC 进行编辑 空态文案混入 NPC
src/components/NpcVisualEditor.tsx 539 英文直出 Save failed 保存失败提示仍是英文
src/components/NpcVisualEditor.tsx 702-708 中英混用 NPC 视觉编辑器选择并编辑 NPC 的外观... 页面标题与简介多次混入 NPC
src/components/NpcVisualEditor.tsx 718 中英混用 当前 NPC 当前对象字段名混入 NPC
src/components/NpcVisualEditor.tsx 976-977 中英混用 拖动标记微调 NPC 的预览布局。移动时按住 Shift... 帮助提示同时混入 NPCShift
src/components/NpcVisualEditor.tsx 1033-1052 英文直出 Unknown headgearNo headgearUnknown main handNo main handUnknown off handNo off hand 预览状态说明仍是英文

四、预设编辑器

4.1 共享配置与选项枚举

文件 行号 类型 当前文本 / 字段 说明
src/components/preset-editor/shared.ts 43 中英混用 label: 'NPC' 预设编辑器顶部 tab 仍直接显示 NPC
src/components/preset-editor/shared.ts 63-66 英文直出 idlemoveattackdie 怪物动画可选项是原始英文值
src/components/preset-editor/shared.ts 70-74 英文直出 steadyburstmobilityfinisherprojectile 技能风格可选项是原始英文值

4.2 角色预设面板

文件 行号 类型 当前文本 / 字段 说明
src/components/preset-editor/CharacterPresetPanel.tsx 91-92 英文直出 Saved character preset overrides...Failed to save character preset overrides. 保存反馈未本地化
src/components/preset-editor/CharacterPresetPanel.tsx 264-279 英文直出 CharactersBrowse the character roster...FieldSave Character Overrides 左侧选择卡与保存栏均为英文
src/components/preset-editor/CharacterPresetPanel.tsx 315-322 英文直出 Character DetailsField 详情卡标题和字段名未本地化
src/components/preset-editor/CharacterPresetPanel.tsx 404-430 英文直出 Skill PreviewPreview ranged skills...Preview Monster 技能预览区英文直出
src/components/preset-editor/CharacterPresetPanel.tsx 450-467 英文直出 Skill SetupAdd Skill 技能配置区仍是英文
src/components/preset-editor/CharacterPresetPanel.tsx 498-558 英文直出 大量 label="Field" 多数字段仍显示占位词 Field
src/components/preset-editor/CharacterPresetPanel.tsx 605 英文直出 Start Frame 动画字段未本地化
src/components/preset-editor/CharacterPresetPanel.tsx 629729 英文直出 SectionEditor section. 两个分区仍是半成品英文占位
src/components/preset-editor/CharacterPresetPanel.tsx 697-698 英文直出 AttributesAdjust the core character attributes. 属性面板未本地化
src/components/preset-editor/CharacterPresetPanel.tsx 755 英文直出 Unset 场景绑定下拉空值项为英文

4.3 怪物预设面板

文件 行号 类型 当前文本 / 字段 说明
src/components/preset-editor/MonsterPresetPanel.tsx 49-50 英文直出 Saved monster overrides...Failed to save monster overrides. 保存反馈未本地化
src/components/preset-editor/MonsterPresetPanel.tsx 124-139 英文直出 SectionEditor section.FieldSave Monster Overrides 左侧选择区和保存栏未本地化
src/components/preset-editor/MonsterPresetPanel.tsx 135 异常显示 ${WORLD_LABELS[monster.worldType]} 闂?${optionMonster.name} 选择列表分隔符损坏
src/components/preset-editor/MonsterPresetPanel.tsx 158-159 英文直出 Monster Override PreviewEditor section. 预览区标题仍是英文
src/components/preset-editor/MonsterPresetPanel.tsx 192-201 英文直出 Attack RangeSpeedHPMax HP 预览摘要未本地化
src/components/preset-editor/MonsterPresetPanel.tsx 212-234 英文直出 Monster IDNameIntro Action 核心字段名仍是英文
src/components/preset-editor/MonsterPresetPanel.tsx 343 英文直出 FPS 动画字段未本地化
src/components/preset-editor/MonsterPresetPanel.tsx 207275307 英文直出 SectionEditor section. 多个分区标题仍为占位英文

4.4 场景 NPC 预设面板

文件 行号 类型 当前文本 / 字段 说明
src/components/preset-editor/SceneNpcPresetPanel.tsx 127-128 英文直出 Saved NPC overrides.Failed to save NPC overrides. 保存反馈未本地化
src/components/preset-editor/SceneNpcPresetPanel.tsx 159 英文直出 No NPC presets are available. 空态文案未本地化
src/components/preset-editor/SceneNpcPresetPanel.tsx 177-193 英文直出 NPC LibraryBrowse and select an NPC preset.NPC IDSave NPC Overrides 左侧选择区英文直出
src/components/preset-editor/SceneNpcPresetPanel.tsx 221-237 英文直出 Skill PreviewPreview ranged skills from the linked character.SkillWorld 技能预览区未本地化
src/components/preset-editor/SceneNpcPresetPanel.tsx 258 异常显示 闂?NPC 空态或提示文案已损坏
src/components/preset-editor/SceneNpcPresetPanel.tsx 264-268 英文直出 Visual PreviewHostile NPCs use monster presets... 视觉预览区标题与说明均未本地化
src/components/preset-editor/SceneNpcPresetPanel.tsx 310-371 英文直出 NPC DetailsNameRoleAvatarLinked Character IDMonster Preset IDInitial AffinityDescriptionVisual Editor 详情区字段名大面积英文直出
src/components/preset-editor/SceneNpcPresetPanel.tsx 374-375 英文直出 Hostile NPCs cannot use the visual editor...Narrative NPC visual overrides can be previewed here. 视觉编辑区说明未本地化
src/components/preset-editor/SceneNpcPresetPanel.tsx 382-384 异常显示 三整段乱码说明 + NPC 视觉编辑区空态说明已严重损坏

4.5 场景预设面板

文件 行号 类型 当前文本 / 字段 说明
src/components/preset-editor/ScenePresetPanel.tsx 52-53 英文直出 Saved scene overrides.Failed to save scene overrides. 保存反馈未本地化
src/components/preset-editor/ScenePresetPanel.tsx 62 英文直出 No scene presets are available. 空态文案未本地化
src/components/preset-editor/ScenePresetPanel.tsx 105-107 英文直出 Treasure AheadTreasure 宝藏预览实体名仍是英文
src/components/preset-editor/ScenePresetPanel.tsx 132-171 英文直出 Scene LibraryBrowse and select a scene preset.SaveScene PreviewPreview monsters, NPCs, and treasure... 场景面板主框架仍多处英文
src/components/preset-editor/ScenePresetPanel.tsx 175-181 英文直出 Preview ModeMonster PreviewNPC PreviewTreasure Preview 预览模式切换未本地化
src/components/preset-editor/ScenePresetPanel.tsx 207-226 英文直出 Hostile NPCsNPCsNone 预览摘要区未本地化
src/components/preset-editor/ScenePresetPanel.tsx 233-290 英文直出 Scene DetailsEdit the selected scene preset.Scene IDWorldNameDescriptionImage SourceForward SceneConnected Scene IDsMonster IDsTreasure Hints 详情编辑区字段名几乎全部英文
src/components/preset-editor/ScenePresetPanel.tsx 271 英文直出 Unset 下拉空值项为英文
src/components/preset-editor/ScenePresetPanel.tsx 299 英文直出 NPCs In Scene 分区标题未本地化

4.6 状态函数编辑器

文件 行号 类型 当前文本 / 字段 说明
src/components/StateFunctionEditor.tsx 310-325 英文直出 PreviewTreasure 预览 NPC / 宝藏 context 里保留英文
src/components/StateFunctionEditor.tsx 1062-1064 英文直出 Option behavior overrides saved.Failed to save option behavior overrides 保存反馈未本地化
src/components/StateFunctionEditor.tsx 1128 英文直出 无模板 之外的模板选择逻辑仍有英文结构 该区主体中文,但下游模板 ID / 类型依旧偏英文
src/components/StateFunctionEditor.tsx 1185 英文直出 AnimationState 原始值直接作为选项标签 动画值会直接显示英文枚举
src/components/StateFunctionEditor.tsx 1190 英文直出 placeholder="可使用 {monster} 占位符" 占位符本身暴露英文 key
src/components/StateFunctionEditor.tsx 1191 英文直出 idlemoveattack 怪物动画下拉仍使用英文值

五、数据层 / 运行时文本源

5.1 直接驱动交互按钮、详情文案、结果文本的源头

文件 行号 类型 当前文本 / 字段 说明
src/data/npcInteractions.ts 444-580 重点补录 大量 actionText / detailText 这是本轮补录重点,属于 NPC 交互选项直接展示源,需要逐条审校
src/data/npcInteractions.ts 327-349 英文直出 deephonestpartialguardedwarmcooperativeneutraldistantcandidtrue_but_incompletehalf_truthsituational_only 这些关系 / 说话风格值虽然是逻辑枚举,但后续很容易在编辑器、调试面板、覆盖配置中直接暴露
src/hooks/useStoryGeneration.ts 576-578 英文直出 Travel to ...Leave camp and head toward ... 旅行选项和详情文案未本地化
src/hooks/useStoryGeneration.ts 654-659 英文直出 Speak with ...Focus on the person in front of you first... 开场对话选项未本地化
src/hooks/useStoryGeneration.ts 8271297 英文直出 Exchange an opening judgment with ... at camp 营地开场交互 actionText 未本地化
src/hooks/useStoryGeneration.ts 1097 英文直出 Begin the adventure 初始 actionText 未本地化
src/hooks/useStoryGeneration.ts 13741794 英文直出 Unknown AI error AI 兜底错误提示仍是英文
src/hooks/story/storyGenerationState.ts 137-141 英文直出 You leave ...Travel to ... 旅行结果与 actionText 未本地化
src/hooks/story/npcEncounterActions.ts 277 英文直出 Victory reward: ${lootText}. 战斗胜利奖励结算文本未本地化
src/hooks/story/npcEncounterActions.ts 389 英文直出 NPC dialogue AI is unavailable. NPC 对话 AI 失败兜底是英文
src/hooks/story/characterChat.ts 68 英文直出 Player 聊天摘要拼接里保留英文说话人名
src/hooks/story/characterChat.ts 84 英文直出 Tell me more clearly what you mean. 建议起句未本地化
src/hooks/story/characterChat.ts 283 英文直出 Unknown AI error 私聊错误兜底未本地化
src/data/sceneObservation.ts 9-34 英文直出 You pause to listen...Possible NPCs...Possible hostile NPCs...Possible treasure clues...Boss clue... 观察环境的整组文本源仍是英文

5.2 会透出到编辑器 / 预览 / 覆盖系统的预设值

文件 行号 类型 当前文本 / 字段 说明
src/data/scenePresets.ts 141 中英混用 role: '敌对NPC' 场景 NPC 角色名混入 NPC
src/data/scenePresets.ts 194294 英文直出 ['trade', 'fight', 'spar', 'help', 'chat', 'recruit', 'gift'] 场景 NPC 功能数组是英文原始值,编辑器容易直出
src/data/stateFunctions.ts 33 英文直出 `monsterAnimation?: 'idle' 'move'
src/data/stateFunctions.ts 130152174196221244 英文直出 steadyburstmobilityfinisherprojectile 技能权重 key 为英文原始值
src/data/stateFunctions.ts 372445569575-576 中英混用 描述里多次直接写 NPC 虽然主体中文,但会透出到说明文字
src/data/characterPresets.ts 54-70 英文直出 bluntwaryevasivemeasuredgentleteasingdrysteadydirectfragmenteddeflecting 对话风格推断返回值全为英文
src/data/characterPresets.ts 362-382519-539738-758833-8531018-1041 英文直出 assetFolderfolderprefix 中大量英文,如 Sword PrincessidleDouble JumpWall SlideAttack 这些值会被预设编辑器动画区直接展示或编辑
src/data/characterPresets.ts 387-389544-546763-765858-8601046-1048 英文直出 guardStylewarmStyletruthStyle 使用英文值 会透出到预设编辑器 / 调试视图
src/data/characterPresets.ts 410-501575-720794-10001069-1197 英文直出 styledeliveryphaseanchormotion 使用 steadymobilityrangedtraveltargetprojectile 等英文值 角色技能配置层大面积保留英文元数据
src/data/monsterPresets.ts 384-817 英文直出 多处 commonuncommonrareepic 怪物稀有度原始值为英文,若编辑器未做映射会直接暴露
src/editor/shared/jsonClient.ts 29-43 英文直出 Request failedSave failed 编辑器通用 JSON 客户端默认错误文案未本地化

六、本轮已复查、暂未记录明确问题的文件

以下文件本轮重新检查过,但当前内容里没有继续记录“英文直出 / 异常显示”的明确条目,暂可视为本轮通过:

  • src/routing/appRoutes.tsx
  • src/components/game-shell/CharacterSelectionFlow.tsx
  • src/components/game-shell/GameShellStoryPanels.tsx
  • src/components/CharacterPanel.tsx
  • src/components/InventoryPanel.tsx
  • src/components/MapModal.tsx
  • src/components/CharacterChatModal.tsx
  • src/components/SelectionCustomizationModals.tsx
  • src/components/adventure-panel/AdventurePanelOverlays.tsx
  • src/data/sceneEncounterPreviews.ts
  • src/data/customWorldVisuals.ts
  • src/services/customWorldBuilder.ts

建议修复顺序

  1. 先修主流程直接暴露给玩家的文本:
    • PreGameSelectionFlow.tsx
    • GameShellOverlays.tsx
    • GameShellRuntime.tsx
    • GameShell.tsx
    • AdventurePanel.tsx
  2. 再修编辑器里最容易误导内容生产的面板:
    • CharacterPresetPanel.tsx
    • MonsterPresetPanel.tsx
    • SceneNpcPresetPanel.tsx
    • ScenePresetPanel.tsx
    • StateFunctionEditor.tsx
  3. 最后统一清理数据层文本源和枚举映射:
    • npcInteractions.ts
    • useStoryGeneration.ts
    • storyGenerationState.ts
    • npcEncounterActions.ts
    • sceneObservation.ts
    • characterPresets.ts
    • stateFunctions.ts