Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Craftable, upgradable backpacks with pages, sorting and database storage.
A rewrite for Minecraft 26.1-26.3. Existing backpacks, backpacks.yml and language files carry over; see Updating to 2.0 before you update.
Added
- Backpack contents are saved in a database: SQLite by default, or MySQL, PostgreSQL or MongoDB. Backpacks from 1.x are moved over the first time they are opened.
- Several servers can share one MySQL, PostgreSQL or MongoDB database. A backpack that is open on one server can't be opened on another until it is closed.
- Folia support. The plugin is tested on CraftBukkit, Spigot, Paper and Folia.
- Backpacks of up to 900 slots, shown a page of 45 slots at a time.
- A row of buttons under every backpack: sort, deposit, and previous and next page.
Buttonsinconfig.ymlsets the item of each, with aModelorCustomDatafor resource packs. Upgraderecipes that turn one backpack into another and keep what is inside.- Recipes smaller than 3x3, and backpacks without a recipe that can only be given.
- Backpack recipes show in the recipe book of players who may craft them. A backpack's own recipe and its upgrade share one entry.
/backpackopens a menu of the backpacks a player may craft. Clicking one shows its recipe and its upgrade recipe, and leads on to the backpacks it is upgraded from and into.RecipeMenu.ShowUncraftableinconfig.ymlalso lists backpacks without a recipe.%used%and%size%inLoreshow how full a backpack is.- Item tags such as
#minecraft:shulker_boxesinWhitelistandBlacklist. Sounds.OpenandSounds.Closefor every backpack. Without them a backpack sounds like leather armour being put on.KeepOnDeathlets players keep a backpack when they die.Wearablebackpacks go in the chest slot and open by sneaking and pressing the swap hands key.AutoPickupbackpacks take in the items their owner walks over once their inventory is full, on Paper and its forks. The item leaves the ground at once, and what the backpack has no room for is put back where it was. Other plugins are asked with the usual pickup event first, so those that stop a player from picking items up also stop this.Modelgives a backpack an item model from a resource pack.EnderChest.Enabledinconfig.ymlmakes ender chests open a bigger ender chest kept by the plugin.Use-Client-Languageinconfig.ymlshows every player the messages in their own game language.- Dutch, French, Italian, Japanese, Korean, Polish, Russian and Traditional Chinese translations.
- MiniMessage tags in names, titles, lore and messages, on Paper and its forks.
<key:key.use>in the lore of a backpack shows the key or button each player has bound to using items, on Paper and its forks. Elsewhere, and on Spigot, it reads "Right Click"./backpack openopens the backpack you hold or wear./backpack view,/backpack restoreand/backpack purgelet admins look into, bring back and clear out saved backpacks, with the new permissionbackpacks.admin.- PlaceholderAPI placeholders:
%backpacksplus_carried%,%backpacksplus_limit%,%backpacksplus_open%and%backpacksplus_open_size%. - WorldGuard flags
backpack-useandbackpack-auto-pickup. - The permission
backpacks.limit.*for any number of backpacks while the limiter is on. Operators have it.
Changed
- Minecraft 26.1 or newer and Java 25 are required.
- The main command is
/backpack./bppand/backpacksplusstill work. - The backpack limiter no longer searches inventories on a timer and takes backpacks away. A backpack is a player's from when they open it until someone else does, and one more than their
backpacks.limit.<number>permission allows does not open. A backpack that burns, despawns or falls out of the world stops counting, and/backpack viewshows it as destroyed until it is purged or restored. Inconfig.yml,General.BackPackLimiter.Repeatis gone andGeneral.BackPackLimiter.Enabledis nowBackPackLimiter.Enabled; theGeneralsection is no longer there. - A copy of a backpack item opens the same contents as the original, and only one copy can be open at a time.
- A backpack of 54 slots has two pages, because the bottom row of the screen holds the buttons.
Materialis optional. A backpack without one is a player head.- Sub commands can be shortened to their first letters, such as
/backpack resforrestore. - Every permission starts with
backpacks.:backpacksplus.<command>is nowbackpacks.<command>, andbackpack.use.<name>andbackpack.craft.<name>arebackpacks.use.<name>andbackpacks.craft.<name>.backpacks.*is everything at once andbackpack.*is gone; usebackpacks.use.*andbackpacks.craft.*for every backpack without the commands. Permissions given under the old names have to be given again. - Every permission is declared in
plugin.ymland given to operators by default. - Any one of the command permissions is enough to use its part of
/backpack;backpacks.useis no longer needed on top of, say,backpacks.give. - A
Storage.Typethat is none ofsqlite,mysql,postgresqlandmongodb, or aconfig.ymlthat can't be read, stops the plugin from starting instead of quietly saving backpacks in SQLite. - A backpack that can't be saved is no longer emptied onto the ground. Its contents are kept in the
unsavedfolder and saved as soon as storage works again, also after a restart; until then it does not open. - Open backpacks are saved once a minute if they changed, so a server that crashes no longer loses everything done since they were opened.
- Right clicking with a backpack does not open it when another plugin has denied the use of the item, such as a combat tag, a jail or a protected region.
/backpack reloadchanges nothing, and says which file is at fault, whenconfig.ymlorbackpacks.ymlcan't be read./backpack giverefuses an amount that is not a number from 1 to 64 instead of changing it.- A message set to an empty text in a language file is not sent at all.
- Backpacks can't be crafted in crafter blocks, used as an ingredient of other recipes, burned as fuel or worn out.
- The project is built with Gradle and has moved to GitLab.
Platforms
Paper
26.1.2–26.3
Dependencies
Paper
- PlaceholderAPI Optional
- WorldGuard Optional