
Hocon Resource Loader
Активный0.0
Установок
Последнее обновление
Версии
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"