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

ModernConfig

ModernConfig - современная библиотека конфигураций для Fabric модов в Minecraft. Красивый интерфейс с анимациями, множество типов настроек и простой API для разработчиков.

Оцените первым
43.4K
1

ModernConfig - это библиотека конфигураций для Minecraft Fabric модов, которая делает настройку модов удобной и красивой. Забудьте про редактирование конфиг-файлов вручную: ModernConfig добавит в игру современный экран настроек с анимациями и полным набором элементов управления.

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

Красивый интерфейс

  • Плавные анимации и переходы
  • Адаптивный дизайн
  • Тёмная тема, удобная для глаз

Типы настроек

  • Переключатели (toggle) - вкл/выкл
  • Текстовые поля
  • Слайдеры с настраиваемым диапазоном
  • Списки с добавлением/удалением элементов
  • Выбор цвета (HSV + hex)
  • Выпадающие списки
  • Категории для группировки настроек

Для разработчиков

  • Простой API с билдером
  • Слушатели изменений конфигурации
  • Глобальный экран конфигурации для всех модов
  • Интегрированный бинд - Right Shift (можно поменять)
  • Оптимизированная производительность, анимации не жрут FPS

Установка

Для игроков

  1. Установите Fabric Loader и Fabric API.
  2. Скачайте ModernConfig.
  3. Переместите .jar файл в папку mods.
  4. Запустите Minecraft с профилем Fabric.

Для разработчиков

Добавьте ModernConfig в ваш build.gradle:

repositories {
    maven {
        name = 'QWERTZ-Repo'
        url = 'https://repo.qwertz.app/'
    }
}

dependencies {
    modImplementation 'app.qwertz:modernconfig:1.3'
}

Использование

  • Открыть конфигурацию: Нажмите Right Shift (клавишу можно изменить).
  • Главный экран: Показывает все моды, использующие ModernConfig.
  • Клик по моду: Открывает настройки этого мода.
  • Кнопка назад: Возврат к предыдущему экрану.

Гайд для разработчиков

Быстрый старт

Вот как легко создать конфигурацию:

public class YourMod implements ClientModInitializer {
    
    @Override
    public void onInitializeClient() {
        ModernConfig config = ConfigBuilder.create("YourMod", "Your Mod Configuration")
            .toggle("enabled", "Enable Mod", true)
            .slider("power", "Power Level", 50, 0, 100, 1)
            .text("username", "Player Name", "Steve")
            .color("theme_color", "Theme Color", 0x4A90E2)
            .list("whitelist", "Player Whitelist", "Player Name")
            .dropdown("difficulty", "Difficulty", Arrays.asList("Easy", "Normal", "Hard"), "Normal")
            .build();
    }
}

Категории

Если настроек много, их удобно сгруппировать:

ModernConfig config = ConfigBuilder.create("AdvancedMod", "Advanced Mod Settings")
    .category("general", "General Settings", "Main configuration options", category -> category
        .toggle("enabled", "Enable Mod", true)
        .slider("update_interval", "Update Interval", 20, 1, 100, 1)
        .text("server_url", "Server URL", "https://api.example.com")
    )
    .category("ui", "User Interface", "Customize the user interface", category -> category
        .color("primary_color", "Primary Color", 0x4A90E2)
        .color("secondary_color", "Secondary Color", 0x2ECC71)
        .dropdown("theme", "Theme", Arrays.asList("Dark", "Light", "Auto"), "Dark")
        .slider("ui_scale", "UI Scale", 1.0f, 0.5f, 2.0f, 0.1f)
    )
    .category("advanced", "Advanced Settings", "Advanced configuration options", category -> category
        .toggle("debug_mode", "Debug Mode", false)
        .list("blocked_items", "Blocked Items", "Item ID")
        .list("whitelist", "Whitelisted Servers", "IP")
        .text("api_key", "API Key", "")
    )
    .build();

Доступ к значениям конфигурации

// Получаем опции по пути категории
ConfigOption<?> enabledOption = config.getOption("general", "enabled");
ConfigOption<?> updateOption = config.getOption("general", "update_interval");
ConfigOption<?> whitelistOption = config.getOption("advanced", "whitelist");

// Получаем значения
boolean isEnabled = (Boolean) enabledOption.getValue();
int updateInterval = (Integer) updateOption.getValue();
List<String> whitelist = (List<String>) whitelistOption.getValue();

Типы настроек

Переключатель (Boolean)

.toggle("toggle_id", "Display Name", defaultValue)
  • Назначение: Включение/выключение функций.
  • Примеры: Флаги фич, вкл/выкл опции.

Текстовое поле (String)

.text("text_id", "Display Name", "default_value")
.text("text_id", "Display Name", "default_value", maxLength)
  • Назначение: Ввод текста.
  • Примеры: Ник игрока, URL сервера, пути, API-ключи.

Слайдер (Numeric)

.slider("slider_id", "Display Name", defaultValue, minValue, maxValue, step)
  • Назначение: Числовой ввод с ограничениями.
  • Примеры: Проценты, масштаб, интервалы, задержки.

Выбор цвета (Integer)

.color("color_option_id", "Display Name", 0xRRGGBB)
  • Назначение: Выбор цвета с пикером.
  • Примеры: Цвет темы, подсветка, UI-настройки.

Список (String Array)

.list("list_id", "Display Name", "Item Display Name")
  • Назначение: Список текстовых записей.
  • Примеры: Вайтлист игроков, заблокированные предметы, ключевые слова.

Выпадающий список (String Selection)

.dropdown("dropdown_id", "Display Name", Arrays.asList("Option1", "Option2"), "Default")
  • Назначение: Выбор одного из нескольких вариантов.
  • Примеры: Уровень сложности, темы, режимы рендера.

Категории (Organization)

.category("category_id", "Category Name", "Description", category -> category
    // Добавляйте опции здесь
)
  • Назначение: Логическая группировка настроек.
  • Примеры: Группировка связанных опций.

Зачем вообще нужна эта библиотека?

В ванильном Minecraft у модов конфиги обычно лежат в папке config в виде текстовых файлов или JSON. Чтобы поменять настройку, игроку приходится выходить из игры и руками редактировать файл. ModernConfig решает эту проблему: теперь все настройки доступны прямо в игре через красивый экран с анимациями. Это особенно удобно для обычных игроков, которые не хотят разбираться в формате конфигов.

Для разработчиков библиотека предоставляет простой API: вы описываете структуру конфигурации в коде, а ModernConfig сам создаёт интерфейс и сохраняет значения. Не нужно рисовать UI вручную или разбираться в навороченных системах рендера. Всё из коробки.

ModernConfig работает только на Fabric и поддерживает последние версии Майнкрафт. Если вы собираете мод или модпак, обязательно попробуйте эту библиотеку - она сделает ваши настройки красивыми и функциональными. Скачайте ModernConfig и оцените разницу!

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

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

Minecraft: Java Edition

26.2.x26.1.x1.21.x

Платформы

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

Клиент

Зависимости

Ссылки


Создатели

Детали

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