Вечная проблема красителей в Minecraft
Каждый, кто собирал крупную модпак-сборку, знает эту боль: десятки модов добавляют собственные цветы, пигменты и красители, а рецепты крафта начинают конфликтовать. В итоге стандартный синий краситель из василька не работает в рецепте окрашенной шерсти из мода X, потому что там ожидается «синий пигмент» из другого источника. Ручная правка скриптов совместимости превращается в бесконечный цикл. Именно для решения этой головной боли был создан Dye Recipe Unifier — набор данных и скриптов, который автоматически приводит все красители к общему знаменателю.
Что такое Dye Recipe Unifier
Это гибридное решение, состоящее из двух частей: датапака и прилагаемого KubeJS-скрипта. Датапак берёт на себя самую нудную работу — автоматически проставляет теги для всех предметов, которые могут считаться красителями. Вам больше не нужно вручную прописывать, что «синий цветок из мода А» эквивалентен лазуриту: датапак сам просканирует зарегистрированные предметы и присвоит им соответствующие теги, вроде forge:dyes/blue или c:blue_dyes.
Скрипт KubeJS, в свою очередь, занимается рецептами. Он умеет удалять конфликтующие или дублирующиеся рецепты крафта и заменять их унифицированными версиями, использующими теги. Такой подход позволяет любому красителю из любого мода участвовать в любом рецепте, где требуется краситель того же цвета. Автор устал постоянно редактировать свой скрипт-фикс при переносе в новую сборку и создал этот инструмент, чтобы один раз настроить всё и забыть о проблеме.
Как работает автоматическая тегировка
В основе лежит механика датапаков, появившаяся в Minecraft 1.13 и значительно расширенная в последующих версиях. Dye Recipe Unifier использует файлы тегов внутри папки data/, чтобы группировать предметы по цветам. Когда вы загружаете мир с активированным датапаком, игра сама знает, что «розовый тюльпан», «розовый пигмент из Industrial Foregoing» и «розовый краситель из Botania» — это всё forge:dyes/pink. Дальше в дело вступает KubeJS: он перехватывает рецепты, где раньше был жёстко прописан конкретный предмет, и заменяет его на тег. Например, рецепт розовой кровати начинает принимать любой розовый краситель, а не только ванильный.
Такая связка датапака и скрипта особенно удобна тем, что датапаки не могут удалять рецепты — это ограничение ванильного движка. Поэтому KubeJS-скрипт идёт дополнительным файлом к каждой версии мода, и его нужно поместить в папку kubejs/server_scripts/. Разработчик предусмотрительно приложил примеры скриптов, чтобы вы могли либо использовать готовый вариант, либо написать свой под конкретную сборку.
Установка и первые шаги
Процесс не сложнее, чем добавление любого другого датапака. Скачайте архив с датапаком для вашей версии игры и поместите его в папку datapacks внутри директории вашего мира. Затем возьмите прилагаемый KubeJS-скрипт (он обычно идёт отдельным файлом в том же хранилище) и скопируйте его в kubejs/server_scripts/. Если папки нет — создайте её вручную. После перезапуска мира или сервера введите команду /reload, чтобы изменения вступили в силу.
Кстати, если вы пользуетесь лаунчером foxygame.net, то управление датапаками и скриптами становится ещё проще — лаунчер позволяет просматривать и активировать наборы данных прямо из своего меню, а встроенный каталог модификаций часто содержит готовые сборки KubeJS, избавляя от ручного копирования файлов по системным папкам. Это здорово экономит время при частой смене модпаков.
Преимущества унификации красителей
- Экономия времени. Вам не нужно вручную выискивать все предметы-красители в JEI и прописывать десятки рецептов в CraftTweaker или KubeJS.
- Совместимость «из коробки». Датапак поддерживает множество популярных модов автоматически, а при необходимости список можно расширить через конфигурацию тегов.
- Чистота рецептов. В книге рецептов больше не будет пяти одинаковых способов скрафтить одну и ту же кровать — останется только универсальный вариант.
- Гибкость. Если вы хотите оставить какой-то специфический рецепт, вы всегда можете отредактировать KubeJS-скрипт, убрав соответствующую строку замены.
Поддержка модов и сообщество
Разработчик активно принимает отчёты об ошибках и предложения по добавлению поддержки новых модов. Поскольку датапак опирается на систему тегов, расширить его возможности может даже новичок — достаточно добавить нужный предмет в соответствующий JSON-файл тега. Если вы не уверены в своих силах, можно обратиться в Discord-сообщество проекта, где автор и другие игроки помогут с настройкой под конкретную сборку.
Заключение
Dye Recipe Unifier — это небольшой, но крайне полезный инструмент для любого модпак-билдера. Он убирает хаос из рецептов крафта с красителями, делает игру логичнее и приятнее, а главное — избавляет от рутины. Благодаря связке датапака и KubeJS-скрипта вы получаете универсальное решение, которое легко адаптируется под любую коллекцию модов. Попробуйте включить его в свою следующую сборку, и вы удивитесь, насколько проще станет крафт цветных блоков и предметов.