Ccurseforge
SuperMartijn642’s Config Lib

SuperMartijn642’s Config Lib

SuperMartijn642's Config Lib упрощает создание и управление конфигурационными файлами с автоматической синхронизацией и обновлением значений.

Автор: SuperMartijn642 Тип: Мод Категории: API и библиотекиМоды Загрузок: 179 232 712 Просмотров: 1 Обновлён: 28.08.2026

SuperMartijn642’s Config Lib упрощает работу с файлами конфигураций, обеспечивая автоматическое обновление и синхронизацию значений.


SuperMartijn642's Config Lib

Основные возможности

Данная библиотека позволяет один раз задать параметры конфигурации, после чего самостоятельно:

  • обновляет значения при загрузке мира;
  • синхронизирует значения между сервером и клиентами;
  • автоматически обрабатывает значения, предназначенные только для клиента или сервера.

Создание конфигурации

Для создания конфигурации используется класс ModConfigBuilder. Новый экземпляр создаётся так:

ModConfigBuilder builder = new ModConfigBuilder();

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

Примеры создания разных типов параметров:

Supplier<Boolean> booleanValue = builder.define("booleanValue", true);
Supplier<Integer> integerValue = builder.define("integerValue", 5, 0, 10);
Supplier<Double> doubleValue = builder.define("doubleValue", 0.5, 0, 1);
Supplier<ExampleEnum> enumValue = builder.define("enumValue", ExampleEnum.VALUE_1);

Для добавления комментария к параметру перед вызовом define можно использовать метод comment:

Supplier<Boolean> valueWithComment = builder.comment("Комментарий для valueWithComment").define("valueWithComment", true);

По умолчанию значения загружаются при загрузке мира. Чтобы параметр обновлялся только при запуске игры, вызовите перед define метод gameRestart():

Supplier<Boolean> notReloadedValue = builder.comment("Значение, не обновляемое при загрузке мира").gameRestart().define("notReloadedValue", true);

Параметры в конфигурациях типа COMMON или SERVER по умолчанию синхронизируются с клиентами. Чтобы отключить синхронизацию для конкретного значения, используйте dontSync():

Supplier<Boolean> notSynchronizedValue = builder.comment("Значение без синхронизации").dontSync().define("notSynchronizedValue", true);

Параметры можно структурировать в категории, используя методы push(String) для создания категории и pop() для выхода из неё:

builder.push("special");
Supplier<Boolean> specialValue = builder.comment("Параметр в категории special").define("specialValue", true);
builder.pop();

Комментарий к категории добавляется методом categoryComment(String):

builder.push("client").categoryComment("Комментарий для категории client");

После определения всех параметров вызовите build() для завершения создания конфигурации:

builder.build();

Значения в конфигурации теперь будут автоматически обновляться и синхронизироваться. Для получения текущих значений используйте сохранённые объекты Supplier.

Библиотека поддерживает версии Minecraft 1.12, 1.14, 1.15 и 1.16.


Пример мода

Пример использования Config Lib можно найти в исходном коде примерного мода.


Полезная информация

Частые вопросы

Короткие ответы по установке, совместимости и возможностям проекта.

Как создать новый параметр конфигурации?

Создайте экземпляр ModConfigBuilder и вызовите метод define с именем и значением по умолчанию.

Можно ли добавить комментарий к параметру?

Да, перед вызовом define используйте метод comment с текстом комментария.

Как отключить синхронизацию параметра с клиентами?

Для этого вызовите метод dontSync перед define для нужного параметра.

Как задать параметры в отдельной категории?

Используйте методы push для входа в категорию и pop для выхода, параметры, добавленные внутри, будут относиться к этой категории.

Поддерживает ли библиотека Minecraft версии 1.16?

Да, Config Lib работает с версиями Minecraft 1.12, 1.14, 1.15 и 1.16.

Центр загрузок

Доступные версии

Выберите подходящую версию игры и скачайте нужный выпуск.

SuperMartijn642's Config Library 1.1.8 for Fabric 26.2

supermartijn642configlib-1.1.8-fabric-mc26.2.jar

Скачать201.32 KB
Релиз
Версии
26.2
Загрузчик
Fabric+1
Загрузки125 191
Добавлен

SuperMartijn642's Config Library 1.1.8 for Fabric 26.1

supermartijn642configlib-1.1.8-fabric-mc26.1.jar

Скачать201.32 KB
Релиз
Версии
26.1.2+2
Загрузчик
Fabric+1
Загрузки31 274
Добавлен

SuperMartijn642's Config Library 1.1.8 for Forge 26.2

supermartijn642configlib-1.1.8-forge-mc26.2.jar

Скачать201.05 KB
Релиз
Версии
26.2
Загрузчик
Forge
Загрузки85 985
Добавлен

SuperMartijn642's Config Library 1.1.8 for Forge 26.1

supermartijn642configlib-1.1.8-forge-mc26.1.jar

Скачать201.05 KB
Релиз
Версии
26.1.2+2
Загрузчик
Forge
Загрузки11 210
Добавлен

SuperMartijn642's Config Library 1.1.8 for NeoForge 26.2

supermartijn642configlib-1.1.8-neoforge-mc26.2.jar

Скачать201.57 KB
Релиз
Версии
26.2
Загрузчик
NeoForge
Загрузки30 783
Добавлен