Expendable Backpacks

Backpack Plugin - Expandable Storage for Minecraft!

3,16k

Expendable Backpacks

Expendable Backpacks

A comprehensive backpack system featuring eight progressive tiers, upgradeable storage, placeable backpack blocks, and unique Enderpack shared inventory functionality.

***

✨ Features

* Tab Completion - From basic Dirt Backpack (9 slots) to premium Netherite Backpack (54 slots) * Tab Completion - Place backpacks as blocks in the world using Shift + Right-click * Tab Completion - Unique shared storage across multiple Enderpacks using UUID-based identification * Tab Completion - Give new players a Leather Backpack on first join * Tab Completion - Upgrade your backpacks by surrounding them with materials while preserving all contents * Tab Completion - Smart system prevents nesting backpacks within other backpacks * Tab Completion - In-game visual guide showing all crafting recipes and upgrade paths * Tab Completion - Beautiful player head textures for each tier with color-coded names * Tab Completion - All backpack contents automatically saved with UUID tracking * Tab Completion - Create multiple access points to the same shared inventory * Tab Completion - Placed backpacks are protected from explosions, pistons, fire, and lava * Tab Completion - Efficient inventory caching and asynchronous data saving * Tab Completion - Full tab completion support for all commands and UUIDs

***

🎒 Backpack Tiers

| Tier |Storage |Upgrade Material | | ------------------ |----------------- |------------------ | | Dirt Backpack |9 slots (1 row) |Surround with Dirt | | Leather Backpack |9 slots (1 row) |Starting tier | | Copper Backpack |18 slots (2 rows) |8x Copper Ingot | | Iron Backpack |27 slots (3 rows) |8x Iron Ingot | | Gold Backpack |36 slots (4 rows) |8x Gold Ingot | | Diamond Backpack |45 slots (5 rows) |8x Diamond | | Netherite Backpack |54 slots (6 rows) |Smithing Table | | <strong>Enderpack</strong> |27 slots (3 rows) |<strong>Shared Storage</strong> |

***

📦 Placeable Backpacks

Backpacks can now be placed in the world as decorative blocks that retain full functionality!

How It Works

* Protection: Hold a backpack and Protection on any surface * Protection: Protection the placed backpack to access its inventory * Protection: Mine the block to retrieve your backpack with all contents intact * Protection: Placed backpacks are fully protected from: * Explosions (Creeper, TNT, etc.) * Pistons (push/pull) * Fire and lava damage * Block explosions (Beds, Respawn Anchors)

Use Cases

* Shops & Trade - Create organized storage areas with visible backpack tiers * Shops & Trade - Display your collection of high-tier backpacks * Shops & Trade - Place backpacks at strategic locations around your base * Shops & Trade - Place shared Enderpacks in communal areas * Shops & Trade - Create backpack displays in marketplace builds

Important Notes

* Placed backpacks retain their UUID - items stay exactly where they are * Breaking and replacing a backpack doesn't affect its contents * Enderpacks work the same when placed - all copies share the same inventory * You can still open backpacks in your hand with a normal right-click

***

🌌 Enderpack - The Special One

The Enderpack provides unique functionality not found in other tiers:

* Cross-Location Access - All Enderpacks with the same UUID access identical inventory * Cross-Location Access - Craft 1 Enderpack + 1 Ender Pearl = 2 Enderpacks with matching UUID * Cross-Location Access - Keep one in your inventory, one at your base, share with teammates * Cross-Location Access - Place Enderpacks as blocks and they still share the same inventory * Cross-Location Access - Coordinate shared storage across multiple players * Cross-Location Access - Access the same inventory from anywhere

Example Use Case

1. Craft an Enderpack 2. Clone it by combining with an Ender Pearl (yields 2 Enderpacks, same UUID) 3. Keep one in your inventory for on-the-go access 4. Place one as a block at your base for easy access 5. Give one to a teammate 6. All three access the same 27-slot shared storage - even the placed one!

***

⚙️ Configuration

The plugin includes a configuration file at `plugins/ExpendableBackpacks/config.yml` for server customization.

Starter Backpack Feature

Give new players a Leather Backpack automatically when they first join your server:

```yaml

Give a Leather Backpack to players when they first join the server

Default: false

give-backpack-on-first-join: false

Message sent to players when they receive their starter backpack

Use & for color codes (e.g., &a for green, &6 for gold)

Set to empty string ("") to disable the message

starter-backpack-message: "&7Welcome! You've been given a &7Leather Backpack &7to get started. Right-click to open!" ```

Features: * Only triggers for players joining for the first time * Automatically adds backpack to inventory * Drops at player location if inventory is full * Customizable welcome message with color code support * Disabled by default - enable it in your config

***

🚀 Installation & Compatibility

1. Download the latest plugin JAR file 2. Place it in your server's `/plugins/` directory 3. Restart your server or use a plugin loader 4. Use `/backpack` to access the in-game guide 5. Configure starter backpack in `plugins/ExpendableBackpacks/config.yml` (optional)

Requirements

* Java Version: Paper, Spigot, Purpur, or Folia * Java Version: 1.21 or higher * Java Version: 21 or higher

***

🔧 Commands & Permissions

Commands

All commands support the `/bp` alias for quick access.

| Command |Description |Permission | | ------------------------------ |--------------------------- |------------------- | | <code>/backpack</code> |Open interactive guide GUI |<code>backpack.use</code> | | <code>/backpack help</code> |Display help information |<code>backpack.use</code> | | <code>/backpack give <player> <tier></code> |Give a backpack to a player |<code>backpack.give</code> | | <code>/backpack open <uuid></code> |Open a backpack by UUID |<code>backpack.openOthers</code> | | <code>/backpack clear <uuid></code> |Clear backpack contents |<code>backpack.clear</code> | | <code>/backpack clone <uuid></code> |Create an Enderpack clone |<code>backpack.clone</code> |

Permissions

| Permission |Description |Default | | ------------------- |------------------------------------------- |-------- | | <code>backpack.use</code> |Use backpack command and open own backpacks |Everyone | | <code>backpack.give</code> |Give backpacks to players |OP | | <code>backpack.openOthers</code> |Open any backpack by UUID |OP | | <code>backpack.clear</code> |Clear backpack contents |OP | | <code>backpack.clone</code> |Clone Enderpacks |OP | | <code>backpack.admin</code> |All admin permissions |OP |

***

🔨 Crafting Recipes

Leather Backpack (Starting Point)

``` L S L L C L L L L ```

* L = Leather, S = String, C = Chest

Enderpack (Special Recipe)

``` E P E P C P E I E ```

* E = Ender Eye, P = Ender Pearl, C = Chest, I = Iron Block

Upgrades

Surround your backpack with 8x upgrade material:

* Leather → Copper: 8x Copper Ingot * Copper → Iron: 8x Iron Ingot * Iron → Gold: 8x Gold Ingot * Gold → Diamond: 8x Diamond * Diamond → Netherite: Smithing Table (Netherite Upgrade Template + Diamond Backpack + Netherite Ingot)

Note: All upgrades preserve your items and UUID!

***

💾 Technical Details

Data Storage

* Backpacks stored in `plugins/ExpendableBackpacks/backpacks.yml` * UUID-based identification for each backpack instance * Placed backpacks store UUID in block PersistentDataContainer * Automatic inventory serialization * Data persists across server restarts

Performance

* Efficient inventory caching system * Asynchronous data saving * Optimized block interaction handling * Optimized for large-scale servers * Minimal server resource usage

Placed Backpack Technical Details

* Placed as Player Head blocks with custom textures * UUID and tier data stored in block NBT (PersistentDataContainer) * Same NamespacedKeys as items for consistency * Full event handling for comprehensive protection

***

🆘 Support & Links

* Documentation: Documentation: * Documentation: %%MD1%% * Documentation: %%MD2%%

***

📜 License

See the LICENSE file for details.

***

Developed with care for the Minecraft server community.

ADS