Скачать ExtendedMetadata — Minecraft Моды — MetaMods
ExtendedMetadata

ExtendedMetadata

Активный

Установок

0

Последнее обновление

9 лет назад
Клиент
Библиотеки

ExtendedMetadata

ExtendedMetadata представляет собой основной мод для Forge, который значительно расширяет лимиты идентификаторов блоков и метаданных в Minecraft. В стандартной версии игры для хранения информации о блоках используется 12 бит для ID и 4 бита для метаданных, что в совокупности умещается в 16-битное значение. Данная модификация заменяет этот подход на использование целых чисел, увеличивая диапазон ID блоков до 15 бит, а метаданных — до 16 бит. В результате количество возможных ID блоков возрастает с 4096 до 32768, а вариантов метаданных — с 16 до 65536.

Важные предупреждения

Этот мод изменяет способ хранения игровых миров на диске. Существующие миры автоматически конвертируются, однако после этого их невозможно будет открыть в стандартном Minecraft или Forge без установленного ExtendedMetadata.

Также следует учитывать, что мод увеличивает потребление дискового пространства и сетевого трафика, что может привести к замедлению работы игры. Особую осторожность нужно проявлять при использовании загрузчика моделей и текстур из версии 1.8 — чрезмерное количество метаданных может вызвать ошибки нехватки памяти. Для решения этой проблемы требуется специальный загрузчик моделей и текстур, который уже реализован, но продолжает совершенствоваться.

Для разработчиков модов

Подробная информация о том, как интегрировать ExtendedMetadata в свои моды, доступна на странице GitHub: https://github.com/AgeCraft/ExtendedMetadata

Зависимости

  • Minecraft Forge версии 11.15.0.1608 или новее
  • LLibrary версии 0.6.1 или новее

Установка

  1. Скачайте и установите Minecraft Forge
  2. Загрузите и установите LLibrary
  3. Скачайте ExtendedMetadata и поместите файл в папку mods

Ограничения

Изначально планировалось увеличить ID блоков до 16 бит, но это невозможно из-за особенностей работы с целыми числами в Java. Версии Java 7 и ниже поддерживают только знаковые целые числа в диапазоне от 2^-31 до 2^31. Существует два возможных решения:

  • Требовать Java 8, которая поддерживает беззнаковые целые числа
  • Использовать тип long для хранения состояний блоков, но это значительно увеличило бы объем хранимых данных и сетевой трафик, а также потребовало бы серьезных изменений в коде

Поэтому мод полностью расширяет только метаданные блоков, а не их идентификаторы, поскольку метаданные имеют больше практической ценности.

Технические детали создания

Для создания этого мода был использован форк Minecraft Forge с настроенной средой разработки. После изучения декомпилированного кода Minecraft были определены внутренние механизмы работы с состояниями блоков, хранением чанков и их передачей по сети. В процессе внесения изменений в исходный код фиксировались все модифицированные поля и методы, что значительно упростило создание основного мода — оставалось только найти соответствующий байт-код и настроить ASM-трансформации. Этот процесс требовал значительных усилий, но инструменты CodeChickenLib/CodeChickenCore и плагин Bytecode Outline для Eclipse существенно помогли в работе.

Авторы

  • Разработка: команда AgeCraft
  • Основной разработчик: DanielHuisman
Участники проекта
_ForgeUser12526458

_ForgeUser12526458

Создан: 3 дек 2015

ID: 37138