Patched — это мод, предоставляющий возможность модифицировать части JSON-файлов через дата-паки, ресурс-паки и другие моды, избегая их полной замены. Данный мод может использоваться для изменения биомов, таблиц добычи, моделей и большинства других JSON-файлов в игре. Если Mojang реализует систему данных для моделей существ (что кажется маловероятным в ближайших обновлениях), Patched позволит легко модифицировать их, предлагая альтернативу CEM (Custom Entity Models) от OptiFine.
Основные возможности Patched:
- Удаление или добавление элементов генерации мира в биомах.
- Изменение условий достижений (advancements).
- Редактирование таблиц добычи (loot tables).
- Модификация рецептов крафта.
- Групповое изменение файлов по шаблону (например, всех биомов).
- Условные изменения на основе установленных модов или настроек.
Цель Patched — минимизировать конфликты между дата-паками, ресурс-паками и модами, а также упростить поддержку файлов, избегая их полного переопределения при обновлениях игры.
Команды для диагностики
/patched list packs
— список пакетов с патчами./patched list patches <pack>
— список патчей в указанном пакете./patched dump patch <pack> <name>
— отображение содержимого патча./patched dump file <name>
— просмотр файла с комментариями о внесённых изменениях.
Принцип работы
Patched использует файлы с расширением .json.patch
, следующих синтаксису RFC 6902 с дополнительными функциями для моддинга. Пример патча для удаления гравия из биома plains:
{
"op": "find",
"path": "/features/6",
"test": {
"path": "",
"value": "minecraft:ore_gravel"
},
"then": {
"op": "remove",
"path": ""
}
}
Файл размещается в дата-паке по пути data/minecraft/worldgen/biome/plains.json.patch
.
Для активации патчей в пакете необходимо добавить в его pack.mcmeta
:
{
"pack": { ... },
"patched": {
"format_version": 1
}
}
Совместимость
Мод интегрируется в систему загрузки ресурсов Minecraft, обеспечивая совместимость с большинством модов. Потенциальные конфликты возможны только при изменении аналогичных участков кода другими модами.
Ограничения
1. Объединённые ресурсы (теги, sounds.json и др.) могут патчиться только пакетами, которые их предоставляют. 2. Версии ниже 1.19.3: ванильные биомы нельзя патчить напрямую из-за жёсткой кодировки. Решение — использование дата-паков с низким приоритетом, добавляющих биомы через экспорт генерации мира.