The Best Resource for Minecraft
The Best Resource for Minecraft

Датапак не завантажується? Структура папок і три назви, які мають збігатися

Датапак не завантажується? Структура папок і три назви, які мають збігатися

Датапак, який не відображається в /datapack list, має проблему зі шляхом, а не з кодом. Ось точна структура, правило простору імен і папки, які було перейменовано.

/datapack list shows nothing, or shows the pack as disabled. Almost always the JSON is fine and the folders are wrong.

Дерево папок

world/datapacks/my_pack/
├── pack.mcmeta
└── data/
    └── my_namespace/
        ├── function/         one .mcfunction per file
        ├── recipe/
        ├── loot_table/
        ├── advancement/
        ├── predicate/
        └── tags/
            └── function/
                └── load.json

Три назви мають збігатися, і одна з них неочевидна:

  1. pack.mcmeta at the pack root — поруч із data/, not inside it.
  2. data/<namespace>/ — ваш простір імен, нижній регістр, без пробілів. Він стає префіксом

у my_namespace:my_function.

  1. Назви папок категорій, які змінилися і зазвичай є причиною.

Папки було перейменовано в однину

Це зламало багато паків і посібників:

СтаріПоточні
functions/function/
recipes/recipe/
loot_tables/loot_table/
advancements/advancement/
predicates/predicate/
structures/structure/

Пак із назвами у множині завантажується — він з'являється у /datapack list — and simply does nothing, which is the most confusing failure mode of the set. tags/ stayed plural, and so did tags/function/ becoming singular inside it. Yes, that is inconsistent.

Автоматичний запуск

Два спеціальних теги:

data/minecraft/tags/function/load.json   → runs once on load/reload
data/minecraft/tags/function/tick.json   → runs every tick

Примітка data/minecraft/, а не ваш власний простір імен — тег належить Minecraft, а функції, на які він вказує, належать вам:

{ "values": ["my_namespace:setup"] }

Діагностика за порядком

  1. /datapack list — if the pack is not listed at all, pack.mcmeta is missing,

пошкоджений або на один рівень глибше, ніж треба.

  1. У списку, але вимкнено/datapack enable "file/my_pack". Note the file/ prefix

і лапки.

  1. У списку та ввімкнено, але не працює — неправильний pack_format, or plural folder names.
  2. /reload and read the chat. Syntax errors in functions surface there, not silently.

У zip чи ні

Обидва варіанти працюють. Zip означає pack.mcmeta at the корінь zip, так само, як і для наборів ресурсів. Формат папки зручніший під час розробки, тому що /reload picks up edits without re-zipping.

Розміщення на сервері

На сервері шлях такий <world>/datapacks/, where <world> is the value of level-name in server.properties — not the server root. Dropping the pack in the server folder is the single most common server-side mistake.

Зберіть набір із поточними назвами папок, валідним pack.mcmeta and a load tag already wired, then download it ready to drop in, with the Datapack Studio.

Спробувати інструмент: Datapack Studio →