▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/Unruled API
Unruled API

Unruled API

Unruled API - мод для Майнкрафт, который расширяет стандартные игровые правила (геймрулы), добавляя новые типы значений и возможность задавать правила отдельно для каждого измерения.

Оцените первым
41.3K
20

Unruled API - Расширение игровых правил для Minecraft

Unruled API - это мод для Майнкрафт, который решает давнюю проблему ванильных геймрулов. В обычной игре вы ограничены только целыми числами и булевыми значениями (true/false). Этот мод ломает эти рамки, позволяя создавать правила с плавающей точкой, строками, текстом, перечислениями (enum), селекторами сущностей и даже ссылками на игровые регистры.

Зачем это нужно?

Если вы когда-нибудь хотели настроить игру точнее - например, задать не просто "включить" или "выключить" моб-грифинг, а указать конкретные значения для разных миров - Unruled API даёт такую возможность. Особенно это оценят создатели сборок модов и серверов, где гибкость настроек критична.

Как это работает?

Разработчики могут легко создавать новые типы геймрулов через статические методы класса com.nerjal.unruled_api.UnruledApi. Например:

import com.nerjal.unruled_api.UnruledApi;

public class MyClass {
    private static final int STRING_RULE_MAX_LENGTH = 24;

    public void gamerulesRegistration() {
        var myFloatingRule = UnruledApi.floatRuleBuilder(category, 1.5)
                .register("mymod:my_gamerule");
        var myStringRule = new StringRule.Builder(category, "initial value", STRING_RULE_MAX_LENGTH)
                .register("mymod:my_other_gamerule");
    }
}

Для быстрого создания есть упрощённые методы:

import com.nerjal.unruled_api.UnruledApi;

    public static void quickGamerulesRegistration() {
        var myLongRule = UnruledApi.registerLong(Identifier.of("mymod:my_long_rule"), category, 25L);
        var myEnumRule = UnruledApi.registerEnumRule(Identifier.of("mymod:my_enum_rule"), category, MyEnum.FIRST, MyEnum.class);
    }
    
    enum MyEnum {
        FIRST,
        SECOND,
        THIRD
    }

Также можно добавлять валидаторы значений - например, разрешить только нечётные числа в целочисленном правиле.

Переопределение правил по измерениям

Одна из самых мощных фич Unruled API - возможность задавать разные значения геймрулов для каждого измерения. Это делается через команду gamerule-override:

  • gamerule-override - список переопределений в текущем измерении
  • gamerule-override <id измерения> - список переопределений в указанном измерении
  • gamerule-override get <id геймрула> - проверить значение в текущем измерении
  • gamerule-override set <id геймрула> <значение> - установить переопределение
  • gamerule-override unset <id геймрула> - удалить переопределение
  • gamerule-override in <id измерения> get <id геймрула> - проверить в другом измерении
  • gamerule-override in <id измерения> set <id геймрула> <значение> - установить в другом измерении
  • gamerule-override in <id измерения> unset <id геймрула> - удалить в другом измерении

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

Улучшенная навигация по командам

В ванильном Майнкрафт искать нужный геймрул среди длинного списка - то ещё удовольствие. Unruled API добавляет фильтрацию по категориям прямо в команду /gamerule. Например:

/gamerule CHAT 

Покажет только правила из категории "чат". Это работает и с модифицированными правилами.

Настройка значений по умолчанию

Особенно полезно для создателей сборок модов. Можно задать кастомные значения по умолчанию для любых геймрулов при создании мира. Для этого создайте файл config/default_gamerules.json:

{
  "doDaylightCycle": "false",
  "mobGriefing": "false"
}

Работает и с модифицированными правилами!

Кастомные категории геймрулов

Разработчики могут добавлять свои категории геймрулов. Для версий до 1.21.11 это делается через реализацию CategoryProvider и добавление её в UnruledEarlyUtils.CATEGORY_PROVIDERS. На Fabric - через preLaunch entrypoint, на (Neo)Forge - при инициализации @Mod класса.

Как подключить в свой проект?

Добавьте репозиторий Modrinth в ваш build.gradle:

repositories {
    maven {
            name = "Modrinth"
            url = "https://api.modrinth.com/maven"
    }
}

И импортируйте мод:

Для Fabric (loom):

dependencies {
    modApi "maven.modrinth:unruled-api:${project.unruled_version}"
}

Для (Neo)Forge:

dependencies {
    implementation "maven.modrinth:unruled-api:${project.unruled_version}"
}

Важно: не включайте этот мод внутрь своего (JiJ, shadow) - используйте как внешнюю зависимость.

Итог

Unruled API - это must-have для тех, кто хочет выйти за рамки ванильных геймрулов в Майнкрафт. Если вы собираете сервер или сборку модов с тонкой настройкой под разные измерения - этот мод даст вам гибкость, которой так не хватало в обычной игре. Скачайте Unruled API и настройте Minecraft под себя!

Партнёрский материал

Как поиграть с друзьями с модом Unruled API?

Мод Unruled API куда интереснее в компании: поднимите сервер Майнкрафт с уже установленным модом, позовите друзей и играйте по своим правилам. Хостинг Майнкрафт для мода Unruled API будет готов за пару минут - BungeeHost сделает всё за вас.

Часто задаваемые вопросы

Совместимость

Minecraft: Java Edition

26.2.x26.1.x1.21.x1.20.x1.19.x1.18.x

Платформы

Поддерживаемые окружения

Сервер

Ссылки

Создатели

Детали

Лицензия:
Опубликован:2 года назад
Обновлён:2 месяца назад
Главная