promotional bannermobile promotional banner

Lilium Backpacks

Lilium Backpacks is a vanilla-friendly, standalone addon that introduces fully functional, dyeable, upgradeable, and placeable 3D backpacks to dynamically expand your inventory in Minecraft Bedrock Edition.
Back to Files

Lilium Backpacks V1.3.1.mcaddon

File nameLilium Backpacks V1.3.1.mcaddon
Uploader
LiliumStudioLiliumStudio
Uploaded
Oct 16, 2026
Downloads
423
Size
1.0 MB
File ID
9202947
Type
R
Release
Supported game versions
  • 26.50

What's new

Changelog - Lilium Backpacks

[1.3.1]

Fixed

  • Backpack Left Behind Across Dimensions: A backpack held while crossing a portal, teleporting more than 48 blocks or respawning far away stayed where it was and could not be opened until the player went back for it. The follower teleported without a target dimension and only ticked within 64 blocks of a player. Live backpacks are now indexed by backpack_id, so the holder can always find their own; a follower that ends up in another dimension or out of range is stowed and restored at the player's head, wherever the player is.
  • Item Duplication Through the Vault Column: Two different backpacks stowed within two ticks of each other in the same world column were snapshotted together, so restoring one of them also spawned a copy of the other with all its items. Vault operations now run on a single global queue, the vault picks a column of the backpack's chunk that holds no other entity, and the snapshot is aborted if anything else is in the column when it is taken.
  • Contents Lost When Breaking a Placed Backpack Failed to Save: The backpack item was dropped before its contents were saved, and a failed save removed the entity along with everything inside. The contents are now saved first. If saving fails, they spill on the ground like a broken chest and an empty backpack of the same type drops instead, so nothing is lost.
  • Placed Hitbox Kept After Breaking: lb:exit_block was declared but never triggered, so a backpack that had been placed and broken went back to following its owner with the block-sized hitbox and collision box of the placed component group. Breaking now leaves block mode, and backpacks already carrying the group drop it the next time they load.
  • Place-and-Save Race: Anchoring a backpack to a block now waits for any pending save or restore of the same backpack, instead of possibly teleporting an entity that was halfway into the vault. If no entity can be anchored, the block is removed and the item is given back.
  • Placed Backpacks Could Be Popped By Other Players: A piston or an explosion could knock out someone else's placed backpack and let anyone pick up the item. The block is now immovable and immune to explosions; only its owner can break it.
  • Custom Names Lost: A backpack renamed in an anvil lost its name when upgraded, dyed, or placed and broken. The name now survives all three.
  • Non-Owners Get Feedback: Trying to open someone else's backpack shows lb.upgrade.not_owner instead of failing silently.
  • Safer Legacy Cleanup: Entities carrying the 1.2.0 lb:structure_saved flag are now only removed when their contents are still stored in the vault or another live copy exists. Any other flagged backpack is kept and just loses the flag, so a 1.2.0 backpack restored from its structure can never be deleted on sight.
  • A Placed Backpack No Longer Pops When Its Block Cannot Be Read: An unreadable block is now treated as unknown instead of missing.

Optimized

  • No Permanent Chunk Loading: minecraft:tick_world was removed from the backpack entity. Every placed backpack kept a 5x5 chunk area loaded forever, which bought nothing, since scripts only tick backpacks near players, and could be abused as a free chunk loader.
  • Filtered Entity Events: dataDrivenEntityTrigger is subscribed only for the entity types and events a controller handles, instead of receiving every entity event in the world.
  • Fewer Component Group Swaps: A following backpack re-asserts its hitbox group when its owner starts or stops sneaking, and once a second as a safety net, instead of on every tick.
  • Leaner Inventory Sweep: The player sweep checks a single tag per slot.

Removed

  • Dead code with no remaining callers: the lb:destroy_item cursor and inventory cleanup (no item carries that tag), Inventory.consumeSlot and hasSpaceFor, Vector.subtract, the unused State accessors, StructureVault.discard, and the unused cardinal rotation and texture-key helpers in Catalog.js.

Compatibility

  • Nothing a saved world references changes: identifiers, events, component groups, the lb:in_block property, block states and the structure identifier format are untouched. The only new dynamic property is custom_name, written on placed backpacks.

This mod has no additional files