ChunkAPI avatar

ChunkAPI [1.7.10]

ChunkAPI

Автор: FalsePattern

Лицензия: GNU AGPLv3.0 с дополнительными разрешениями (см. ниже или в файле LICENSE)

Краткое описание

Модификация для добавления пользовательских данных в чанки без необходимости работы с кастомными пакетами, обработкой событий и хуками загрузки.

Цели

Основная цель — предоставить способ добавления пользовательских данных в чанки без модификации ванильных классов. API обеспечивает базовую сериализацию/десериализацию данных для сетевого взаимодействия и формата NBT.

Ограничения

Не предоставляет систему коллбэков/хуков, кроме связанных с сохранением/загрузкой и сетевым взаимодействием. Хранилище данных должно реализовываться пользователем самостоятельно.

API и спецификация

ChunkDataManager

Основной класс для управления регистрациями данных. Функциональность реализуется через интерфейсы:

  • PacketDataManager — синхронизация данных между клиентом и сервером
  • ChunkNBTDataManager — сохранение данных в NBT чанка
  • SectionNBTDataManager — хранение данных на уровне секций (16x16x16 блоков)

ChunkDataRegistry

Реестр для регистрации менеджеров данных. Все регистрации выполняются на фазе init. Отключение менеджеров возможно через disableDataManager на фазе postInit.

Спецификация пакетов

Модифицированные форматы сетевых пакетов:

S21PacketChunkData (новый формат)

Размер (байты)Тип данныхНазначение
4intX-координата
4intZ-координата
1boolФлаг принудительного обновления
2shortМаска ExtendedBlockStorage
4intДлина несжатых данных
4intДлина сжатых данных (n)
nbyte[n]Сжатые данные

S26PacketMapChunkBulk (новый формат)

Размер (байты)Тип данныхНазначение
2shortКоличество чанков (n)
n * 4int[n]Длины несжатых данных чанков
4intДлина сжатых данных (m)
1boolФлаг наличия данных об освещении
mbyte[m]Сжатые данные
n * 10(int, int, short)[n]Заголовки чанков (X, Z, маска EBS)

Структура данных менеджеров

РазмерТипОписание
4intКоличество менеджеров (n)
n * varMGRDataДанные менеджеров

Зависимости

Требует FalsePatternLib и Mixin ≥ 0.8.5.

Требуемые зависимости

UniMixins avatarUniMixinsmakamys
FalsePatternLib avatarFalsePatternLibFalsePattern

Скачать ChunkAPI

 
Тип Скачать Версия Загрузчик Обновлено Размер
ReleaseChunkAPI version: 0.1.31.7.10Forge17 апреля 202337,1 КБ
ReleaseChunkAPI 0.1.21.7.10Forge16 апреля 202337,3 КБ
ReleaseChunkAPI 0.1.01.7.10Forge2 апреля 202337,5 КБ
ReleaseChunkAPI 0.1.11.7.10Forge2 апреля 202337,3 КБ
Пожалуйста авторизуйтесь, чтобы оставить свой комментарий.