Меню

Rhino

Тематическая иллюстрация для Rhino

Кратко о проекте

Rhino - технический мод, который предоставляет среду выполнения JavaScript для других проектов Minecraft. Он не добавляет контент напрямую, зато служит фундаментом для скриптов, автоматизации и глубокой настройки сборок.

Файлы

Сбросить
Тип Название Загружен Размер Версия игры Загрузчик Скачивания
R
Fabric +1 Ещё: Forge
12 май 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
556.1 тыс. раз
R
17 апр 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
950.4 тыс. раз
R
15 апр 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
29 тыс. раз
R
15 апр 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
680 раз
R
15 апр 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
170 раз
R
Forge
31 янв 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
2.5 млн раз
R
Forge
30 янв 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
8.2 тыс. раз
R
Forge
28 янв 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
63.1 тыс. раз
R
Forge
28 янв 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
316 раз
R
Forge
08 янв 2021
1.1 Мб
1.14.4 +6 Ещё: 1.15.21.16.11.16.21.16.31.16.41.16.5
412.2 тыс. раз
R
Forge
26 ноя 2020
1.0 Мб
1.14.4 +5 Ещё: 1.15.21.16.11.16.21.16.31.16.4
755 тыс. раз
R
Forge
09 ноя 2020
1.0 Мб
1.14.4 +5 Ещё: 1.15.21.16.11.16.21.16.31.16.4
357.9 тыс. раз
R
Forge
31 окт 2020
1.0 Мб
1.14.4 +5 Ещё: 1.15.21.16.11.16.21.16.31.16.4
2 тыс. раз
R
Forge
31 окт 2020
1.0 Мб
1.14.4 +4 Ещё: 1.15.21.16.11.16.21.16.3
258 раз

Зачем нужен Rhino

Rhino относится к библиотечным модам: его работа почти незаметна игроку, пока другой проект не обращается к встроенному JavaScript-движку. Главная задача библиотеки - выполнять скрипты и обеспечивать их взаимодействие с Java-кодом Minecraft. Благодаря этому разработчики могут создавать удобные инструменты настройки, не заставляя авторов сборок писать отдельный мод ради каждого изменения.

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

Роль в модпаке

Наиболее понятный пример применения дает KubeJS. Он позволяет авторам сборок описывать изменения через JavaScript, а Rhino отвечает за выполнение такого кода. Конкретный набор доступных событий, рецептов и объектов определяет уже надстройка, а не сам движок.

  • Для игроков: обеспечивает работу зависимых модов и подготовленных авторами скриптов.
  • Для сборщиков: дает основу для программируемой настройки контента и поведения модпака.
  • Для разработчиков: предоставляет адаптированную среду JavaScript с возможностью взаимодействия с Java.

Практический вывод прост: удалять Rhino как якобы бесполезную библиотеку не следует, если он указан среди зависимостей. Последствием обычно становится ошибка запуска или отказ скриптовой части сборки. При диагностике проблем полезно смотреть не только на Rhino, но и на код надстройки: синтаксическая ошибка в пользовательском скрипте не обязательно означает неисправность движка.

Сравнение с другими проектами

По назначению Rhino заметно отличается от CraftTweaker. CraftTweaker предлагает готовую систему изменения сборки и собственный сценарный язык, тогда как Rhino в первую очередь исполняет JavaScript для подключенных инструментов. ContentTweaker расширяет возможности создания контента в экосистеме CraftTweaker, поэтому тоже находится уровнем выше и решает прикладные задачи.

С библиотеками общего назначения разница не менее важна. Architectury API помогает разработчикам работать с общей кодовой базой на разных платформах, а Cloth Config API ориентирована на конфигурационные экраны. Rhino не заменяет ни один из этих проектов: его специализация - выполнение JavaScript и связь сценариев с модифицированной игрой.

Кому он действительно полезен

Rhino необходим прежде всего создателям модпаков, разработчикам скриптовых инструментов и игрокам, запускающим сборки с соответствующими зависимостями. Для обычного прохождения без таких надстроек библиотека не дает самостоятельных целей. Зато в технической сборке она становится важной частью архитектуры, позволяя переносить множество настроек из жестко написанного кода в более гибкие сценарии.