patch-notes

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Phase 1: Parse Arguments

第一阶段:解析参数

  • version
    : the release version to generate notes for (e.g.,
    1.2.0
    )
  • --style
    : output style —
    brief
    (bullet points),
    detailed
    (with context),
    full
    (with developer commentary). Default:
    detailed
    .
If no version is provided, ask the user before proceeding.

  • version
    :要生成更新说明的版本号(例如:
    1.2.0
  • --style
    :输出风格 —
    brief
    (要点列表)、
    detailed
    (带上下文)、
    full
    (含开发者注释)。默认值:
    detailed
如果未提供版本号,需在继续前询问用户。

Phase 2: Gather Change Data

第二阶段:收集变更数据

  • Read the internal changelog at
    production/releases/[version]/changelog.md
    if it exists
  • Also check
    docs/CHANGELOG.md
    for the relevant version entry
  • Run
    git log
    between the previous release tag and current tag/HEAD as a fallback
  • Read sprint retrospectives in
    production/sprints/
    for context
  • Read any balance change documents in
    design/balance/
  • Read bug fix records from QA if available
If no changelog data is available (neither
production/releases/[version]/changelog.md
nor a
docs/CHANGELOG.md
entry for this version exists, and git log is empty or unavailable):
"No changelog data found for [version]. Run
/changelog [version]
first to generate the internal changelog, then re-run
/patch-notes [version]
."
Verdict: BLOCKED — stop here without generating notes.

  • 若存在,读取
    production/releases/[version]/changelog.md
    路径下的内部变更日志
  • 同时检查
    docs/CHANGELOG.md
    中对应版本的条目
  • 作为备选方案,执行
    git log
    命令获取上一个发布标签与当前标签/HEAD之间的记录
  • 读取
    production/sprints/
    路径下的迭代回顾文档以获取上下文信息
  • 读取
    design/balance/
    路径下的平衡性变更文档
  • 若有可用数据,读取QA提供的 bug 修复记录
如果未找到任何变更日志数据(既不存在
production/releases/[version]/changelog.md
docs/CHANGELOG.md
中也无对应版本条目,且git log为空或不可用):
"未找到版本[version]的变更日志数据。请先运行
/changelog [version]
生成内部变更日志,再重新运行
/patch-notes [version]
。"
判定结果:已阻塞 — 停止流程,不生成更新说明。

Phase 2b: Detect Tone Guide and Template

第二阶段b:检测语气指南与模板

Tone guide detection — before drafting notes, check for writing style guidance:
  1. Check
    .claude/docs/technical-preferences.md
    for any "tone", "voice", or "style" fields or sections.
  2. Check
    docs/PATCH-NOTES-STYLE.md
    if it exists.
  3. Check
    design/community/tone-guide.md
    if it exists.
  4. If any source contains tone/voice/style instructions, extract them and apply them to the language and framing of the generated notes.
  5. If no tone guidance is found anywhere, default to: player-friendly, non-technical language; enthusiastic but not hyperbolic; focus on what the player experiences, not what the developer changed.
Template detection — check whether a patch notes template exists:
  1. Glob for
    docs/patch-notes-template.md
    and
    .claude/docs/templates/patch-notes-template.md
    .
  2. If found at either location, read it and use it as the output structure for Phase 4 instead of the built-in style templates (Brief / Detailed / Full). Fill in the template's sections with the categorized data.
  3. If not found, use the built-in style templates as defined in Phase 4.

语气指南检测 — 在撰写更新说明前,检查写作风格指导:
  1. 查看
    .claude/docs/technical-preferences.md
    中是否有“tone”(语气)、“voice”(语态)或“style”(风格)相关字段或章节。
  2. 若存在,检查
    docs/PATCH-NOTES-STYLE.md
  3. 若存在,检查
    design/community/tone-guide.md
  4. 若任何来源包含语气/语态/风格说明,提取并应用到生成说明的语言和框架中。
  5. 若未找到任何语气指南,默认采用:玩家友好、非技术语言;热情但不过度夸张;聚焦玩家体验,而非开发者的修改内容。
模板检测 — 检查是否存在更新说明模板:
  1. 查找
    docs/patch-notes-template.md
    .claude/docs/templates/patch-notes-template.md
  2. 若在任一位置找到,读取模板并作为第四阶段的输出结构,替代内置风格模板(Brief / Detailed / Full)。将分类后的数据填入模板的对应章节。
  3. 若未找到,使用第四阶段定义的内置风格模板。

Phase 3: Categorize and Translate

第三阶段:分类与转化

Categorize all changes into player-facing categories:
  • New Content: new features, maps, characters, items, modes
  • Gameplay Changes: balance adjustments, mechanic changes, progression changes
  • Quality of Life: UI improvements, convenience features, accessibility
  • Bug Fixes: grouped by system (combat, UI, networking, etc.)
  • Performance: optimization improvements players might notice
  • Known Issues: transparency about unresolved problems
Translate developer language to player language:
  • "Refactored damage calculation pipeline" → "Improved hit detection accuracy"
  • "Fixed null reference in inventory manager" → "Fixed a crash when opening inventory"
  • "Reduced GC allocations in combat loop" → "Improved combat performance"
  • Remove purely internal changes that don't affect players
  • Preserve specific numbers for balance changes (damage: 50 → 45)

将所有变更分类为面向玩家的类别:
  • 新内容:新功能、地图、角色、物品、模式
  • 游戏玩法变更:平衡性调整、机制变更、进度系统变更
  • 生活质量优化:UI改进、便捷功能、无障碍优化
  • Bug修复:按系统分组(战斗、UI、网络等)
  • 性能优化:玩家可感知到的优化提升
  • 已知问题:透明告知未解决的问题
将开发者术语转化为玩家易懂的语言:
  • "Refactored damage calculation pipeline" → "提升了命中检测精度"
  • "Fixed null reference in inventory manager" → "修复了打开背包时的崩溃问题"
  • "Reduced GC allocations in combat loop" → "提升了战斗场景的性能"
  • 删除不影响玩家的纯内部变更
  • 保留平衡性变更的具体数值(伤害:50 → 45)

Phase 4: Generate Patch Notes

第四阶段:生成更新说明

Brief Style

Brief风格

markdown
undefined
markdown
undefined

Patch [Version] — [Title]

Patch [Version] — [Title]

New
  • [Feature 1]
  • [Feature 2]
Changes
  • [Balance/mechanic change with before → after values]
Fixes
  • [Bug fix 1]
  • [Bug fix 2]
Known Issues
  • [Issue 1]
undefined
New
  • [Feature 1]
  • [Feature 2]
Changes
  • [Balance/mechanic change with before → after values]
Fixes
  • [Bug fix 1]
  • [Bug fix 2]
Known Issues
  • [Issue 1]
undefined

Detailed Style

Detailed风格

markdown
undefined
markdown
undefined

Patch [Version] — [Title]

Patch [Version] — [Title]

[Date]
[Date]

Highlights

Highlights

[1-2 sentence summary of the most exciting changes]
[1-2句话总结最受关注的变更]

New Content

New Content

[Feature Name]

[Feature Name]

[2-3 sentences describing the feature and why players should be excited]
[2-3句话描述该功能及玩家值得期待的点]

Gameplay Changes

Gameplay Changes

Balance

Balance

ChangeBeforeAfterReason
[Item/ability][old value][new value][brief rationale]
ChangeBeforeAfterReason
[Item/ability][old value][new value][简要理由]

Mechanics

Mechanics

  • [Change]: [explanation of what changed and why]
  • [Change]: [解释变更内容及原因]

Quality of Life

Quality of Life

  • [Improvement with context]
  • [带上下文的改进说明]

Bug Fixes

Bug Fixes

Combat

Combat

  • Fixed [description of what players experienced]
  • Fixed [玩家实际遇到的问题描述]

UI

UI

  • Fixed [description]
  • Fixed [问题描述]

Networking

Networking

  • Fixed [description]
  • Fixed [问题描述]

Performance

Performance

  • [Improvement players will notice]
  • [玩家可感知到的改进]

Known Issues

Known Issues

  • [Issue and workaround if available]
undefined
  • [问题及可用的解决办法(如有)]
undefined

Full Style

Full风格

Includes everything from Detailed, plus:
markdown
undefined
包含Detailed风格的所有内容,新增:
markdown
undefined

Developer Commentary

Developer Commentary

[Topic]

[Topic]

[Developer insight into a major change — why it was made, what was considered, what the team learned. Written in first-person team voice.]

---
[开发者对重大变更的见解——为何做出该变更、考虑了哪些因素、团队学到了什么。以团队第一人称视角撰写。]

---

Phase 5: Review Output

第五阶段:审核输出内容

Check the generated notes for:
  • No internal jargon (replace technical terms with player-friendly language)
  • No references to internal systems, tickets, or sprint numbers
  • Balance changes include before/after values
  • Bug fixes describe the player experience, not the technical cause
  • Tone matches the game's voice (adjust formality based on game style)

检查生成的更新说明是否符合以下要求:
  • 无内部术语(将技术术语替换为玩家友好的语言)
  • 无内部系统、工单或迭代编号的引用
  • 平衡性变更包含变更前后的数值
  • Bug修复描述玩家体验,而非技术原因
  • 语气符合游戏的品牌调性(根据游戏风格调整正式程度)

Phase 6: Save Patch Notes

第六阶段:保存更新说明

Present the completed patch notes to the user along with: a count of changes by category, and any internal changes that were excluded (for review).
Ask: "May I write these patch notes to
docs/patch-notes/[version].md
?"
If yes, write the file to
docs/patch-notes/[version].md
, creating the directory if needed. Also write to
production/releases/[version]/patch-notes.md
as the internal archive copy.

向用户展示完成的更新说明,同时提供:各分类的变更数量统计,以及被排除的内部变更列表(供审核)。
询问:“是否将这些更新说明写入
docs/patch-notes/[version].md
?”
若用户同意,将文件写入
docs/patch-notes/[version].md
,必要时创建目录。同时将文件写入
production/releases/[version]/patch-notes.md
作为内部存档副本。

Phase 7: Next Steps

第七阶段:后续步骤

Verdict: COMPLETE — patch notes generated and saved.
  • Run
    /release-checklist
    to verify all other release gates are met before publishing.
  • Share the patch notes draft with the community-manager for tone review before posting publicly.
判定结果:已完成 — 更新说明已生成并保存。
  • 运行
    /release-checklist
    验证发布前所有其他发布条件是否满足。
  • 在公开发布前,将更新说明草稿分享给社区经理进行语气审核。