
Recipes Library
Библиотека Recipes Library для Minecraft расширяет систему крафта, добавляя новые типы рецептов с поддержкой компонентов и переименования. Полезна разработчикам модов и сборщикам модпаков.
Recipes Library - библиотечный мод для Майнкрафт, который расширяет стандартную систему рецептов. Если вы когда-нибудь пытались создать рецепт, где нужен предмет с определёнными NBT-данными или компонентами, вы знаете, как это муторно. Ванильные крафты этого не умеют - только проверяют ID предмета. Этот мод закрывает этот пробел.
Версия 4.X.X
Для более старых версий смотрите вики проекта. Мод нужен и на сервере, и на клиенте, если от него зависят другие моды. Просто библиотека, без своих рецептов в игре - только API для других разработчиков.
Возможности
Мод добавляет два новых типа рецептов: recipes_lib:crafting_shaped_components и recipes_lib:crafting_shapeless_components. Они работают как обычные рецепты Майнкрафт с формой или без, но результат может включать компоненты (Components).
Результат в таком рецепте описывается тремя полями:
- item - реестровое имя предмета
- components - данные компонентов для результата
- merge_components - должно ли предмет искаться слиянием компонентов (true/false)
Пример рецепта с компонентами:
"result": {
"item": "minecraft:written_book",
"components": {
"minecraft:written_book_content": {
"pages": [
{
"text": "Hello2"
}
]
}
},
"merge_components": true
}
Также добавлен тип рецепта recipes_lib:renaming - переименование предмета через имя из бирки (name tag). В рецепте указывается только ингредиент, а на выходе тот же предмет, но с именем из бирки. Удобно для кастомных книг, компасов или любых предметов, где имя имеет значение.
Пример:
{
"type": "recipes_lib:renaming",
"ingredient": {
"item": "dynamical_compass:dynamical_compass"
}
}
А ещё мод добавляет тип ингредиента recipes_lib:components. Он умеет проверять не только ID предмета, но и его компоненты. Есть четыре режима сравнения:
- EQUAL - данные должны совпадать точно
- CONTAINS - данные ингредиента должны быть подмножеством данных предмета
- CONTAINS_NONE - ни один элемент данных ингредиента не должен присутствовать в предмете
- NOT_EQUAL - данные не должны совпадать
Пример использования:
{
"type": "recipes_lib:components",
"item": {
"id": "minecraft:written_book",
"components": {
"minecraft:written_book_content": {
"pages": [
{
"text": "Hello2"
}
]
}
}
},
"matchType": "CONTAINS_NONE"
}
Важно знать
- Мод поддерживается только для тех версий Minecraft, для которых он выпущен (смотрим на странице загрузки).
- Логотип создан Muse31, спасибо ему.
- Использовать мод можно в некоммерческих модпаках без спроса.
Если вы разрабатываете моды с кастомными рецептами, где важны компоненты (NBT, компоненты данных), Recipes Library сэкономит кучу времени. Для простых аддонов эта библиотека может оказаться лишней, но если ваш проект завязан на книгах, картах, инструментах с зачарованиями или других предметах с данными - это маст-хэв.
