▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/Sable Assembly Fix
Sable Assembly Fix

Sable Assembly Fix

Fixes item duplication during Sable assembly/disassembly by preventing non-Clearable block entities from dropping their contents. Works with any mod - Keg, cabinets, baskets, Item Drains, Sophisticated Storage, etc. No configuration needed.

Оцените первым
2.0K
4

Overview

Sable Assembly Fix fixes an item duplication bug that occurs during Sable assembly/disassembly for block entities that do not implement the Clearable interface.

The Problem

Sable's SubLevelAssemblyHelper.moveBlocks() calls Clearable.tryClear() on every block entity during the assembly process. The issue is:

  • For block entities that implement Clearable (e.g. chests, hoppers) — works fine, contents are properly cleared
  • For block entities that do NOT implement Clearable (e.g. TableCloth, Mechanical Arm, Ejector, etc.) — tryClear() is a no-op, nothing happens
  • The block is destroyed and its items drop into the world, but the NBT data containing the item inventory is still there
  • When the block is recreated in the sub-level, the NBT items are read back
  • Result: the same items exist both on the ground and inside the block — item duplication

Triggering this bug is trivially cheap:

simply toggle the ship between physics mode and block mode (or vice versa) — each transition triggers assembly/disassembly, which duplicates the contents of any non-Clearable block entity on the ship. No expensive resources or complex setup required.

How It Works

A single @Redirect mixin intercepts the Clearable.tryClear() call inside SubLevelAssemblyHelper.moveBlocks() :

  • If the block entity implements Clearable → passes through normally, no intervention
  • If the block entity does not implement Clearable → calls level.removeBlockEntity(pos) to remove the block entity entirely, preventing it from dropping any contents

Affected Block Entities (Create + Addons)

Block EntityItems per dupe
TableClothup to 4
Mechanical Armentire held stack (e.g. 64 items at once)

Plus any modded BE with inventory that doesn't implement Clearable.

Note: The Mechanical Arm is especially severe — it duplicates the entire held stack in one operation. If the arm is holding a full stack of 64 items, you get 64 duplicated items per assembly/disassembly cycle. Any modded block entity with an inventory that doesn't implement Clearable is also affected.

Configuration

A whitelist system is included. The config file config/sableassemblyfix/whitelist.json is automatically created on first launch.

Add block entity IDs to the whitelist to skip the fix (e.g. if a mod handles Clearable on its own). Requires a game restart to reload.

Dependencies

  • NeoForge >=21.1.228
  • Sable >=2.0
  • Create: Aeronautics >=1.0.2

License

MIT

Партнёрский материал

Как поиграть с друзьями с модом Sable Assembly Fix?

Мод Sable Assembly Fix куда интереснее в компании: поднимите сервер Майнкрафт с уже установленным модом, позовите друзей и играйте по своим правилам. Хостинг Майнкрафт для мода Sable Assembly Fix будет готов за пару минут - BungeeHost сделает всё за вас.

Часто задаваемые вопросы

Совместимость

Minecraft: Java Edition

1.21.x

Платформы

Поддерживаемые окружения

Сервер

Зависимости

Ссылки

Создатели

Детали

Лицензия:
Опубликован:3 месяца назад
Обновлён:3 месяца назад
Главная