Report a bug | Read the wiki | Changelog and old versions
- Native Minecraft Version:
- Tested Minecraft Versions:
- Source Code:
- Contributions by theJ3H and mcgrizzz
The vanilla Ender Chests are not very friendly for multiplayer servers. They are strictly personal, other players cannot access them. This is a problem on raiding servers, but also on collaborative build servers where players want to share access to their Ender Chest. Vanilla Ender Chests are also unique to a player on a server, there's no way to separate worlds on the same server, or to connect worlds on different servers. Finally, the vanilla Ender Chests are not easily moderated; moderators cannot simply open an Ender Chest, nor is there a command to add an item to an Ender Chest.
BetterEnderChest solves all of these problems, and adds a few features to the Ender Chests too. You can customize the chest sizes, you can set default contents of the chest and you can enable a command to remotely open (or just view!) an Ender Chest.
BetterEnderChest existed previously on BukkitDev. No more updates will be posted on BukkitDev, all future updates for Spigot will be posted here.
Some features required saving the Ender Chests in a separate file. The plugin automatically imports from vanilla, MultiInv, Multiverse-Inventories, MyWorlds and WorldInventories, no action needed on your part.
BetterEnderChest works great on a single server, without any (database) setup required. However, if you set up multiple servers to save to the same MySQL database, the Ender Chests will automatically have the same contents across servers. This is a great way for players to transfer items between servers inside your server network.
Lockette, LWC and BlockLocker integration
Uses Lockette signs, BlockLocker signs or LWC protections so that you can allow other people/groups in your chest. When a chest is protected by you, and if someone else is allowed in your chest, he/she will see your items instead of his/her own items. This is completely optional. To enable this, simply add the Ender Chest to the custom block list of LWC/Lockette/BlockLocker. (See the installation instructions.)
Public Ender Chest
Optional: unprotected (by Lockette and LWC) chests are public chests. If you don't add the Ender Chest to the custom block list of those plugins, or if you haven't installed them, there will be no way of making private chests.
Adds /enderchest to open your Ender Chest from anywhere, but only for ops by default. It also adds a few useful administrative commands to open and manage the Ender Chest inventories. Commands work even when the owner of the inventory is offline.
You can set the number of slots in the chest to make the Ender Chest not too overpowered. You can decide exactly which items are allowed in chests, based on item id, name and/or lore. Players can have different chest sizes based on permissions. No client mods needed. You can also set the drops of the chest (nothing, itself, 8 obsidian, an Eye of Ender (with or without 8 obsidian), or with an Ender Pearl (with or without 8 obsidian) ).
Inventories can be separated between worlds on a single server, so that for example you creative worlds can have different Ender Chest inventories than your survival worlds, or your Nether world can have other Ender Chest inventories than the surface world. On installation, BetterEnderChest will automatically copy the group structure from your current inventory seperation plugin, if you have one. It is possible to setup another structure in BetterEnderChest than in the inventory seperation plugin. This can be used to create very interesting ways of transporting items between worlds and even servers.
Default Ender Chest
You can create a default chest that all new players get when opening their Ender Chest for the first time. Edit it with /bec openinv --defaultchest or a NBT editor. Changes will be applied after the next (auto)save, which is almost immediately on the default settings. Each worldgroup has a different default chest.
Most messages can be translated. You can find translation files for Dutch and Russian on this wiki page. If you have made your own translation, please add it there!
Save file format
The plugin has it's own saving/loading mechanics, either using NBT files or MySQL. This is necessary to make some of the features possible. The plugin automatically imports an Ender Chest when it is opened for the first time. The owner of the Ender Chest doesn't need to be online for this. The importer supports vanilla as well as some other plugins (MultiInv, Multiverse-Inventories and WorldInventories).
It doesn't save too often: every five minutes all changed chests are added to a save queue. You can set how fast chest in the save queue get saved.
Installation and configuration
Just drop the plugin in the plugins folder. Most features will be disabled by default. Read the guide for starters here or read here about every configuration option. Download translation files here.
You can view a complete list of the permissions here. The basic permissions are:
- betterenderchest.user - build, craft, open and destroy Ender Chest. Given to everyone by default.
- betterenderchest.command - use all commands. Operators automatically get this permission.
- betterenderchest.command.openinv.self - just the permission to open your own Ender Chest (or the public one, as defined in the config.yml) from anywhere using /enderchest or /betterenderchest openinv.
- betterenderchest.slots.upgrade1 - get the number of slots in the Ender Chest as defined in the config.yml.
- betterenderchest.slots.upgrade2 - get the number of slots in the Ender Chest as defined in the config.yml.
<required argument> [optional argument]
- /enderchest [player] - opens or views an Ender Chest. Alias for either /betterenderchest openinv or /betterenderchest viewinv, depending on which permission nodes were granted.
- /betterenderchest deleteinv <player> - delete all items in someone's Ender Chest.
- /betterenderchest give <player> <item> [amount] [damage value] - give an item to an Ender Chest inventory.
- /betterenderchest list - list all cached Ender Chest inventories. Useful for debugging.
- /betterenderchest openinv [player] - open an Ender Chest remotely.
- /betterenderchest viewinv [player] - view anyone's Ender Chest from anywhere. Editing is disabled.
- /betterenderchest reload - reload the configuration.
- /betterenderchest swapinv <player1> <player2> - swap two Ender Chests.
- Instead of typing /betterenderchest you could also type /bec.
- As seen in the permissions section above, it is possible to allow /enderchest but disallow /enderchest [player].
- /enderchest and /betterenderchest openinv (both without the playername) normally open your own Ender Chest, but there is a setting in the config.yml to open the public Ender Chest instead.
- Use --publicchest as a player name to refer to the public Ender Chest, and use --defaultchest for the default chest.
- Use the syntax groupname/playername to open chests from another group. Example: /bec openinv cavegroup/Notch
Making Ender Chests multiplayer-friendly
Hi, I want to report an error that I have every time my users ever attempt to use the / enderchest command or any other plugin command and the error is as follows
Ender Chest has been disabled, because chest can not be saved or loaded. Ask the admin of this server to look in the console.
That is the error that appears can you give me the solution?
26.07 14:53:30 [Server] ERROR [BetterEnderChest] - ---------------------------------------------------------- - 26.07 14:53:30 [Server] ERROR [BetterEnderChest] Saving and loading had to be disabled. Here's the error again: 26.07 14:53:30 [Server] ERROR [BetterEnderChest] (Use "/bec reload" to try again to save and load.) 26.07 14:53:30 [Server] ERROR [BetterEnderChest] Failed to access the net.minecraft.server classes. The usual cause of this is that the plugin is outdated, so please look for an update. Another possibility is that your Spigot build is outdated. 26.07 14:53:30 [Server] INFO java.lang.Throwable
Spews in console and error appears in chat when I try to use an ender chest. 1.8 with compatible version.