modsmith Войти Войти Рус / Eng

Beyond Dimensions

beyonddimensions · 1011015 загрузок · MIT

клиент: required · сервер: required (заявлено автором мода)

Beyond Dimensions — это мод, предоставляющий решения для хранения данных. Он представляет виртуальную систему хранения, доступную в поздней версии оригинальной игры.

Описание

За пределами измерений

Beyond Dimensions — мод, ориентированный на хранение и полезность. Он представляет «Пространственную сеть» — универсальную систему хранения, поддерживающую предметы, жидкости, энергию FE, опыт, химикаты Mekanism, источники Ars Nouveau, ману Botania и Industrial Foregoing:Souls. Он сочетает в себе исключительную емкость и производительность хранилища с удобным интерфейсом, позволяющим легко удовлетворить потребности в хранилище для большинства сценариев.

Начало работы

Вам нужно победить Иссушителя или заполучить Звезду Пустоты любым другим способом. Превратите его в Нестабильный фрагмент пространства-времени. Держите этот фрагмент в своем инвентаре в течение часа, превратив его в Стабильный фрагмент пространства-времени. Используйте это, чтобы создать Генератор многомерной сети и активировать его, чтобы создать свою Пространственную сеть. Затем просто нажмите горячую клавишу (по умолчанию: «O»), чтобы открыть интерфейс хранилища.

Система хранения

  • Емкость: Емкость хранилища по умолчанию — максимальная. Он может хранить 2,1 миллиарда различных типов элементов или ресурсов, причем каждый тип может содержать 2^63^-1 единиц (максимальное значение Java long). Максимальное количество хранимых типов, емкость каждого типа и методы расширения хранилища можно настроить с помощью KubeJS.
  • Производительность: Система хранения данных подверглась значительной оптимизации. Тесты производительности показывают отличные результаты как при подключении к AE2, так и при использовании только этого мода. Результаты конкретных тестов см. в разделе Тестирование производительности].
  • Мультиплеер: Система хранения связывает сети с использованием разрешений игрока. Одна сеть может использоваться несколькими игроками. Альтернативно, совместное использование может быть достигнуто через форму элемента Терминалы.

Интерфейс пользовательского интерфейса

Интуитивно понятный интерфейс хранилища: Мод предоставляет интерфейс, соответствующий логике взаимодействия, совместимой с популярными модами хранилища, такими как AE2 и RS.

  • Встроенная сетка для крафта.
  • Несколько режимов поиска: прямой ввод текста позволяет искать имена, всплывающие подсказки, или идентификаторы модов. Префикс с # для строгого соответствия всплывающим подсказкам. Префикс с @ для строгого соответствия идентификаторам модов.
  • Настраиваемое количество отображаемых строк элементов.
  • Несколько вариантов сортировки: по времени хранения, по количеству, по названию, по идентификатору мода.

Универсальная система слотов: Любой слот в любом графическом интерфейсе мода может хранить все поддерживаемые типы ресурсов и поддерживает механику быстрого взаимодействия.

Быстрая работа с контейнером: щелкните правой кнопкой мыши по слоту, удерживая соответствующий контейнер, чтобы быстро положить или вывести ресурсы из контейнера. Например: щелчок правой кнопкой мыши по слоту с шалкеровым ящиком, изысканным рюкзаком или любым контейнером приведет к быстрому сохранению предметов в контейнере; щелчок правой кнопкой мыши по пустому слоту позволит быстро извлечь предметы из контейнера и поместить их в слот. Эта операция поддерживает жидкости, химикаты Mekanism и даже энергию FE.

Поддержка автоматизации и утилиты

В моде предусмотрены блоки для автоматизации и вспомогательные предметы. Эти блоки должны быть привязаны к сети и в основном поддерживают управление красным камнем, обеспечивая взаимодействие с другими модами через хранилище.

  • Путь к Пространственной Сети: Открывает все содержимое хранилища Пространственной Сети. Обеспечивает ввод/вывод через трубы, бункеры, шины хранения AE2/RS и сложные обновления для выгрузки рюкзака.

  • Пространственный сетевой путь энергии: Функционирует почти идентично сетевому пути, но предназначен для передачи энергии FE. Его пользовательский интерфейс показывает текущий поток энергии FE. Поддерживает «Режим извлечения», выводящий FE в соседние блоки со скоростью 2,1 миллиарда FE/такт.

  • Сетевой интерфейс: аналогичен ME-интерфейсу. Имеет «Слоты для шаблонов» и «Слоты для хранения». Пытается вставить сохраненные ресурсы в сеть и извлечь ресурсы из сети, отмеченной в слотах шаблона. Поддерживает режим извлечения.

  • Сетевой насос: Активно извлекает ресурсы из соседних контейнеров и вставляет их в Пространственную сеть. Имеет слоты для фильтров, поддерживающие режимы черного/белого списка.

  • Сетевой бункер: поглощает близлежащие объекты и даже текущие жидкости, помещая их непосредственно в сеть. Диапазон его действия регулируется (от 2 блоков до целого куска). Большие диапазоны имеют более длинные интервалы работы. Имеет слоты для фильтров, поддерживающие черный/белый список.

  • Сетевая печь: Позволяет отмечать рецепты (вход и топливо). Автоматически извлекает из сети отмеченные ресурсы для переплавки. Поддерживает FE или лаву в качестве топлива. Готовую продукцию можно выбрасывать в соседние контейнеры или хранить обратно в сети.

  • Net Feeder: Когда голод игрока падает ниже настроенного порога, он будет кормить игрока едой, отмеченной в сети. Не будет есть «бесконечные» продукты, такие как бесконечный бекон или вечный стейк. Можно установить в слот Curios Charm.

  • Net Magnet: похож на Net Hopper, но портативен. Поглощает предметы с большей частотой, чем Хоппер. Имеет переключение по горячим клавишам. Можно установить в слот Curios Charm.

  • Быстрая передача основного предмета: Щелкните средней кнопкой мыши по блоку, чтобы мгновенно извлечь из сети стопку удерживаемых предметов. Приседайте + щелкните средней кнопкой мыши, чтобы вернуть удерживаемые предметы обратно в сеть. Эту привязку клавиш можно настроить.

Интеграция и поддержка модов

  • Поддерживает маркировку призрачных ингредиентов перетаскиванием и быструю передачу рецептов в JEI/EMI.
  • Маркировка призрачных ингредиентов JEI/EMI позволяет распознавать элементы, хранящиеся в общем стеке AE2.
  • Добавляет ячейку хранения ME AE2 Dimensional для чтения связанного сетевого содержимого. Обеспечивает более чем в 10 раз более высокую производительность, чем при использовании шин хранения данных.
  • Поддерживает хранение химикатов Mekanism.
  • Сетка крафта поддерживает мод Polymorph.
  • Портативный сетевой терминал можно установить в слот Curios Charm. Установка Beyond Dimensions с Curios добавляет дополнительный слот для оберегов.
  • Поддержка KubeJS: предоставляет классы, позволяющие настраивать логику создания сети, начальную емкость, методы расширения и прямое манипулирование хранилищем.
  • Отключает мод Inventory Profiles Next (IPN) в графическом интерфейсе мода из-за значительных изменений пользовательского интерфейса, делающих их несовместимыми. Вместо этого используйте Mouse Tweaks для быстрого перемещения.

Справка по разработке надстроек и настройке KubeJS

Разработка дополнений

Добавление новых типов сохраняемых ресурсов выполняется прямо в коде. Реализуйте следующие интерфейсы и зарегистрируйте тип ресурса вместе с соответствующими обработчиками:

  1. IStackType — позволяет моду распознавать и сохранять этот тип ресурса.
  2. IStackHandlerWrapper — позволяет моду программно взаимодействовать с контейнерами/блоками мода, содержащими этот ресурс.
  3. CapabilityHelper.BlockCapabilityMap — разрешает доступ к типу ресурса через каналы/шины хранения других модов из блоков.
  4. CapabilityHelper.ItemCapabilityMap — включает быстрое взаимодействие с слотом контейнера (средний щелчок) для предметов, содержащих этот ресурс.
  5. UnifiedStorage.typedHandlerMap — позволяет ядру Пространственной сети манипулировать этим ресурсом.
  6. StackTypedHandler.typedHandlerMap — позволяет периферийным блокам (например, сетевым интерфейсам) манипулировать этим ресурсом в своих внутренних слотах.

Специальная совместимость AE2, даже если ее пропустить, не препятствует использованию шин хранения для чтения: 7. AEHelper.ISTACK_TO_AEKEY_MAP — сопоставляет объекты ресурсов Beyond Dimensions с ключами AE2 (для чтения ячейки хранения Dimensional ME). 8. AEHelper.AEKEY_TO_STACK_TYPE_MAP — сопоставляет ключи AE2 с типами ресурсов Beyond Dimensions (для операций с ячейкой хранения Dimensional ME).

Примеры реализации см. в основном регистрационном файле мода (BeyondDimensions.java). Примечание. Особенности регистрации могут измениться в будущих версиях.

Справка по настройке KubeJS

Чтобы настроить пропускную способность сети:

  1. Отключите рецепт генератора размерных сетей по умолчанию.
  2. Используйте предоставленные классы/методы, доступные в KubeJS, для реализации собственной логики создания и расширения сети.

| Имя класса | Сигнатура метода | Тип возврата | Статический | Цель | | :------------------- | :------------------------------------------------------------------------------- | :--------------- | :----- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | DimensionsNet | createNewNetForPlayer(Player player, long defaultSlotCapability, int defaultSlotMaxSize) | РазмерыНет | Да | Создайте пространственную сеть для указанного игрока. defaultSlotCapability: Максимальное количество единиц каждого типа ресурса. defaultSlotMaxSize: Максимальное количество типов ресурсов. | | | getNetFromId(int id, MinecraftServer dataProvider) | РазмерыНет | Да | Получите объект DimensionsNet по его числовому идентификатору. |

| | getNetFromPlayer(Player player) | РазмерыНет | Да | Получите DimensionsNet, привязанный к указанному игроку. | | | getUnifiedStorage() | Унифицированное хранилище | Нет | Получите объект UnifiedStorage, представляющий содержимое хранилища этой сети. | | UnifiedStorage | setSlotCapacity(long capacity) | пустота | Нет | Установите максимальную емкость хранилища (единиц) для каждого типа ресурсов в этой сети. | | | setSlotMaxSize(int maxSize) | пустота | Нет | Установите максимальное количество различных типов ресурсов, которые может хранить эта сеть. |

Кроме того, мод предоставляет KubeJS некоторые другие классы. Подробности см. здесь.

Класс UnifiedStorage также содержит значительное количество других методов, которые позволяют напрямую изменять содержимое хранилища игрока.

API мода содержит полные аннотации на китайском языке. Посмотрите их здесь.

Другая информация

Тестирование производительности

Тесты охватывали три сценария на одной машине в одинаковых фоновых условиях с использованием мода Spark. Во всех тестах использовалось 1319 случайно сгенерированных уникальных предметов.

  1. Автономное приложение Beyond Dimensions: элементы, сохраняемые/изменяемые через Beyond Dimensions. Ввод/вывод через трубы Mekanism.
  2. За пределами измерений через ячейку хранения AE2: Сеть подключена к AE2 через ячейку хранения Dimensional ME. Ввод/вывод через трубы Mekanism.
  3. Встроенное хранилище AE2: объекты хранятся на стандартных дисках AE2 (21 ячейка хранения по 64 КБ). Ввод/вывод через трубы Mekanism.

Примечание: сценарий 1 использует блоки Beyond Dimensions (Dimensional Network Pathway, Network Interface) и отражает основную производительность мода. В сценариях 2 и 3 используются идентичные настройки AE2 (экспортная шина, интерфейс ME, бесконечное количество каналов), отличающиеся только источником хранения, что позволяет проводить прямое сравнение.

Результаты:

| Тестовая среда | ТПС | MSPT (медиана) | MSPT (95%) | Загруженные куски | Количество объектов | | :---------------------------- | --: | -----------: | -----------: | -----------: | -----------: | | Автономный Beyond Dimensions | 20 | 3,67 | 4,86 | 2601 | 13 | | AE2 + Размерная ME-ячейка | 20 | 2,97 | 3,37 | 2601 | 13 | | Встроенное хранилище AE2 | 20 | 2,70 | 3.08 | 2601 | 13 |

Подробные профили Spark и информация о настройке тестирования доступны здесь.

Дорожная карта (предстоящие функции)

  • Изменена максимальная емкость хранилища ванильных предметов/жидкостей на 64-битные целые числа (завершено).
  • Опыт (XP) хранения и утилит.
  • Ars Nouveau Source для хранения и служебных инструментов.
  • Компонент выделенного хранилища Refined Storage (RS).
  • Добавлена ​​механика прогресса (изначально предоставляется ограниченное хранилище, требующее расширения).
  • Больше утилит и инструментов автоматизации.
  • Дополнительные хозяйственные предметы и оборудование.

Поддерживаемые версии

| Версия MC | Погрузчик | Версия мода | Статус | | :--------- | :-------- | :---------- | :----------------- | | 1.21.1 | Неофорж | 0.3.0+ | Активно обновляется | | 1.20.1 | Кузница / Неофорж | 0.3.0+ | Активно обновляется | | 1.12.2 | Кузница | 0.1.7.4 | Только обслуживание (только критические ошибки) |

Поддержка других версий Minecraft не планируется до тех пор, пока текущий план действий по поддерживаемым версиям не будет практически завершен.


Версии (60)

ВерсияMinecraftЗагрузчикиФайл
0.7.32-26.3-neoforge 26.3 neoforge скачать
0.7.32-26.2.0-neoforge 26.2 neoforge скачать
0.7.32-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.31-26.3-neoforge 26.3 neoforge скачать
0.7.31-26.2.0-neoforge 26.2 neoforge скачать
0.7.30-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.30-1.20.1-forge 1.20.1 forge скачать
0.7.30-26.2.0-neoforge 26.2 neoforge скачать
0.7.30-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.29-1.20.1-forge 1.20.1 forge скачать
0.7.29-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.29-26.2.0-neoforge 26.2 neoforge скачать
0.7.29-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.28-1.20.1-forge 1.20.1 forge скачать
0.7.28-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.28-26.2.0-neoforge 26.2 neoforge скачать
0.7.28-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.27-1.20.1-forge 1.20.1 forge скачать
0.7.27-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.27-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.27-26.2.0-neoforge 26.2 neoforge скачать
0.7.26-1.20.1-forge 1.20.1 forge скачать
0.7.26-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.25-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.25-26.2.0-neoforge 26.2 neoforge скачать
0.7.24-1.20.1-forge 1.20.1 forge скачать
0.7.24-26.2.0-neoforge 26.2 neoforge скачать
0.7.24-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.24-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.23-1.20.1-forge 1.20.1 forge скачать
0.7.23-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.23-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.23-26.2.0-neoforge 26.2 neoforge скачать
0.7.22-1.20.1-forge 1.20.1 forge скачать
0.7.22-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.21-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.21-26.2.0-neoforge 26.2 neoforge скачать
0.7.21-1.20.1-forge 1.20.1 forge скачать
0.7.20-1.20.1-forge 1.20.1 forge скачать
0.7.20-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.20-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.19-1.20.1-forge 1.20.1 forge скачать
0.7.19-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.19-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.18-1.20.1-forge 1.20.1 forge скачать
0.7.17-1.20.1-forge 1.20.1 forge скачать
0.7.17-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.17-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.16-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.16-1.20.1-forge 1.20.1 forge скачать
0.7.16-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.15-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.14-1.20.1-forge 1.20.1 forge скачать
0.7.14-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.14-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.13-26.1.2-neoforge 26.1.2 neoforge скачать
0.7.12-1.20.1-forge 1.20.1 forge скачать
0.7.12-26.1-neoforge 26.1 neoforge скачать
0.7.12-1.21.1-neoforge 1.21.1 neoforge скачать
0.7.11-26.1-neoforge 26.1 neoforge скачать

Страница на Modrinth →