Abstractium
Активный0.0
Установок
Последнее обновление
Версии
Abstractium
Abstractium представляет собой практичный инструментальный мод средней сложности, предназначенный для упрощения взаимодействия между различными модификациями и их зависимостями.
Функциональные возможности
Архитектура Abstractium построена на двух основных компонентах:
- Прикладной программный интерфейс (API) - включает систему событий и инструменты абстракции
- Абстракция игровых механик - готовый слой совместимости для Minecraft
Система событий работает по стандартному принципу с дополнительными преимуществами: поддержкой параллельного выполнения и идентификацией через текстовые ключи. Это позволяет надежно изолировать функциональность, которая может перестать работать после обновлений игры.
Инструменты абстракции предлагают простой способ реализации заранее подготовленных вызовов через "отображения абстракции". Разные версии этих отображений регистрируются автоматически, а система управления версиями работает полностью самостоятельно.
Особенностью архитектуры является поддержка вложенных структур абстракции - можно создавать подмножества специализированных вызовов для конкретных задач, формируя иерархическую систему зависимостей.
Готовый слой абстракции для Minecraft предоставляет другим модификациям удобный инструмент для работы с игровыми механиками. Стоит отметить, что текущая реализация содержит только базовый функционал, достаточный для портирования существующих модов. Разработка продолжается активно.
Начало работы
Использование встроенной системы абстракции крайне простое - достаточно добавить мод в список зависимостей вашего проекта. Основные элементы доступны через AbstractiumClient#CLIENT_ABSTRACTION_HANDLER и AbstractiumCommon#COMMON_ABSTRACTION_HANDLER.
Для создания собственной системы обработки абстракции потребуется изучить реализацию в пакете net.feltmc.abstractium.library. Более подробная документация появится в ближайшем будущем.
Планы развития
Текущие задачи включают поддержку версий Fabric от 1.18.2 до самых актуальных. В перспективе рассматриваются следующие направления:
- Среда исполнения кода - запуск модов от разных версий игры без необходимости их адаптации
- Поддержка старых релизов Minecraft версий ниже 1.18.2
- Абстракция для платформы Forge
Мотивация создания
Разработка была мотивирована частыми изменениями внутренней структуры кода Minecraft. Такие правки усложняют моддинг, заставляя разработчиков тратить время на переписывание уже работающего кода вместо создания нового функционала.
Содержание нескольких активных веток для разных версий игры превращается в сложную организационную задачу, а для пользователей это означает невозможность собрать сборку с любимыми модами для последних версий игры. Abstractium призван решить эти проблемы, предоставив универсальный инструмент совместимости.