【攻略】MOD冲突合并教学

很多mod都会动到rpg_param.xml这个文件
早期版本常常会有相冲突的情况
这篇文章教你如何将多个使用到rpg_param.xml的mod集成成一个新的mod
一、前置作业 – 提取游戏中的原始xml档
  1. 首先你让文件能「显示扩展名」,方法自行Google。
  2. 新建一个文件夹,命名源文件
  3. 到\KingdomComeDeliverance\Data\里,复制Tables.pak档丢到源文件文件夹
  4. 把Tables.pak改名成Tables.zip后用解压缩软件开启
  5. 取出\Libs\Tables\rpg\里头的rpg_param.xml跟perk_rpg_param_override.xml丢进源文件文件夹
  6. 这两个文件在步骤五会使用到。
二、前置作业 – 下载基本MOD
  1. 接着我们需要一个基本mod,下载基本MOD好处是只要修改已有文件即可,当然你要自己开记事本从头写起也是可以。这边我们拿这个做为基本MOD,Nexus网站使用方法自行Google。
  2. 下载好后再新建一个文件夹,命名param_demo (或你想要的英文名做为mod名称)。
  3. 把下载压缩档里的文件丢进param_demo文件夹里。
  4. 文件夹格式会是这样

——————————————————–
param_demo文件夹
 - Data文件夹
  - IncreasedCarryWeight.pak    
 - mod.manifest
——————————————————–

三、修改mod.manifest
  1. 用记事本打开mod.manifest。
  2. 把<name>Increased Carry Weight</name>改成<name>param_demo</name>
  3. 其余信息像作者的随意。
四、取出mod的rpg_param.xml
  1. 把IncreasedCarryWeight.pak  改名 param_demo.zip并打开,取出rpg_param.xml。
  2. 接着重点来了,把rpg_param.xml改名「rpg_param__param_demo.xml」。注意param_demo后是接两个下底线再接mod.manifest里头<name>的值。这是最新版才有mod格式,让你可以只修想要的参数而不会覆盖其他无关参数的值。
  3. 接着打开rpg_param__param_demo.xml
  4. 你可以看到   

——————————————————–   
<rows>
      <row rpg_param_key=”BaseInventoryCapacity” rpg_param_value=”150″ />
<rows>
——————————————————–
「<row rpg_param_key…..」这一行就是此mod的做的修改内容,表示把基本负重修改成150。

注:早期的mod都是直接使用内置的rpg_param.xml,这会导致后面的mod会覆盖前面的mod的值,结果就是两个mod有冲突只能择一使用。因此,新版的做法是只需要放上修改过的值,这样就不会覆盖旧值的情况发生。
五、比对原始xml找出修改内容

这边拿采集范围mod做范例

  1. 下载好后照前述方法提取出此mod的rpg_param.xml并用记事本打开。
  2. 你会发现这个xml有100多行,要找出修改哪一条也太累了。这时候要靠比对软件像是WinMerge找出两个相异的行数,载点跟用法也请自行google。
  3. 接着你把步骤一提取的原始rpg_param.xml文件,拿来跟mod的rpg_param.xml做比对。
  4. 经过WinMerge比对后找出有修改的行数有两个

——————————————————–   
      <row rpg_param_key=”BaseInventoryCapacity” rpg_param_value=”999999999″ />
      <row rpg_param_key=”HerbGatherSkillToRadius” rpg_param_value=”25″ />
——————————————————–

第一个我们已经知道是修改负重所以不用理他,把第二行复制并粘贴到你的mod文件夹里头rpg_param__param_demo.xml中,结果应该会是这样

——————————————————–   
<rows>
      <row rpg_param_key=”BaseInventoryCapacity” rpg_param_value=”150″ />
      <row rpg_param_key=”HerbGatherSkillToRadius” rpg_param_value=”25″ />
<rows>
——————————————————–
这样就表示你把采集范围mod合并到你自己的mod中了。完成后保存文件。
六、修改perk_rpg_param_override
  1. 有的mod会动到其他文件 像是这个解除修理耐久度限制的mod:
  2. 你会发现pak档里头多了一个perk_rpg_param_override.xml。
  3. 按照步骤二的方式,先复制这个文件到你的mod文件夹并改名成新格式perk_rpg_param_override__param_demo.xml
  4. 再来按照步骤五的方法比对源文件找出修改内容为

——————————————————–   
      <row perk_id=”01c3b32a-5751-4c98-b6ab-258d02370382″ rpg_param_key=”RepairKitItemHealthBestLimit” rpg_param_value=”” />
      <row perk_id=”01c3b32a-5751-4c98-b6ab-258d02370382″ rpg_param_key=”RepairKitItemHealthDefaultLimit” rpg_param_value=”” />
——————————————————–

记住新版的mod格式你只需要保留有修改的行数,所以把其他不需要的行数删掉后会长这样
——————————————————–   
<rows>
       <row perk_id=”01c3b32a-5751-4c98-b6ab-258d02370382″ rpg_param_key=”RepairKitItemHealthBestLimit” rpg_param_value=”” />
      <row perk_id=”01c3b32a-5751-4c98-b6ab-258d02370382″ rpg_param_key=”RepairKitItemHealthDefaultLimit” rpg_param_value=”” />
<rows>
——————————————————–
完成后保存文件。

七、对应perk_rpg_param_override修改rpg_param
再来比较特别的是只要perk_rpg_param_override里头有的值,在rpg_param文件也要有对应值,你可以看一下源文件的rpg_param.xml里是没有这两个值的,所以我们的rpg_param__param_demo.xml要补进这两个值,但要删除perk_id,结果会是这样

——————————————————–   

<rows>
      <row rpg_param_key=”BaseInventoryCapacity” rpg_param_value=”150″ />
      <row rpg_param_key=”HerbGatherSkillToRadius” rpg_param_value=”25″ />
      <row rpg_param_key=”RepairKitItemHealthBestLimit” rpg_param_value=”” />
      <row rpg_param_key=”RepairKitItemHealthDefaultLimit” rpg_param_value=”” />
<rows>
——————————————————–
八、将参数调整到你要的值
调整一下刚刚集成进你的mod的内容到你想要的值
负重:mod值为150,你想要无限负重可以改为9000或
采集距离:mod值为25,是原始值的100倍,这半径可能有几百公尺,采集一次量就破千,建议1.25最好,大概半径是2公尺,可以采集到你眼前看到的同类药草。
解除修理限制:他的值留空,我是把它改为0,正常运作。
九、打包xml成pak
  1. 上述都完成后准备收尾,开启param_demo.zip。进到\Libs\Tables\rpg\文件夹
  2. 把修改好的rpg_param__param_demo.xml跟perk_rpg_param_override__param_demo.xml压进rpg文件夹里,注意要rpg_param.xml跟rpg_param.tbl是旧的文件,必须删掉
  3. 打包好的zip档应该如下:
——————————————————–
Libs文件夹
 - Tables文件夹
  - rpg文件夹
   - rpg_param__param_demo.xml
   - perk_rpg_param_override__param_demo.xml
——————————————————–
完成后把param_demo.zip改名为param_demo.pak
十、大功告成

完成后检查一下:

  1. mod.manifest里头的<name>值是param_demo
  2. Data文件夹里的pak文件名是param_demo.pak
  3. pak里头的xml文件,文件名末端是「__param_demo」结尾
最终完成的文件格式如下

——————————————————–
param_demo文件夹
 - Data文件夹
  - param_demo.pak
 - mod.manifest
——————————————————–

注意,如果下载的mod是采新版格式是没问题,但如果仍为旧版格式,又有使用到rpg_param.xml,就先把它集成进你的mod以免发生冲突。确认mod无冲突后就能进游戏做测试了。
本文来自网络,不代表3楼猫立场,转载请注明出处:https://www.3loumao.org/8430.html
返回顶部