Мне нужно чтобы книга рецептов для мода Farmers Delight c помощью другого была на русском как угодно или с помощью команд есть идея чтобы когда игрок брал в руки книгу с специальным названием то ему выдавались рецепты крафта блюд и всего остального(напитков салатов и т.д.) из этого мода только команду сделать для меня трудно я знаю что через execut
Для версии 1.16.5 синтаксис NBT-тегов в командах немного отличается, так как в старых версиях использовалась другая структура данных.
Вот рабочие решения для вашей версии. Разместите Цикличный (фиолетовый) командный блок, установите его в режим Всегда активен (Always Active) и вставьте одну из команд ниже.
## Вариант 1. Открывает ТОЛЬКО рецепты из Farmer's Delight (Рекомендуемый)
Эта команда откроет игроку все блюда, напитки, ножи и разделочные доски из мода, не трогая рецепты ванильной игры:
execute as @a[nbt={SelectedItem:{id:"minecraft:written_book",tag:{display:{Name:'{"text":"Книга рецептов"}'}}}}] run recipe give @s farmersdelight:*
## Вариант 2. Открывает абсолютно ВСЕ рецепты в игре
Если вы хотите, чтобы открылись вообще все рецепты (и мода, и ванильного Minecraft):
execute as @a[nbt={SelectedItem:{id:"minecraft:written_book",tag:{display:{Name:'{"text":"Книга рецептов"}'}}}}] run recipe give @s *
------------------------------
## Как это правильно настроить в 1.16.5:
1. Тип предмета: В командах выше указана подписанная книга (written_book). Вы можете переименовать её на наковальне в Книга рецептов (точно как в кавычках, с большой буквы).
2. Если хотите использовать обычную книгу: Если вместо подписанной книги вы хотите использовать обычную (пустую), замените в команде id:"minecraft:written_book" на id:"minecraft:book".
3. Бесконечный спам: Так как блок цикличный, команда будет срабатывать каждый тик (20 раз в секунду), пока книга в руке. В чате у игрока может спамить надпись «Рецепт уже изучен». Чтобы этого избежать, введите в чат команду:
/gamerule commandBlockOutput false
Если вы хотите развить эту идею, дайте знать:
* Нужно ли сделать так, чтобы книга исчезала из руки сразу после того, как выдала рецепты?
* Хотите ли вы получить готовую команду /give, чтобы выдать игроку уже красиво оформленную книгу с цветным названием и описанием?
* Интересует ли вас способ сделать это через прогресс (advancement) в датапаке, чтобы сервер вообще не лагал от цикличе
ских командных блоков?
Ну крч попробуй это
Перевести книгу рецептов из Farmer's Delight на русский язык проще всего через готовые текстур-паки или ресурс-паки с локализацией, которые можно найти на профильных сайтах по Minecraft. Если же вы хотите реализовать задумку с командами через execute, то при удержании предмета в руке можно запускать команду /recipe give @s *, указав конкретное пространство имен мода. Для автоматизации этого процесса лучше всего использовать встроенную функцию датапака, которая проверяет NBT-теги специального названия книги в руке игрока каждую секунду. Такой подход избавит вас от необходимости писать бесконечные цепочки команд в командных блоках и сделает выдачу рецептов моментальной.