# 总体配置结构了解 (v.3.3.0 版本以前)

在阅读完 **首次使用** 一章后，恭喜你来到了第二章。在本章你将基础地掌握 **ItemsAdder** 的一些基础知识。

### ItemsAdder 插件内的大概框架

在此之前，我们需要了解 **ItemsAdder** 文件夹内的大概框架。请注意，是大概。各个文件的具体作用，将在后文陆续揭秘，此时的你不宜了解太多。

我们会发现该文件夹下有以下部分组成：

* **data** 文件夹。这是贯彻整个教程的文件夹，也是整个插件的核心所在。这里保存着所有 **ItemsAdder** 你所添加的内容的配置。
* **lang** 文件夹。是英文单词 **language**（语言）的缩写，现在不用我说，你也知道这是干什么的吧。
* **storage** 文件夹。这是保存 **ItemsAdder** 一些缓存记录的数据的地方，在教程没有特别标注的地方，请不要动这里。轻则物品的 **CustomModelData** 值全部被打乱，重则你的资源包就因此报废了，你要花上一整天时间去修补到底哪里不小心出现问题了。（此时的你可能看不懂到底是什么，总之记得这里很危险，不要乱动，就对了）
* **config.yml** 文件。是英文单词 **configuration**（配置）的缩写，同样不用我说了。
* **converter.yml** 文件。将远古版本的 **ItemsAdder** 数据转换成现在版本的 **ItemsAdder** 数据的配置文件。这里的“远古版本”也是很老的时候了，那时候估计你都不知道有这么个插件，所以就不用管它。
* **ia\_gui.yml** 文件。配置 **/ia** 指令后打开的各种 **UI** 的文件。

以上 **6** 个文件，在你基础的配置完 **ItemsAdder** 以后，基本只会看 **data** 文件夹内的内容了，所以整个插件并不难，需要的是前期你的耐心。

### data 文件夹内的大概结构

那么，很显然，**data** 文件夹是我们关注的重心，所以我们还需要对它进行研究分析，请再次打开它，我们可以发现里面包括：

* **items\_packs** 文件夹。这里放置的是 **ItemsAdder** 物品（和其他各种内容）配置的地方。
* **resource\_pack** 文件夹。这里放置的是 **ItemsAdder** 的资源包，你的物品贴图、方块纹理等都应该存放在这里。

### namespace 概念理解

别着急打开 **items\_packs** 文件夹，再次之前，我们需要了解一个新的概念，我们称为 **namespace**。

从英文单词 **items packs** 中分析，**item** 的意思为物品，**pack** 的意思为包，翻译过来就是物品包。所以，这时我们仅从文件夹的名称就可得知，**ItemsAdder** 的各个物品（或者其他各个内容）都是以包的形式，也就是集合形式分开的。

例如，你可以把一些武器放在一起，再把另外的盔甲放在一起，这时，包的作用就是分类了。**ItemsAdder** 并不限制你的包到底是怎么区分的，但很显然在这里，笔者推荐你使用“物品分类”进行配置。

这些由你想设置的包的名称即 **namespace**，它用于插件内部管理，而玩家无法看到，所以你不必填写中文，也不能使用中文，只能是 **小写英文、数字和下划线** 组成。

我们打开 **items\_packs** 文件夹，你会发现诸如 **mcguis** 这样的文件夹，它们正是各个包的名称，和它们下面的配置。

在使用插件各个指令，或者配置 **ItemsAdder** 内物品，乃至与 **ItemsAdder** 挂钩（兼容）的插件时，我们在填写 **ItemsAdder** 物品的名称时，非常建议你写 `namespace:id` 的格式，例如 `weapon:starter_sword`。**namespace** 即是文件夹的名称，**id** 即是物品的ID。

打开 **resource\_pack/assets** 文件夹下也有一些与包名称相一致的文件夹，这里的文件夹名称不一定必须与 **items\_pack** 内一一对应，只要你的物品配置内所写的文件路径填写正确。但为了资源包的管理方便，还是建议一一对应。在本篇教程所给的示例中，将统一是一一对应的格式。

关于 **resource\_pack** 文件夹的各命名空间下的具体结构，将在后文中陆续介绍。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.superiormc.cn/itemsadder-doc/ji-chu-shi-yong/zong-ti-pei-zhi-jie-gou-liao-jie-v.3.3.0-ban-ben-yi-qian.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
