ChestShop (iConomyChestShop)
Acrobot released his first Android game, would you mind giving it a go?
ChestShop
A simple, yet very powerful system for making physical shops using signs and chests.
It's never been that easy to create shops! With features like shop protection and anti-lag protection, you won't have to worry about your server's economy anymore!
"Just works"! ChestShop supports almost all economy plugins by using Vault!
(Versions above 3.9.2 also support economy plugins using the Reserve API)
Some known compatible and incompatible economy plugins.
Please check if there are newer development builds before reporting issues!
If you are upgrading from a previous version of ChestShop please make sure to always read the warnings in the file's changelog!
The plugin by default submits anonymous stats about your server (player count, plugin/server version and type) to a public statistics websites (mcstats.org and bstats.org) in order to provide the developers with usage information. If you wish to opt out, you can do so in the PluginMetrics/config.yml and bstats/config.yml files. It also features an auto-update feature, which can be turned off in the config.
Frequently Asked Questions
Permissions
User-made tutorials
Download the latest stable version
Download the latest development version
Download 1.12.2 version
Download 1.8.8 version
Download older versions
API for plugin developers
Source code on GitHub
Crowdin Localization Project
Thread on Bukkit forums
IRC chat (#chestshop on irc.esper.net)
Discord Channel Joining through that invite auto subscribes you to important update notifications, if you don't want that use this invite.
bStats metrics
Additional modules for ChestShop:
ChestShop LegacyIds - allows usage of numeric and old pre 1.13 string IDs on signs
Notification module - to use with Notifications plugin (outdated)
Towny module - to use with Towny plugin
ChestShop Notifier - records all sales, even when the player is offline (Maintained by Phoenix616)
ChestShopTools - Enchantment info signs and empty shop notifier (Maintained by Phoenix616)
Adda - Item display icons above the chest, transaction limit, Discord alerts, per-player shop limit! (User-made)
ChestIcon - Icons for Chests, just like the Showcase plugin! (User-made, broken on newer versions)
Libelula Auto Shop - easy creation of admin shops, using Essentials (User-made)
ChestShopLimiter+ - limits the number of shops per player (User-made, abandoned)
ChestShopListing - Stores shops and transactions in SQL; adds related features including in-game search (User-made)
ChestShopConfirmation - confirmation screen before buying (User-made)
SearchChestShop - search for shops selling certain items (User-made)
BoltChestShop - Add support for Bolt container protections (Made by the Bolt author)
Using shops
It's easy! Just right-click the sign to buy, left-click to sell. (You can configure the buttons in the config file!)
How to create a shop
Player shop
| Place a chest on the ground | |
| Place a sign 1 block away from the chest (for example, above it) | |
| On the sign, write: | ![]() |
| Leave the first line empty. It will be automatically filled with your name by the plugin (if you have the permission ChestShop.admin then you can create shops with the names of other players) | |
| Second line is the amount of items to buy or sell | |
|
Third line is a combination of buy and sell prices. You need to have a price indicator (like 'B' - price that will apply to items BOUGHT by PLAYERS - or 'S' - the SELL price) near the price - the prices are separated by a colon (:) |
Some of the possible price combinations: "B 5:5 S", "B 5", "S free" |
|
The forth line will hold the id/name of the item. Write ? on the sign and the item will be autofilled with the one from the chest or you can click on the sign with the item afterwards. Optionally you can put the actual name on it. You can find out the name of the item you're holding by doing /iteminfo |
|
| Resulting Shop | ![]() |
| A person can buy 64 diamonds for 10 dollars and sell them back for 5 dollars from Phoenix616 |
If you want you can also take a look at this video tutorial.
Admin Shop - shop with unlimited items
Firstly, you've got to be sure that you've the ChestShop.admin permission or that you are an OP. To make an Admin Shop, simply put "Admin Shop" (configurable in config.yml) on the first line of the sign when creating the shop. Admin Shops do not require a chest!
Translations
- /iteminfo - Get information about the item in your hand
- /iteminfo <id/name> - Get information about the item with the given id or name
- /shopinfo - Get information about the looked-at shop
- /csgive <itemcode> [<amount>] [<player>] - Give item with a unique ChestShop code to a player
- /cstoggle - Toggle buy and sell notificiation messages
- /chestshop version - Display the ChestShop version
- /chestshop reload - Reload the ChestShop config and translation messages. (This might not reload some features)
- /csaccess - Toggles ability to buy/sell on shops while having admin/access permissions and normally being ignored
Permission nodes
| Description | ||
|---|---|---|
| ChestShop.shop.* | shop creation and buying/selling - it contains: | |
| ChestShop.shop.create.* |
create all types of shops |
|
| ChestShop.shop.buy | buy any item from shop | |
| ChestShop.shop.sell | sell any item to shop | |
| ChestShop.mod | open any shop chest | |
| ChestShop.admin | open any shop chest, destroy stores, create (admin) shops |
A full list of permission nodes
Configurations
Useful tips by players
| How not to get bankrupt | A customisable price table |
| Alternative price table |
Compatibility
ChestShop directly hooks into the following plugins to provide additional functionality:
- AuthMe (and forks like AuthMe Reloaded)
- WorldGuard
- Residence
- LWC (and forks like LWCX and Modern-LWC)
- Lockette
- LockettePro
- Deadbolt
- SimpleChestLock
- OddItem
- Heroes
- ShowItem
Metrics
This resource sends metrics data to McStats and bStats. You can opt-out of metrics for all plugins on your server by changing the settings in the PluginMetrics/config.yml and the bStats/config.yml file if you don't want any data to be send.
More info
Even more information can be found in the old plugin thread on the forums.
Got an error or suggestion?
Simply submit a ticket here!
If you have a Github account and have coding knowledge you can also directly open an issue on Github. (You can also fund them via IssueHunt!)
If you just need general help feel free to ask in the comments or join the #chestshop channel on Spigot's IRC network (irc.spi.gt, webchat)
Has ChestShop helped you or your server?
If you want to thank the team in a more materialistic way, feel free to donate or buy Phoeni616 a beer! :)
A shout-out to Acrobot's friend:
We believe that the music he makes is really stunning - you can decide it for yourself!
If you have an issue then please open a ticket on GitHub or post on SpigotMC.org for faster replies to questions!


-
View User Profile
-
Send Message
Posted Aug 3, 2013Is there a way to make a shop that belongs to the server and still have the quantity of items depend on the items in the chest?
We used to have a lot shops that has descriptions in the first line, but now they are all broken.
Could you please make this happen again? Thanks! Always appreciate your support!
-
View User Profile
-
Send Message
Posted Aug 3, 2013@Acrobot
Alright Ill update to the latest snapshot again and check back.
-
View User Profile
-
Send Message
Posted Aug 2, 2013@Acrobot
Has a lot of changes been made since the dependency refactor? I had to fork and revert those commits for some changes I had to make. Not entirely sure what's on the list that is newer than those commits.
-
View User Profile
-
Send Message
Posted Aug 2, 2013I need help with this: Note this is copied from multicraft console so its upside down.
02.08 09:15:47 [Server] INFO ... 16 more 02.08 09:15:47 [Server] INFO at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:53) 02.08 09:15:47 [Server] INFO at org.yaml.snakeyaml.Yaml.load(Yaml.java:399) 02.08 09:15:47 [Server] INFO at org.yaml.snakeyaml.reader.StreamReader.<init>(StreamReader.java:50) 02.08 09:15:47 [Server] INFO at org.yaml.snakeyaml.reader.StreamReader.checkPrintable(StreamReader.java:70) 02.08 09:15:47 [Server] INFO in "<string>", position 10 02.08 09:15:47 [Server] INFO Caused by: unacceptable character '�' (0xFFFD) special characters are not allowed 02.08 09:15:47 [Server] INFO at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:582) 02.08 09:15:47 [Server] INFO at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:391) 02.08 09:15:47 [Server] INFO at net.minecraft.server.v1_6_R2.DedicatedServer.init(DedicatedServer.java:151) 02.08 09:15:47 [Server] INFO at net.minecraft.server.v1_6_R2.MinecraftServer.a(MinecraftServer.java:250) 02.08 09:15:47 [Server] INFO at net.minecraft.server.v1_6_R2.MinecraftServer.f(MinecraftServer.java:290) 02.08 09:15:47 [Server] INFO at net.minecraft.server.v1_6_R2.MinecraftServer.l(MinecraftServer.java:313) 02.08 09:15:47 [Server] INFO at org.bukkit.craftbukkit.v1_6_R2.CraftServer.enablePlugins(CraftServer.java:264) 02.08 09:15:47 [Server] INFO at org.bukkit.craftbukkit.v1_6_R2.CraftServer.loadPlugin(CraftServer.java:282) 02.08 09:15:47 [Server] INFO at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381) 02.08 09:15:47 [Server] INFO at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:457) 02.08 09:15:47 [Server] INFO at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:217) 02.08 09:15:47 [Server] INFO at com.Acrobot.ChestShop.ChestShop.onEnable(ChestShop.java:78) 02.08 09:15:47 [Server] INFO at com.Acrobot.Breeze.Configuration.Configuration.pairFileAndClass(Configuration.java:27) 02.08 09:15:47 [Server] INFO at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(YamlConfiguration.java:175) 02.08 09:15:47 [Server] INFO at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:105) 02.08 09:15:47 [Server] INFO at org.bukkit.configuration.file.FileConfiguration.load(FileConfiguration.java:138) 02.08 09:15:47 [Server] INFO at org.bukkit.configuration.file.YamlConfiguration.loadFromString(YamlConfiguration.java:55) 02.08 09:15:47 [Server] INFO in "<string>", position 10 02.08 09:15:47 [Server] INFO org.bukkit.configuration.InvalidConfigurationException: unacceptable character '�' (0xFFFD) special characters are not allowed 02.08 09:15:47 [Server] SEVERE Cannot load plugins/ChestShop/local.yml 02.08 09:15:47 [Server] INFO Enabling ChestShop v3.5
-
View User Profile
-
Send Message
Posted Aug 2, 2013@Eutherin Okay, the only thing I can think of is that maybe you should update your CraftBukkit version? I suppose there could be a bug in this version of CB.
@gangstacris4 Unfortunately, I've no idea. Please create a ticket and I'll investigate it.
@predawnia Yup.
@RustyDagger See, the issue is backwards compatibility. Like @Niknox says, this would break every shop in existence.
@Tonysp Awesome. I'm sorry, the description is there from the beginning of the ChestShop plugin. And it's been the first shop plugin for Bukkit.
-
View User Profile
-
Send Message
Posted Aug 2, 2013"It's never been that easy to create shops!", really? In another plugin you create shop only by clicking on the chest with item in hand and typing price.
-
View User Profile
-
Send Message
Posted Aug 2, 2013@RustyDagger
But this might break millions of shops?
-
View User Profile
-
Send Message
Posted Aug 1, 2013I would really like to swap lines 3 and 4 on the sign. Why? For read ability top/bottom
Currently it reads. Shop Number Price Item > Admin Shop 1 B 20:0 S Gold Apple.
Not exactly proper English or easy to read.
Where as Shop 1 Cobble B 0.5:0 S
Would be Soo Much easier to read and understand.
-
View User Profile
-
Send Message
Posted Aug 1, 2013Can v3.60 work with CB 1.5.2 ?
-
View User Profile
-
Send Message
Posted Aug 1, 2013Is there a way to allow using hoppers on chests...
My main city for the spawn city of my server has a hopper storage system for the items it buys from people...
Wondering if you can add an option per chest or config to allow it..
That way we can just have other plugins like lwc protect against that..
-
View User Profile
-
Send Message
Posted Aug 1, 2013Any idea what plugin could be causing it? Plugin list: Buycraft 5.8, ChestShop 3.50, CombatTag 5.9.2, Craftconomy3 3.1.4 b1740, Essentials Dev2.12.53, EssentialsChat Dev2.12.53, EssentialsSpawn Dev2.12.53, FactionChat 1.6221, Factions 2.0.3, HeroicDeathPlus 2.5, JCVaultListener 2.0.3, KillMoney 1.3, mcore 6.5.0, Multiverse-Core 2.5-b641, Multiverse-Inventories 2.5-b335, Multiverse-Portals 2.4-b548, NoCheatPlus 3.10.0-RC-b569, ObsidianDestroyer 3.3, PermissionsEx "1.19.6", PlayerHeads 3.2, PlotMe '0.13b', RandomLocation 4.20, UltimateArena "2.5", VanishNoPacket '3.18.2', Vault 1.2.25-b333, Votifier 1.9, WorldBorder 1.7.5, WorldEdit 5.5.6, WorldGuard "5.7.5"
-
View User Profile
-
Send Message
Posted Aug 1, 2013@Acrobot
http://imgur.com/FMb3VZX
There you go.
-
View User Profile
-
Send Message
Posted Aug 1, 2013@hutt132 See, I definitely need more information. ChestShop version? CraftBukkit version? How does the sign look like? What does /iteminfo yield while holding the items?
@gangstacris4 It means that some plugin is blocking the signs. The message only shows up when there is a SignChangedEvent without ANY sign.
-
View User Profile
-
Send Message
Posted Jul 31, 2013I've been trying to make a 'VIP' donators only shop, I gave the group (using PEX) ChestShop.group.VIP, but when I place a [restricted] VIP sign, it just pops off the wall again. Any reason why this is happening? It says this in the console each time - CONSOLE: [SEVERE] [ChestShop] Player gangstacris4 tried to create a fake sign. Hacking?
-
View User Profile
-
Send Message
Posted Jul 31, 2013I can't sell chain leggings or helmets. Chestsplate works fine. I entered in the correct IDs and it doesn't work. Shop says out of stock.
-
View User Profile
-
Send Message
Posted Jul 31, 2013@ManBeastPigDev Could you say which economy plugin you were using? And did you use Vault?
@Eutherin Okay. Seems fine. And could you provide me with the output of /version and /csversion?
-
View User Profile
-
Send Message
Posted Jul 30, 2013I upgraded to the new version and now it says everyone does not have enough money to buy anything, even though they do. I'll rolling back until its fixed. I'm on V3.6.(for now)
-
View User Profile
-
Send Message
Posted Jul 30, 2013@Acrobot
http://imgur.com/OKTXrIE
Here you go.
-
View User Profile
-
Send Message
Posted Jul 30, 2013@Eutherin Okay. Could you post a screenshot of such a shop?
-
View User Profile
-
Send Message
Posted Jul 29, 2013@Acrobot
My hand was empty, i was also opped, i tried having a staff member on my server do it too, but to no avail.