Скачать Cryonic Config — Minecraft Моды — MetaMods
Cryonic Config

Cryonic Config

Активный

Установок

1

Последнее обновление

2 месяца назад

Версии

b1.7.3 — 1.21.8
Клиент
Fabric
Forge
Neoforge
Quilt
Библиотеки

Cryonic Config

Cryonic Config

Универсальный инструмент для работы с конфигурациями

Cryonic Config представляет собой удобный инструмент для управления настройками модов, который отличается минимальной зависимостью от других компонентов и простотой переноса между различными версиями Minecraft. Основной акцент сделан на легкости использования и портативности решения.

Как работает система

Все файлы конфигураций сохраняются в формате JSON в папке {minecraft_dir}/config под названиями вида "mod_id.json". При начальной загрузке система читает все конфигурационные файлы через словарь, указанный в "cryonicconfig.json".

Настройки можно изменять только путем прямого редактирования JSON-файлов — графический интерфейс для конфигурации не предусмотрен. Для обеспечения удобной синхронизации между клиентом и сервером синхронизированные переменные передаются непосредственно игроку через чат и перехватываются системой.

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

Добавление зависимости в Groovy (build.gradle)

Добавьте Maven-репозиторий:

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

Для современных версий и Architectury (замените ${project.name} на fabric, forge или neoforge):

dependencies {
    modImplementation "maven.modrinth:cryonicconfig:fabric-${project.name}:1.0.0+mc${rootProject.minecraft_version}"
}

Для версии b1.7.3:

dependencies {
    modImplementation "maven.modrinth:cryonicconfig:babric:1.0.0+mcb1.7.3"
}

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

// Получение конфигурации для мода (можно вызывать в любом месте)
ConfigStorage config = CryonicConfig.getConfig("mod_id");

// Поддерживаются целые числа, числа с плавающей точкой, логические значения и строки
// При получении значения устанавливается значение по умолчанию
// Формат получения: (название переменной, значение по умолчанию)
// Нельзя повторно использовать названия переменных — они будут перезаписаны
config.getInt("varName", 3);
config.getDouble("name", 3.3);
config.getBoolean("var", true);
config.getString("str", "Geronimo!");

// Переменная будет доступна локально на клиенте и сервере
// Для использования серверной конфигурации подключенным игроком
// необходимо выполнить синхронизацию
config.sync("varName", playerEntity);

// Также можно использовать компактный формат:
CryonicConfig.getConfig("mod_id").getInt("varName", 3);

// Ручная установка значений вместо автоматической генерации через get
// Полезно для переопределения старых значений
config.setInt("varName", 3);
config.setDouble("name", 3.3);
config.setBoolean("var", true);
config.setString("str", "Geronimo!");

Указание зависимостей

В fabric.mod.json:

{
  "depends": {
    "cryonicconfig": "*"
  }
}

В mods.toml/neoforge.mods.toml:

[[dependencies.cryonicconfig]]
modId = "cryonicconfig"
type = "required"
versionRange = "[0,)"
Участники проекта
Slainlight

Slainlight

Разработчик

slainlite

slainlite

Создан: 28 фев 2025

ID: 83005