Скачать Hocon Resource Loader — Minecraft Моды — MetaMods

Hocon Resource Loader

Активный

Установок

0

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

1 год назад

Версии

1.20 — 1.21
Клиент
Fabric
Forge
Quilt
Управление
Утилиты

Hocon Resource Loader - Расширенные возможности конфигурации для Minecraft

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

Мод автоматически обрабатывает все файлы с расширением .hocon в пакетах, преобразуя их через парсер HOCON и представляя игре в виде обычных JSON-файлов. Такой подход обеспечивает полную совместимость с существующими пакетами, использующими стандартный JSON-формат.

Для активации функционала необходимо добавить соответствующую настройку в файл pack.mcmeta:

{
    "pack": {
        "pack_format": 15,
        "description": {
            "translate": "settingsun.pack",
            "fallback": "Assets of SettingSun"
        },
        "supported_formats": [15, 22]
    },
    "hoconresourceloader" : {
        "enabled": true
    }
}

Ключевые преимущества HOCON

Основное преимущество формата HOCON заключается в поддержке директивы include, которая позволяет включать содержимое других файлов различными способами:

  • Включение по URL-адресу
  • Включение локальных файлов (идеально для конфигурации ресурспаков и датапаков)
  • Включение ресурсов Minecraft по идентификаторам

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

Практические примеры использования

Рассмотрим несколько рабочих примеров, демонстрирующих возможности мода:

Пример с включением локального файла:

# Текущая директория для чтения файлов соответствует корневой папке Minecraft
# Обычно это .minecraft или .minecraft/versions/{ИМЯ_ВЕРСИИ}
# В данном случае это {ПУТЬ_К_ПРОЕКТУ}/mod/run
include file("dirt.hocon")

Пример работы с локальными файлами

Простая конфигурация модели:

parent: "minecraft:block/stone"

Базовая конфигурация модели

Включение по идентификатору Minecraft:

# Поддержка идентификаторов Minecraft
include "minecraft:models/item/dirt.json"

Включение через идентификатор

Относительные пути в ресурсах:

# Поиск файлов осуществляется относительно начального пути, переданного менеджеру ресурсов
# В данном случае это models/
include "minecraft:item/dirt.json"

Работа с относительными путями

Модификация существующих JSON-файлов:

# Включение JSON-файлов не преобразуется в HOCON
# Это позволяет модифицировать JSON-файлы и предоставлять HOCON-файлы игре как обычные JSON
include "minecraft:models/item/torch.json"

textures.layer0 = "minecraft:block/soul_torch"

Модификация существующих конфигураций

Участники проекта
settingdust

settingdust

Разработчик

Создан: 19 янв 2024

ID: 11798