Skip to content

fix: 汉化玛加提亚任务与野外Boss死亡对白#726

Open
skykiseki wants to merge 2 commits into
BeiDouMS:masterfrom
skykiseki:fix-cn-boss-dialogues-20260612
Open

fix: 汉化玛加提亚任务与野外Boss死亡对白#726
skykiseki wants to merge 2 commits into
BeiDouMS:masterfrom
skykiseki:fix-cn-boss-dialogues-20260612

Conversation

@skykiseki

@skykiseki skykiseki commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

bd-v16.1-cnpatch-r15.zip

改动点汇总

  • 汉化玛加提亚相关 NPC 与任务对白,覆盖骆驼出租车、麦麦德、卡帕莱特披风补领、琦尼药剂等残留英文名称和句子。
  • 补齐玛加提亚 Quest.wz 中琦尼、人造人A、犹泰、后街小贩、可疑流浪者等任务文本,处理残留英文/韩文并统一中文术语。
  • 保持原版 wz/Mob.wz 英文内容不变,新增完整 wz-zh-CN/Mob.wz 中文目录副本,以符合现有语言 WZ 目录加载方式。
  • wz-zh-CN/Mob.wz 中批量汉化常规野外 Boss 死亡台词,包含浮士德、巨型蜈蚣、树妖王、大宇、提莫、朱诺、艾利杰、吉米拉、大海兽等。
  • 修正原英文台词中的语法问题,例如浮士德死亡对白 I will put a curse you! 改为中文语义正确的诅咒台词。

客户端影响

  • 本次改动包含 Quest 与 Mob 的 WZ XML 文本字段;客户端对应的 Quest/Mob IMG 文本需要同步后,游戏内才能显示这些汉化内容。
  • 不涉及客户端逻辑代码改动。

验证

  • 已校验本次修改过的 Quest/Mob XML 可以正常解析。
  • 已确认 wz/Mob.wz 相对上游英文原版无最终差异。
  • 未重新构建 jar,正式 release 时再打包。

@github-actions

Copy link
Copy Markdown

🤖 AI Code Review

The user is asking me to review a pull request for a MapleStory v83 server project. Let me analyze the diff carefully.

Looking at the changes:

  1. This is primarily a localization/translation PR - converting English text to Chinese (Simplified) in NPC scripts, quest dialogs, and monster speak text.
  2. Files affected:
    • gms-server/scripts-zh-CN/npc/2110005.js - NPC script (Camel Cab driver) - Chinese translation
    • gms-server/scripts-zh-CN/npc/2111001.js - NPC script - Chinese translation
    • gms-server/scripts-zh-CN/npc/2111010.js - NPC script - Chinese translation
    • gms-server/scripts-zh-CN/quest/3306.js - Quest script - Chinese translation
    • gms-server/scripts-zh-CN/quest/3354.js - Quest script - Chinese translation
    • gms-server/wz-zh-CN/Quest.wz/Act.img.xml - Quest dialog XML - Chinese translation
    • gms-server/wz-zh-CN/Quest.wz/QuestInfo.img.xml - Quest info XML - Chinese translation
    • gms-server/wz-zh-CN/Quest.wz/Say.img.xml - Quest dialog XML - Chinese translation
    • Multiple gms-server/wz/Mob.wz/*.img.xml files - Monster speak text in Chinese

Issues I can identify:

  1. The Mob.wz files (2220000, 3220000, 3220001, etc.) are being modified to include Chinese text, but these files are in the gms-server/wz/ directory (NOT gms-server/wz-zh-CN/). This is suspicious - the English mob speak text is being replaced with Chinese. This breaks the English localization.

  2. One in Say.img.xml - I see at line 23685, the English "Thank you!" was removed from the Chinese translation, which is correct (no need for English in Chinese text), and the indentation was changed.

  3. The NPC script 2111001.js - Changed "泽纳米斯特" (Zenumist) to "蒙特鸠" (Mont/Manji - which is the proper Chinese term). This is actually a translation quality improvement.

  4. Mob.wz files localization issue - This is a major problem. The Mob.wz files in gms-server/wz/ are typically the base/English data files. Putting Chinese text in them would break English clients. There should be separate wz-zh-CN/Mob.wz/ files for the Chinese version.

  5. The PR also fixes the "Alcadno" -> "卡帕莱特" translation issue which is good - previously the Chinese translation still had English terms.

  6. The PR also adds a final newline to several JS files, which is a minor style fix (PEP-8 / general practice).

Let me check the file paths more carefully:

  • gms-server/wz/Mob.wz/2220000.img.xml - This is the BASE wz directory, not the zh-CN directory
  • All the other files are in gms-server/wz-zh-CN/ which is the Chinese localization

So the issue is clear: The Mob.wz files in the base directory are being modified to add Chinese text, which would break English/localized clients. The proper way would be to have a gms-server/wz-zh-CN/Mob.wz/ directory with overrides for Chinese clients.

Wait, let me re-read. Looking at the diff for gms-server/wz/Mob.wz/2220000.img.xml:

-      <string name="0" value="I just wanted to drink the clear dew..."/>
+      <string name="0" value="我只是想喝一口清澈的露水……"/>

Yes, this is replacing English text with Chinese in the BASE wz files. This is a significant issue because:

  1. English clients would now see Chinese text
  2. Other localizations that fall back to base wz would be affected
  3. The proper approach is to have localized overrides in wz-zh-CN/Mob.wz/

However, I should consider that this might be the project's convention - some MapleStory servers do have all Chinese in the base wz. But typically the convention in this codebase appears to have wz-zh-CN/ as a separate localization layer, so mixing Chinese into the base wz is suspicious.

Let me also check Say.img.xml at line 23685:

-                <string name="1" value="哼...有些地方还真是挺有意思的。他在蒙特鸠和卡帕莱特的对立最严重的时期发表了他主张,因此遭到了很多反驳...但是事实上这好像是很有意义的研究。#p2112014#是生不逢时...不管怎样,谢谢你!Thank you!"/>
+          <string name="1" value="哼...有些地方还真是挺有意思的。他在蒙特鸠和卡帕莱特的对立最严重的时期发表了他主张,因此遭到了很多反驳...但是事实上这好像是很有意义的研究。#p2112014#是生不逢时...不管怎样,谢谢你!"/>

The indentation here is different (8 spaces vs 16 spaces in the new one) - this is a minor whitespace change but might cause issues with XML parsing if not consistent.

Also at line 66200 in Say.img.xml, the change is correct - just translating the English text to Chinese.

Now let me think about translation quality:

  • The translations appear to be of reasonable quality
  • Some game-specific terms are properly translated (蒙特鸠 for Zenumist, 卡帕莱特 for Alcadno)
  • "mesos" -> "金币" (mesos) - good
  • NPC names and item names with #b, #k, #t, #p formatting codes are preserved
  • Map names like 玛加提亚 (Magatia) and 阿里安特 (Ariant) are consistent

Issues to highlight:

  1. 🔴 High: Mob.wz files in base gms-server/wz/ directory are being modified with Chinese text - this breaks the base English localization
  2. 🟡 Medium: Inconsistency in file structure - some files are in wz-zh-CN/ (proper localization), some in wz/ (base)
  3. 🟢 Low: Indentation change in Say.img.xml line 23685 - minor whitespace issue
  4. 🟢 Low: The NPC 2111001.js translation "蒙特鸠" is the correct Chinese term for Zenumist (good improvement)

The overall theme of this PR is localization. The good parts:

  • Translation quality is generally good
  • Proper game terminology used
  • Preserves formatting codes (#b, #k, #t, #p, #r)
  • Adds trailing newlines to JS files (good practice)
  • Corrects previous translation errors (Alcadno was kept in English before, now properly translated to 卡帕莱特)

The concerning parts:

  • Mob.wz files modified in the base directory instead of zh-CN override directory
  • Mixing localization with base data

Let me give my final assessment. I should be honest and clear about the issue.

📋 PR 概览

这是一个中文本地化翻译 PR,将 NPC 脚本、任务对话、怪物说话文本等从英文翻译为简体中文。同时也修复了部分先前翻译残留的英文专有名词(如 Alcadno卡帕莱特Zenumist蒙特鸠),并在多个 JS 文件末尾补上了换行符。

⚠️ 潜在问题

🔴 高危:Mob.wz 文件被改到了错误的目录

diff --git a/gms-server/wz/Mob.wz/2220000.img.xml
-      <string name="0" value="I just wanted to drink the clear dew..."/>
+      <string name="0" value="我只是想喝一口清澈的露水……"/>

这是最严重的问题。本次 PR 中:

  • NPC/Quest 脚本和 XML 翻译都放在 gms-server/wz-zh-CN/正确的做法,作为本地化覆盖层)
  • 但 Mob 怪物的 speak 字段被改到了 gms-server/wz/Mob.wz/基础数据目录

后果:

  1. 英文客户端会看到中文怪物对话
  2. 任何回退到基础 wz 的本地化版本(如 wz- 其他语言)都会被污染
  3. 与本 PR 自身在 wz-zh-CN/ 的组织规范相矛盾

正确做法:把 mob 翻译文件放在 gms-server/wz-zh-CN/Mob.wz/2220000.img.xml 等位置,与 Quest 翻译结构保持一致。

🟡 中危:XML 缩进被破坏(Say.img.xml 第 23685 行)

-                <string name="1" value="..."/>
+          <string name="1" value="..."/>

单个 <string> 节点的缩进从 16 空格变成了 8 空格,与同文件中其他节点不一致。虽然 XML 解析上没问题,但可能让 diff 噪声变大、不利于后续 merge。建议保持原缩进或统一调整整个文件。

🟢 低危:术语不一致的风险

NPC 脚本里把 Alcadno 翻译成 卡帕莱特Zenumist 翻译成 蒙特鸠改得很好),但请确认项目里其他 NPC/Quest 脚本中是否也有遗留的 Alcadno / Zenumist 英文未翻译——如果不同文件术语不一致,UX 会比较割裂。建议先做一次全仓搜索。

💡 改进建议

  1. 撤销 gms-server/wz/Mob.wz/*.img.xml 的改动,把 mob 对话翻译迁移到 gms-server/wz-zh-CN/Mob.wz/ 对应路径,确保英文基础数据保持纯净。
  2. 建立术语表(glossary):对 Zenumist/Alcadno/Magatia/Ariant/Orbis/Humanoid/Neo-Huroids 等专有名词在 docs/glossary.md 或 PR 描述中固定中英对照,避免后续翻译各行其是。
  3. 补上 PR 自检项:建议在 CI 或本地加一道检查——扫描 scripts-zh-CN/ 下的 JS 和 wz-zh-CN/ 下的 XML 是否还残留英文长句(NPC 对话里的英文片段),用 grep 之类的方式卡住质量底线。

📊 评分

维度 分数 说明
代码质量 ⭐⭐⭐⭐ 翻译流畅、保留所有 #b/#k/#t/#p/#r 格式化标签、补换行符都是好习惯
安全性 ⭐⭐⭐⭐⭐ 纯文本翻译,无代码逻辑变更
可维护性 ⭐⭐ 目录结构混用是最大扣分点,长期会让 base wz 与本地化层职责不清

总体建议:翻译工作做得很扎实,但强烈建议先解决 Mob.wz 目录归属问题再合并——这属于会污染基础数据的高危改动。可以拆成两个 PR:(1) Mob 翻译迁移到 wz-zh-CN/;(2) 其余 NPC/Quest 翻译合并。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant