Sophisticated Backpacks - MT Inventory Weight
Точная поддержка веса инвентаря MT для Sophisticated Backpacks (неофициальный порт на Fabric), читает реальное содержимое рюкзака через API-обёртку SB.
- Загрузчики
- Fabric
- Скачиваний на Modrinth
- 599
- Подписчиков на Modrinth
- 1
- версии
- 2
- Обновлён
- 15 июня 202615 июн.
- Опубликован
- в 2026
Коротко о моде
Нужен и в игре, и на сервере
Sophisticated Backpacks InventoryWeight
Точная поддержка MT Inventory Weight для Sophisticated Backpacks (Unofficial Fabric port).
MT Inventory Weight поставляется с универсальным калькулятором рюкзаков, который читает NBT контейнера, но Sophisticated Backpacks присваивает каждому рюкзаку UUID и хранит его реальное содержимое в мировом BackpackStorage (PersistentState) — не всегда в NBT предмета. Поэтому универсальное чтение NBT занижает или искажает подсчёт рюкзаков SB. Этот аддон исправляет это, читая фактическое содержимое через API Sophisticated Backpacks.
Он регистрирует провайдер веса предметов Inventory Weight (через точку входа inventoryweight) с приоритетом 8500 — выше встроенного универсального провайдера backpacks (8000) — так что рюкзаки SB обрабатываются этим точным провайдером, а всё остальное передаётся настройкам по умолчанию.
Для чтения содержимого используется wrapper API SB. Он автоматически разрешает содержимое с привязкой к UUID из BackpackStorage, так что надетые, удерживаемые и хранимые рюкзаки все взвешиваются правильно.
Модель веса
Совпадает со встроенной моделью рюкзака:
effectiveWeight = emptyBackpackWeight + (contentsWeight / 2)contentsWeightвычисляется рекурсивным проходом каждого внутреннего стака через собственный поиск Inventory Weight (context.nested()), так что веса из датапаков, вложенные контейнеры и другие аддоны все учитываются.- Базовый вес результата несёт полный (неразделённый) вес содержимого для отображения.
Примечания
- Если Sophisticated Backpacks не установлен, провайдер неактивен (в лог пишется предупреждение), и Inventory Weight использует поведение по умолчанию.
nested()используется при рекурсии, чтобы избежать неконтролируемой глубины с вложенными рюкзаками.- Базовый вес пустого рюкзака — это одна константа (
SophisticatedBackpacksInventoryWeight#EMPTY_BACKPACK_WEIGHT); подключите её к fzzy_config, если хотите, чтобы её можно было настраивать пользователем.
Частые вопросы
Как установить Sophisticated Backpacks - MT Inventory Weight?
Установите Fabric под свою версию Minecraft, скачайте Sophisticated Backpacks - MT Inventory Weight под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть Sophisticated Backpacks - MT Inventory Weight?
У Sophisticated Backpacks - MT Inventory Weight есть сборки для Minecraft 1.20.1, 1.20.4, 1.21.1.
Нужен ли Sophisticated Backpacks - MT Inventory Weight на сервере?
Нужен и в игре, и на сервере