# 资源包合并

资源包合并是我们在使用 **ItemsAdder** 时经常遇到的问题。以插件挂钩为例，如果我们想要和其他也需要使用资源包的插件同时使用，那么就必须学会资源包合并。

## v.3.3.0 版本以前

{% hint style="info" %}
如果你只是单纯的想把某个模型包放入服务器内，那么笔者建议你手动的将其拆分并一个一个写到 **ItemsAdder** 的配置中，而不是粗暴合并的使用它。
{% endhint %}

第一步：打开 **ItemsAdder/resource\_pack** 文件夹，将其备份一份。

第二步：将需要合并的资源包合并到 **ItemsAdder/resource\_pack** 文件夹，如果没有文件重复的提示，则代表资源包已经直接合并成功了，不需要做其他操作。

第三步：如果存在文件重复的提示，请千万不要点击替换。我们需要一步一步分析需要替换的文件的情况：

* pack.png、pack.mcmeta：请跳过。
* minecraft/models/item/某个原版物品id.json：请忽略，并记住这个文件的名称。

下面针对上文第二种情况开始详细教程：

第一步：打开这个文件。如果这个文件全部集中在一行，或者你根本难以看懂的，请 [点击](https://json-online.com/check/) 这里将其进行json标准格式化。

![像这样的情况，很明显就需要进行标准格式化。](https://4149593262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfMGAfdqIe4KA9hVW04wr%2Fuploads%2FEPav2HgFQp2fq4KfaBkF%2F%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202022-06-03%20192305.png?alt=media\&token=6f98bc5c-20b4-4905-a2a1-f5918fa9af4e)

第二步：点击 **JSON 校验**。我们将获得标准格式化后的json，将其复制到原本的文件中，这时的json文件看着就清爽多了。

![这是经过标准格式化后的json文件。](https://4149593262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfMGAfdqIe4KA9hVW04wr%2Fuploads%2FMBbj2erwi8ogDNB26hmo%2F%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202022-06-03%20192537.png?alt=media\&token=ab59b0b3-4d58-4583-bd66-c42f7385ffd7)

第三步：找到如下内容：

```
  "overrides": [ # <----- 找到这个
    {
      "predicate": {
        "custom_model_data": 10000
      },
      "model": "itemsadder:auto_generated/tomato"
    },
```

找到所标注的这行，我们发现 **overrides** 下面的都是按规律排布的，都是按下文内容这样规律的。

```
    {
      "predicate": {
        "custom_model_data": 10000
      },
      "model": "itemsadder:auto_generated/tomato"
    },
```

两个json文件都能找到这样的内容，将其中一个的 **override** 下所有遵循这样规律的内容全部复制到另外一个文件中，注意不要将最后的中括号复制进去，下图即为一个示例：

![只需要复制图中所画区域即可。](https://4149593262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfMGAfdqIe4KA9hVW04wr%2Fuploads%2FdGKv5pl3L4QSbEj80hG8%2F%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202022-06-03%20193020.png?alt=media\&token=3b780db8-208e-40a9-8f41-8c313a0d5a49)

第四步：复制后，在所复制内容的最后一个 `}` 符号后再输入 `,` 符号，下图即为一个示例：

![](https://4149593262-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FfMGAfdqIe4KA9hVW04wr%2Fuploads%2F7NJEHuTi6EcIhhW0dXXW%2F%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE%202022-06-03%20193310.png?alt=media\&token=4a079b5d-1d84-4477-9337-fe338d5f16eb)

第五步：检查所有 **override** 下的内容的 **custom\_mode\_data** 是否有重叠，如果有，需要单独修改，同时注意资源包所对应的插件内的配置也要修改。

至此，我们的合并资源包之旅就结束了。

## v.3.3.0 版本以后

**v.3.3.0** 以后版本合并资源包就非常轻松了，你只需要创建新的包，然后将需要合并的资源包的 **assets** 文件夹放入这个包的 **resourcepack** 文件夹内即可。这也是插件作者做出重大改动的原因所在——方便合并资源包。
