
CTM Vintage
Активный0.0
Установок
Последнее обновление
CTM Vintage
CTM Vintage — это расширенный форк классического мода ConnectedTexturesMod от команды Chisel, который восстанавливает функционал из современных версий Minecraft для версии 1.12.2. Теперь игроки могут наслаждаться новыми типами текстурных соединений, такими как горизонтальные паттерны ctm_horizontal, что открывает больше возможностей для создания бесшовных текстурных решений.
Что нового в этой версии
Важнейшим нововведением является внедрение системы загрузки через JSON-файлы. Для работы требуется создание файла ctm.json в корне мода, который служит индексом подключения текстурных логик. Формат совместим с современными версиями Minecraft, что упрощает переход между версиями для разработчиков.
Для разработчиков
Версия требует обновления Java-кода, так как часть логики была перенесена в компонент ConnectionCheck. Интерфейс IFacade теперь поддерживает пользовательские состояния блоков для кастомизации соединений — задействуйте эту опцию при необходимости расширения функционала.
Важно отметить: текущая версия несовместима с оригинальным модом Chisel. Разработка отдельного решения для исправления этого планируется в будущем.
Система JSON логики
Для загрузки пользовательских CTM-логик создайте файл "ctm.json" в папке домена мода: "assets/modid/ctm.json". Система работает по аналогии со звуковыми файлами — resource pack'и могут включать собственные типы без необходимости дублирования элементов из оригинала.
Пример файла из самого мода CTM Vintage:
{ "logics": [ "ctm", "optifine_full" ] }
Мод автоматически сканирует элементы в папке "assets/modid/ctm_logic", основываясь на указанных в ctm.json параметрах, и регистрирует их как типы CTM с идентификаторами вида "modid:item".
Поддерживается структура подпапок — например, можно разместить файл логики по пути "assets/modid/ctm_logic/mylogic/ctm.json", что создаст тип "modid:mylogic/ctm".
В демонстрационном примере мод найдет файлы "assets/ctm/ctm_logic/ctm.json" и "assets/ctm/ctm_logic/optifine_full.json", зарегистрировав типы "ctm:ctm" и "ctm:optifine_full".
Технические особенности
В файле optifine_full.json изменены размеры сетки на 12x12 пикселей (соответствует 192x192 пикселям или кратному значению). Это предотвращает ошибочное определение текстур как анимированных движком Forge.
Прокси-система текстур
Обновленная логика загрузки прокси-текстур работает следующим образом на примере Mekanism:
• Основной файл: assets/mekanism/textures/block/thermal_evaporation_block_1.png (16x16)
• Файл метаданных thermal_evaporation_block_1.png.mcmeta с конфигурацией:
{ "ctm": { "ctm_version": 1, "proxy": "mekanism:ctm/thermal_evaporation_block_1_full", "type": "CTM", "layer": "SOLID", "textures": [ "mekanism:ctm/thermal_evaporation_block_1" ] } }
• Промежуточный файл: assets/mekanism/textures/ctm/thermal_evaporation_block_1.png (16x16)
• Итоговый CTM-файл: assets/mekanism/textures/ctm/thermal_evaporation_block_1_full.png (192x192)
Финальный mcmeta файл указывает на использование логики ctm:optifine_full.