▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/Recipe Modification library
Recipe Modification library

Recipe Modification library

Мод Recipe Modification library для автоматической правки крафтов через JSON. Идеально для создателей сборок и датапаков - больше не нужно перезаписывать рецепты вручную.

Оцените первым
110.6K
13

Recipe Modification library (РМЛ)

По сути, Recipe Modification library - это такой волшебный инструмент для тех, кто любит копаться в рецептах Майнкрафта. Сам по себе мод ничего не делает, но он даёт возможность создателям сборок модов, датапаков и другим разработчикам гибко менять любые рецепты прямо во время запуска игры. Причём делает это просто и элегантно.

Зачем это нужно?

В ванильном Майнкрафте, когда хочешь изменить рецепт, приходится вручную переопределять каждый конкретный крафт. А если модов много - начинается ад. Два мода могут перезаписать один и тот же рецепт, и начнутся конфликты. РМЛ решает эту проблему раз и навсегда.

Вместо того чтобы перекрывать существующие рецепты вручную, вы просто описываете модификаторы - правила, которые применяются ко всем рецептам автоматически. И да, они работают с любыми рецептами от любых модов, без несовместимостей.

Как это работает на примере

Допустим, вы считаете, что крафт кнопок - это развод. Всего одна кнопка из камня? Серьёзно? С РМЛ это можно поправить за пару строк:

{
  "target_recipes": "#minecraft:buttons",
  "modifiers": [
    {
      "type": "modify_result_item",
      "function": "set_count",
      "count": 8
    }
  ]
}

Готово. Теперь все кнопки крафтятся по 8 штук.

А вот сценарий посложнее. Представьте, что какой-то мод mod_xyz не использует правильный тег для медных самородков (copper nuggets), и его рецепты несовместимы с другими модами. Обычно такое лечится удалением и переписыванием каждого рецепта. С РМЛ - просто добавляем альтернативу:

{
  "target_recipes": {
    "type": "namespace_equals",
    "namespace": "mod_xyz"
  },
  "modifiers": [
    {
      "type": "add_alternative",
      "ingredients": "mod_xyz:copper_nugget",
      "alternative": {
        "tag": "c:copper_nuggets"
      }
    }
  ]
}

И вуаля - mod_xyz понимает общий тег c:copper_nuggets, всё работает.

Как этим пользоваться

Самый простой способ - через JSON-файлы в датапаке. Кидаешь их в /data/название_пака/recipe_modifiers/ и всё. Мод сам подхватит.

Есть и Java API для разработчиков - можно посмотреть в пакете api класса RecipeModification.

Подробное описание синтаксиса JSON можно найти в документации (к ней прилагаются рабочие тестовые модификаторы для примера).

Важные нюансы

  • Мод работает и на клиенте, и на сервере, но нужен на обоих, если меняются рецепты на сервере.
  • Если вы собираете модпак - это практически must-have. Сэкономит часы на правке рецептов.
  • Модификаторы накладываются при запуске игры, так что перезагрузка датапака (reload) их не переприменит.

Recipe Modification library не панацея, но если вы любите автоматизацию и ненавидите вручную переписывать рецепты - посмотрите в его сторону. Скачайте библиотеку и упростите себе жизнь.

Часто задаваемые вопросы

Совместимость

Minecraft: Java Edition

1.21.x1.20.x

Платформы

Поддерживаемые окружения

Сервер

Ссылки


Создатели

Детали

Лицензия:
Опубликован:10 месяцев назад
Обновлён:3 месяца назад
Главная