InfiniteBags | Backpack with Shop v1.2.3

Unlimited per-item storage with a built-in shop hook to sell straight from your bag.
InfiniteBags.png
InfiniteBags
Bottomless. Sortable. Sellable.
Premium quality-of-life storage. Part of the Modern Plugin Series by zArrowTan.


🎒 What is InfiniteBags?

Vanilla inventories fill up. Ender chests fill up. Shulkers fill up. InfiniteBags doesn't.

Every player gets a personal bottomless backpack that lives in your server database, not their hotbar. Items go in and never spill out, each slot holds trillions of a single item type, auto-pickup routes loot straight into the bag, and a one-click sell button turns it all into economy currency. It's the storage plugin built for serious survival, skyblock, and prison servers.




✨ Features

Bottomless Storage
  • No stack limits: each slot holds trillions of one item type. Deposit stack after stack and they merge into a single slot with a running quantity.
  • Multi-page GUI: up to 45 slots per page across multiple pages, with navigation, search, and settings in one window.
  • Progressive slot unlock: pages grow as players deposit, so the bag scales naturally with use.

Auto-Pickup
  • Items the player walks over route straight into the bag instead of the vanilla inventory.
  • Toggle globally with /bag pickup, per-slot with F in the GUI, or with a click in the bag.

Sell From Your Bag
  • Sell a single slot with shift + right-click, or hit the emerald Sell-All button.
  • Sell-All opens a confirm GUI with a full per-item value breakdown, sorted by worth.
  • Multi-shop support: UltimateShop, ShopGUI+, EconomyShopGUI, and EssentialsX, plus a local shopworth.yml fallback. The first provider with a price wins.
  • CustomModelData pricing: price custom items from ItemsAdder, Nexo, Oraxen, MMOItems, or plain resource-pack items using the cmd-prices: section in shopworth.yml. Format: MATERIAL:CMD: price. Lookup order: CMD, then NBT, then simple material.

Permission-Gated Slots & Pages
  • Sell slots and pages to donor tiers, ranks, or level perks with infinibag.slots.N and infinibag.pages.N.
  • Per-page or total slot models, with optional cumulative permissions.

Optional Bag-as-Item
  • A configurable player-head item that lives in the hotbar and opens the bag on right-click.
  • Cannot be dropped, stored in chests, or lost on death. Locked-to-slot or movable modes.

Recovery Vault
  • If an admin lowers a player's perms and items land on locked pages, /bag recover opens a separate vault to take them back.
  • A join notification reminds players they have items waiting.

Developer API
  • An optional API lets other plugins read and write a player's bag at runtime, soft-depend friendly with no extra jar to install.
  • Mail systems, reward systems, and custom shops can deposit items straight into a player's bag, even while they're offline.
  • Offline-safe (UUID-keyed) and async-safe, with strict item grouping that matches full material plus NBT.

Networks & Extras
  • SQLite out of the box, MySQL for networks.
  • Bungee and Velocity cross-server bag sync with safe locking.
  • PlaceholderAPI support and an anvil-based search GUI.
  • Configurable open sound (volume, pitch, audible radius) and bundled en + fr locales, easy to add more.



⌨️ Commands

Main command /bag, with aliases /backpack, /infinitebag, /ib, /sac, and /sacoche.

  • /bag open your bag
  • /bag help show the command list
  • /bag version build, storage, and shop info
  • /bag pickup [on|off] toggle global auto-pickup
  • /bag sellall sell all sellable items (opens a confirm)
  • /bag stats [player] view bag usage stats
  • /bag recover open the recovery vault

  • /bag open <player> view another player's bag
  • /bag give <player> <material> <amount> inject items into a bag
  • /bag take <player> <material> <amount> remove items from a bag
  • /bag clear <player> confirm wipe a player's entire bag
  • /bag reload reload config and lang files
  • /bag debug toggle verbose console logging



🔐 Permissions

  • infinibag.use open your own bag
  • infinibag.pickup auto-pickup feature available
  • infinibag.sell.slot sell a single slot
  • infinibag.sell.all sell the entire bag
  • infinibag.sell parent node granting both sell permissions

  • infinibag.slots.<N> slot count, per-page or total depending on your model
  • infinibag.pages.<N> max pages (per-page mode)
Highest match wins by default, or set cumulative-permissions: true to sum all granted nodes.

  • infinibag.admin parent node granting every admin command and cooldown bypass
  • infinibag.bypass.cooldown skip click and sell cooldowns
  • infinibag.command.open / .give / .take / .clear / .stats / .reload / .debug individual admin command access



📊 PlaceholderAPI

  • %infinibag_total_items% total items across all slots, formatted (1.2K, 3.4M)
  • %infinibag_unique_types% distinct item types in the bag
  • %infinibag_unique_in_page_<N>% distinct types on page N
  • %infinibag_pages_used% pages containing at least one slot
  • %infinibag_pages_max% max pages under current perms
  • %infinibag_slots_max% slots-per-page cap under current perms
  • %infinibag_total_value% estimated total bag value, with currency
  • %infinibag_pickup_global% enabled / disabled auto-pickup state
  • %infinibag_slot_<MATERIAL>% total quantity of one material



🧩 Developer API

Other plugins can read and write a player's bag at runtime through the optional InfiniteBagAPI. No hard dependency and no extra jar, it ships inside the normal plugin jar and is safe to soft-depend on.

  • isEnabled(UUID) can the player use their bag
  • accepts(ItemStack) would the bag store this item type
  • contains(UUID, ItemStack) does the bag already hold this exact type
  • add(UUID, ItemStack) store an item, returns the amount that did not fit
Grab it with the static InfiniteBag.getApi() (null-checked, soft-depend safe). Works offline via UUID-keyed database access, is async-safe (per-UUID locked), and uses strict item grouping that matches full material plus NBT (name, enchants, damage, custom model data).

Full guide on the Developer API page: infinitebags.arrowtan.cc/developer-api



🧪 Compatibility

  • Minecraft: 1.21.x
  • Server software: Spigot, Paper, Purpur
  • Storage: SQLite (default, zero-config) or MySQL
  • Networks: Bungee and Velocity cross-server sync
  • Soft-depends: PlaceholderAPI, UltimateShop, ShopGUI+, EconomyShopGUI, EssentialsX
  • Custom items: ItemsAdder, Nexo, Oraxen, MMOItems, and any resource-pack items priced via CustomModelData. No soft-depend required.
  • Java: 17 or higher



⭐ Why InfiniteBags?

  • Drop-in install with sane defaults out of the box
  • No bloat storage, done well
  • Zero database setup SQLite is handled internally
  • GUI-first no config-file hunting for everyday use
  • Network-ready MySQL and cross-server sync built in



Drop in. Auto-pickup. One-click sell.
Made with ❤ by zArrowTan
Buy a license now
$5.99
EULA
Standard EULA
Use on any projects you own with attribution
Support
Standard
Includes:
Download the resource
Access new updates
Support from the creator
Support duration
1 year
Share and earn
Refer this resource and earn a 15% commission.
361 Views
2 Purchases
3 Downloads
Jun 10, 2026 Published
Jul 3, 2026 Updated
Not yet rated
224.9 KB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Economy
  1. Storage
  1. Fun
Game mode
  1. Survival
  1. Skyblock
  1. Earth
Supported software
  1. Spigot
  1. Paper
  1. Purpur
Supported versions
  1. 1.21.11
  1. 1.21.8
  1. 1.21.5
  1. 1.21.4
  1. 1.21.2
  1. 1.21
Supported languages
  1. English
  1. French
Crediting original
Luxioz (Chief Tester)
Creators
Struggling to cover the costs of your server? Set up your own webstore with Tebex in under 30 seconds.
Host a lag-free Minecraft or Hytale server in minutes.
Get 25% off your first order with our link.
Recommended for you
Second-ever Modern OneBlock setup, crafted for addictive, feature-rich gameplay.
5.00 star(s) 6 ratings
87 purchases
A modern, feature-rich Survival setup with custom menus, events, and immersive gameplay systems.
5.00 star(s) 20 ratings
83 purchases
All Versions | Crates | Ranks | Upgrades | Perks | Shop | Worlds | Chunk Hoppers
5.00 star(s) 4 ratings
57 purchases
A bedwars server setup made in 1.20.4 to match the Modern theme of experience.
5.00 star(s) 5 ratings
56 purchases
1.17-1.21.8 | Native 1.21.8 | Coinshop | Playtime rewards | Chat games | Gui menus | Custom Terrain
4.50 star(s) 8 ratings
46 purchases
Share and earn
Refer this resource and earn a 15% commission.
361 Views
2 Purchases
3 Downloads
Jun 10, 2026 Published
Jul 3, 2026 Updated
Not yet rated
224.9 KB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Economy
  1. Storage
  1. Fun
Game mode
  1. Survival
  1. Skyblock
  1. Earth
Supported software
  1. Spigot
  1. Paper
  1. Purpur
Supported versions
  1. 1.21.11
  1. 1.21.8
  1. 1.21.5
  1. 1.21.4
  1. 1.21.2
  1. 1.21
Supported languages
  1. English
  1. French
Crediting original
Luxioz (Chief Tester)
Creators
Struggling to cover the costs of your server? Set up your own webstore with Tebex in under 30 seconds.
Host a lag-free Minecraft or Hytale server in minutes.
Get 25% off your first order with our link.
Recommended for you
Second-ever Modern OneBlock setup, crafted for addictive, feature-rich gameplay.
5.00 star(s) 6 ratings
87 purchases
A modern, feature-rich Survival setup with custom menus, events, and immersive gameplay systems.
5.00 star(s) 20 ratings
83 purchases
All Versions | Crates | Ranks | Upgrades | Perks | Shop | Worlds | Chunk Hoppers
5.00 star(s) 4 ratings
57 purchases
A bedwars server setup made in 1.20.4 to match the Modern theme of experience.
5.00 star(s) 5 ratings
56 purchases
1.17-1.21.8 | Native 1.21.8 | Coinshop | Playtime rewards | Chat games | Gui menus | Custom Terrain
4.50 star(s) 8 ratings
46 purchases
Top