KubeJS Botany Pots: кастомные культуры и грядки через скрипты
Если вы собираете сборку на Minecraft с модом Botany Pots и хотите тонко настроить фермерство под свой сервер или модпак, связка KubeJS Botany Pots даёт прямой контроль над рецептами: семена, почвы, удобрения и темп роста описываются в событиях сервера без правки JSON вручную. Так проще синхронизировать баланс с другими модами, версиями и механиками обновлений.
Зачем нужен Botany Pots и что добавляет KubeJS
Botany Pots превращает компактные горшки в мини-агрокультуры: игрок сажает семена, выбирает грунт и получает урожай по таймеру. KubeJS Botany Pots расширяет это для создателей контента: через ServerEvents.recipes можно регистрировать собственные культуры, типы почвы и удобрения, не ломая ванильные правила и не трогая jar-файлы модов.
- Культуры (crop) — что сажается, на каких почвах растёт, как выглядит блок при росте, какие предметы выпадают и с какой вероятностью.
- Почвы (soil) — предмет-носитель, визуальное состояние, модификаторы скорости роста и урожайности.
- Удобрения (fertilizer) — предмет, который ускоряет цикл за счёт случайного числа тиков в заданном диапазоне.
Структура рецепта культуры
Типичный вызов event.recipes.botanypots.crop связывает семенной предмет с допустимым набором почв (часто через теги), задаёт отображаемый блок на стадии роста через DisplayState, перечисляет дроп с шансами, длину цикла в тиках и при необходимости дополнительный параметр урожайности или шанса вторичного выпадения — точное число аргументов зависит от вашей версии сборки и документации дополнения.
Параметр дропа обычно описывается как список записей вида «предмет плюс шанс»; при необходимости используйте обёртки предметов со стеком, если ваш скрипт это поддерживает. Так проще сделать редкие побочные дропы или связать рост с прогрессией модов.
Почвы: скорость и урожай
Метод event.recipes.botanypots.soil привязывает предмет к визуалу блока во время роста и может давать два ключевых модификатора: ускорение всех культур на этой почве и бонус к шансу урожая. Значения вроде 0,5 для роста означают заметное ускорение цикла относительно базового времени, что хорошо подходит для «богатых» биомов или поздней стадии игры.
Удобрения и контроль темпа
Через event.recipes.botanypots.fertilizer вы задаёте предмет-удобрение и диапазон ускорения роста в тиках — например, минимум и максимум отнимаемых тиков за одно применение. Это позволяет делать дешёвые расходники с узким эффектом и дорогие — с широким диапазоном, не переписывая ядро Botany Pots.
Подсказки по отладке и версиям
Для точных сигнатур типов вроде DisplayState, DropItem и GrowthAmount на практике удобно поставить ProbeJS: он подсвечивает доступные методы прямо в игре и снижает число ошибок при переносе сборки между версиями Minecraft. После изменений всегда проверяйте загрузку на сервере и клиенте: рецепты KubeJS часто кешируются, поэтому полный перезапуск мира надёжнее быстрой перезагрузки.
Пакеты с большим числом модов иногда проще собирать через единый лаунчер с каталогом дополнений: если вы уже подбираете связку Botany Pots и сценариев на KubeJS, имеет смысл попробовать установку через лаунчер foxygame.net — это гибкий современный способ запускать Minecraft и подтягивать моды прямо из меню без лишних переходов между сайтами.
Практические советы по балансу
- Согласуйте длительность тиков с генерацией энергии или временем крафта в модах, чтобы горшки не обгоняли фермы блоками за секунду.
- Используйте теги почв вместо перечисления каждого блока — проще поддерживать обновления и модовые деревья.
- Дробите редкие дропы на несколько ступеней шанса вместо одной строки с 1 % — игроки лучше чувствуют прогрессию.
Вывод
KubeJS Botany Pots — это мост между гибкими скриптами сервера и компактной агромеханикой горшков: вы описываете семена, грунты и ускорители декларативно, держите баланс в одном месте и быстро адаптируете сборку под новые версии и биомы. Освоив события рецептов и аккуратно настроив модификаторы роста и урожая, вы получите предсказуемую экономику ресурсов без тяжёлого редактирования файлов модов.