如何修复 130(左右)的模组限制

如何修复 130(左右)的模组限制

关于如何修复大约130个模组限制的指南

实用程序

KCD2 的模组限制大约为 130 个"模组",如果尝试安装超过此限制,游戏通常会发生崩溃。

此限制与冲突、错误,甚至内存或软件限制完全无关,它更像是一段代码,在检测到模组数量过多时就会导致游戏崩溃。本指南旨在分享我如何绕过这一限制,因为我当时找不到任何关于此问题的信息(除了 KCD2 模组 Discord 上的一条随机消息,感谢 LIVIGO)。



此限制本身与 .pak、.xml 文件的数量无关。实际上,它完全取决于模组文件夹中子文件夹的数量。这些文件夹会被添加到模组顺序文本文件中,如果数量超过大约 130 个(似乎会有波动,但大致是 130 个),启动游戏时会直接崩溃,直到文件夹数量减少到这一限制以下。

解决方法是把 .pak 文件放到其他模组的 data 文件夹内,本质上是合并"模组"以减少"模组数量"。但有一个注意事项:



我还没有找到合并本地化文件的方法,因为它们会共享文件名(例如 English.xml),并且将一个 xml 中的代码添加到另一个中似乎无法正常工作。因此,暂时这种方法只适用于合并仅包含 .pak 文件的模组。



经过一些测试后,我找到了正确合并本地化文件夹的方法:

1. 提取主模组和需要合并的模组中的 English_xml.pak(共 2 个本地化文件)

2. 复制第二个 xml 文件中不包含 <table></table> 标签的内容

3. 使用 pak 工具(https://www.nexusmods.com/kingdomcomedeliverance2/mods/78)构建 pak 文件。重要提示: 如果不用这个 pak 工具,该方法可能无效。

4. 对任何其他需要合并的语言文件重复此过程



你可以使用此方法合并多个带本地化文件的模组。我建议合并专长模组,因为每个专长不需要单独做成一个模组(我目前有大约 30 个只包含专长的模组)。

使用此方法,我可以合并那些实际上不需要分开的模组,例如 Checker 的整个模组合集,将文件夹数量从 8 个减少到 1 个。



警告: 有些模组即使理论上应该能合并,但实际并不兼容。例如:Actalo 的 Realish 模组合集(仅限 Steam 创意工坊)如果合并所有模组就无法工作。具体来说,realish economy 和 realish weapons and armor 这两个模组,如果放在同一个文件夹中,会导致物品"损坏"。

我强烈建议将"重量级"模组(例如游戏性大修模组)保留为单独模组。否则,反复试验是确定兼容性的好方法。 **