JMM的CD增强语音修复器

JMM的CD增强语音修复器

随着游戏版本2.00,新增了配音语言。不幸的是,JMM在挂载模组时会覆盖这些内容。这个小工具修复了这个问题,让你只需在挂载后双击一个批处理文件,就能继续使用JMM。

用于 JSON 模组管理器的绯红沙漠增强版语音(语言)修复工具一个为绯红沙漠增强版(游戏版本 2.00)用户准备的小型兼容性修复工具,方便继续使用 JSON 模组管理器(JMM)。 问题描述:

简要说明: JMM 会以某种方式覆盖 / 无法正确恢复新的语言/语音文件,因此使用 JMM 挂载模组后,游戏总是会恢复为标准语言。这个小脚本只需双击即可解决此问题。

详细说明

在增强版更新之后,绯红沙漠在游戏存档元数据中添加了额外的可选语音包组。

JSON 模组管理器可以正确地将这些语音包文件夹保留在磁盘上,但在受影响的 JMM 版本中,它在重建时可能会丢弃它们的注册信息:

meta\0.papgt

JMM 日志甚至可能报告某个组正在被保留,例如:

[foreign-overlay] Preserving:
0037 (not managed by JMM)

而该组却不再出现在新生成的 0.papgt 中。

结果是语音文件仍然已安装,但游戏不再识别该语言/语音包。因此,在使用 JMM 挂载/应用模组后,该语言会从游戏内的语音语言选择中消失。

此问题已在以下环境中复现:

  • 绯红沙漠增强版 / 2.00.00 元数据
  • JSON 模组管理器 9.9.4 BETA
  • 德语语音包 (0037)

此修复工具的作用

该修复工具了解当前原版 0.papgt 中观察到的可选增强版语音组记录:

0036
0037
0038
0039
0040

不会盲目地添加所有组。

对于每个已知组,它会:

  1. 检查 <group>\0.pamt 是否确实存在于您的安装中。
  2. 验证该 PAMT 的 Pearl Abyss 校验和。
  3. 检查该组是否在 meta\0.papgt 中正确注册。
  4. 如有必要,恢复或修复官方语音组条目。
  5. 重建 PAPGT 并重新计算其校验和。
  6. 在写入文件之前解析并验证重建后的文件。
  7. 创建 JMM 生成的 0.papgt 的时间戳备份。

实际的 PAMT 校验和是从已安装的游戏文件中读取的,因此包含在此工具的硬编码中。

该工具还特意避免覆盖 JMM 的全语言覆盖层当前使用的组号。

工作原理重要提示:这是一个 **[color=#ff7700][b]挂载后 / 应用后修复工具[/b][/color]**。JMM 在应用模组时会重建 `0.papgt`,因此每当您使用 JMM 的“应用/更新模组”功能时,都需要再次运行此修复工具。典型工作流程: 1. 确保所需语言文件已通过 Steam 正确下载
  1. 运行 Steam 的“验证游戏文件完整性” (可选但强烈推荐)
3. 下载 zip 文件并直接解压到您的绯红沙漠游戏文件夹中,例如: ...\SteamLibrary\steamapps\common\Crimson Desert\ 4. 使用 JMM 应用/挂载您的模组 5. 运行 / 双击 FIX_JMM_ENHANCED_VOICE.bat 6. 启动绯红沙漠系统要求- Windows - Python 3 - 所需的绯红沙漠语音包必须已通过 Steam 安装该脚本不会下载任何游戏文件,也不包含语音数据。输出示例受 JMM 错误影响的德语安装可能显示: 当前 PAPGT 组:35 检测到的已安装增强版语音组: 0037 成功 已恢复缺失的语音组:0037 最终 PAPGT 组:36 JMM 覆盖层条目保持不变。 PAPGT 校验和已重新计算并验证。此后,德语语音选项将再次在游戏中可用。安全性 / 备份在更改 `meta\0.papgt` 之前,修复工具会创建类似以下的备份: meta\0.papgt.before_enhanced_voice_fix_20260826_151500当前 PAPGT 校验和在修改前会进行验证,重建后的文件在写入前后都会进行完全验证。如果验证失败,脚本将停止,而不会写入猜测或无效的文件。移除修复该修复工具不会永久修改语音存档。要仅撤销其最近一次的 PAPGT 更改,请关闭游戏并恢复在 `meta` 文件夹中创建的时间戳备份。运行 Steam 的“验证游戏文件完整性”也会恢复官方元数据,但 JMM 可能会在下次应用模组时再次产生此问题。