BackpacksPlus [MC Versions 1.18.1-1.21.7]
A comprehensive storage solution plugin for Minecraft servers that adds fully customizable backpacks to enhance your players' inventory management experience.
Feature Highlights
- Multiple Sizes: Upgrade backpacks from 9 to 45 slots
- Color Customization: Dye backpacks in any Minecraft color
- Custom Names: Personalize your backpacks with names and color codes
- Persistent Storage: Contents are saved across server restarts and player sessions, ensuring items are never lost
- Permission System: Control access to backpack features
- Developer API: Integrate backpacks into your own plugins
- Custom Crafting: Fully configurable crafting recipe
- In-Game Configuration: Visual configuration GUI for easy setup
Contents:
- Getting Started as a Player
- Crafting Backpacks
- Opening Backpacks
- Customizing Backpacks
- Getting Started as a Server Owner
- Installation
- Commands
- Permissions
- Configuration
- In-Game Configuration GUI
- Configuration Options
- Example Configuration Change
- API
- Adding Library to Project
- Documentation
- Usage Example
- License
Getting Started As a Player
Crafting Backpacks
To craft backpacks, follow the standard recipe shown below (unless the server owner has modified it). The default recipe uses a chest surrounded by leather and string.
Opening Backpacks
Right or Left click (without sneaking) to open backpacks, where players can place items in or take them out.
Customizing Backpacks
Shift-Left-click to open the backpack customizer menu.
Players can customize backpacks by dyeing them, renaming them, and upgrading them.
Dyeing Backpacks
Place any dye over the "Dye Backpack" item to change backpack colors.
Renaming Backpacks
Place a renamed name tag over the "Rename Backpack" item to update backpack display names (up to 30 characters). Names also support color codes.
Expanding Backpacks
To expand backpacks, click the "Expand Backpack" item. The costs for each expansion (if not modified by the server owner) are as follows:
- SMALL (9 Slots) → MEDIUM (18 Slots): 8 Rabbit Hide & 1 Chest
- MEDIUM (18 Slots) → LARGE (27 Slots): 16 Rabbit Hide & 1 Chest
- LARGE (27 Slots) → GREATER (36 Slots): 32 Rabbit Hide & 1 Chest
- GREATER (36 Slots) → JUMBO (45 Slots): 64 Rabbit Hide & 1 Chest
Getting Started As a Server Owner
Installation
- Download the plugin from here
- Place the JAR file in your server's plugins folder
- Start your server
- Configure the plugin as needed (see Configuration section)
Commands
/backpackconfig |
Opens the backpack configuration menu |
backpacksplus.open_backpack_config_menu |
Permissions
BackpacksPlus uses a flexible permission system that server owners can configure in two ways:
- Enable/Disable Permission Checks: In the configuration file, you can toggle whether certain features require permissions at all.
- Assign Permissions to Players: Using your server's permission system to grant specific permissions to players/groups.
Permission Nodes
backpacksplus.open_backpack_config_menu |
Allows opening the backpack config menu |
backpacksplus.open_backpacks |
Grants ability to open backpacks |
backpacksplus.dye_backpacks |
Enables dyeing backpacks |
backpacksplus.rename_backpacks |
Allows renaming backpacks |
backpacksplus.expand_backpacks |
Grants ability to expand backpack capacity |
Note: When a permission check is enabled (true), players must have the corresponding permission node to use that feature. When disabled (false), any player can use that feature regardless of permissions.
By default, no players have these permissions unless explicitly granted by server administrators using permission plugins.
Configuration
After first startup, the plugin will generate a
config.json file in the
plugins/BackpacksPlus directory. Changes to the configuration require a full server restart to apply.
In-Game Configuration GUI
For a more intuitive configuration experience, BackpacksPlus provides an in-game GUI accessible through
/backpackconfig that allows server administrators to visually configure plugin settings without editing the config file directly.
The configuration GUI provides an interactive interface where you can:
- Configure Default Backpack Settings: Set the default display name, color, size, and starting contents for newly created backpacks
- Adjust Expansion Costs: Configure the required items for each backpack size upgrade (Medium, Large, Greater, and Jumbo) by placing the desired items in the GUI slots
The in-game configuration GUI automatically saves changes to the config file and provides immediate visual feedback. This eliminates the need to manually edit JSON files and reduces configuration errors. Changes made through the GUI still require a server restart to take full effect.
Configuration Options
Backpack Settings
- crafting_recipe: Configures the crafting recipe for backpacks.
- rows: Defines the crafting table rows.
- 1: Configures the 1st row of the crafting recipe.
- 2: Configures the 2nd row.
- 3: Configures the 3rd row.
- ingredients: A mapping of key characters (from the rows) to their respective Material.
- expansion_cost: Defines the expansion costs for different backpack sizes.
- MEDIUM, LARGE, GREATER, JUMBO: encoded ItemStack arrays for each backpack size.
- defaults: Default settings for new backpacks.
- display_name: Default name for the backpack.
- color: Default color of the backpack.
- size: Default size of the backpack.
- contents: Default contents in an encoded ItemStack array.
- permissions: Control which features require permissions.
- open_backpack_config_menu: Permission required to open the menu containing backpack configuration settings.
- open_backpacks: Permission required to open backpacks.
- dye_backpacks: Permission required to dye backpacks.
- rename_backpacks: Permission required to rename backpacks.
- expand_backpacks: Permission required to expand backpacks.
Example Configuration Change
Default recipe:
Code (Text):
{
"rows": {
"1": "SLS",
"2": "LCL",
"3": "LLL"
},
"ingredients": {
"S": "STRING",
"L": "LEATHER",
"C": "CHEST"
}
}
Custom recipe (using wool and ender chest):
Code (Text):
{
"rows": {
"1": "WWW",
"2": "WEW",
"3": "WWW"
},
"ingredients": {
"W": "WHITE_WOOL",
"E": "ENDER_CHEST"
}
}
API
Adding Library to Project
Manual:
Download the latest version and add it to your project's classpath.
Maven:
Add this repository and dependency to your
pom.xml in the
repositories and
dependencies sections respectively:
Code (Text):
<repository>
<id>jasonkaranik-nexus</id>
<url>https://nexus.jasonkaranik.com/repository/maven-releases/</url>
</repository>
<dependency>
<groupId>com.jasonkaranik</groupId>
<artifactId>backpacksplus</artifactId>
<version>1.0.0</version>
</dependency>
Documentation
At the moment, the only available documentation is provided in the
JavaDoc.
Usage Example
See
this plugin which uses the BackpacksPlus API.
License
This project is licensed under the Apache License 2.0. See the
LICENSE file for more details.