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 - Adds item display icons for shops above the chest! (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)
- 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)
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!
Shops cannot be used if in creative mode, but i keep getting an error that spams my console and crashes server temporarily. Its:
2012-01-26 18:42:53 [SEVERE] Could not pass event org.bukkit.event.player.PlayerInteractEvent to ChestShop java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Boolean at com.Acrobot.ChestShop.Config.Config.getBoolean(Config.java:17) at com.Acrobot.ChestShop.Logging.Logging.log(Logging.java:30) at com.Acrobot.ChestShop.Logging.Logging.logTransaction(Logging.java:35) at com.Acrobot.ChestShop.Shop.Shop.sell(Shop.java:150) at com.Acrobot.ChestShop.Shop.ShopManagement.sell(ShopManagement.java:35) at com.Acrobot.ChestShop.Listeners.playerInteract.onPlayerInteract(playerInteract.java:76) at org.bukkit.plugin.java.JavaPluginLoader$11.execute(JavaPluginLoader.java:340) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:57) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:453) at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:187) at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:92) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:507) at net.minecraft.server.Packet14BlockDig.handle(SourceFile:43) at net.minecraft.server.NetworkManager.b(NetworkManager.java:226) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:100) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:536) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:434) at net.minecraft.server.ThreadServerApplication.run(SourceFile:465) Please help, cant seem to figure it out
@Acrobot
Would disabling the console messages stop chestshop kicking everyone off the server? No?
@Acrobot
Is it possible to create a single chest shop that only specific user groups have access to?
@cuddyier You can also make a local MySQL database - you should probably ask your economy plugin's author about it :P
@Acrobot
Yes, I have my iconomy database on MySQL to reduce load on the server as it doesn't like much load. My only problem is transfering the data from MySQL to flatfile as resetting money is not an option.
@cuddyier Are you hosting your economy plugin's database on an external server? If so, try to move it to your local server or raise the shop interval between transactions in the config.
Why when someone spam sells to a shop on my server does the server kick everyone off and says "Connection Lost" for everyone? My server has more than enough RAM and this I am sure is not the issue. I have the transactions logged in my console.
@Mr_Mellow Well, you can't buy/sell from your own shops, but other people can. The right-click chest opening is just for you :)
Anyone else having problems with not being able to use the shops? I can make the sign and it says chest shop created, but if i right click the sign it just open the chest.
@Xarniia Sorry, it was supposed to be in ChestShop 4, but its development is halted at the moment, because Bukkit is ongoing critical changed (for good, of course :))
In september i asked if there will be a posibility of a global adminshop pricelist. ((Link))
The last months i was a bit away from mc, and so i now only want to ask if there is a posibility to realize this now with ChestShop? Thanks for your information and help!
@nebenezer Yep, I will certainly add that, probably in CS4 (development stopped ATM, because Bukkit is "reborn" :P)
LOL.. well well well
Not mentioning any names but I think we may have had that id10t problem after all :P
I asked him tonight if he was 100% certain that he was ALWAYS clicking the sign and not the chest.. he said yes so I was stumped until a few minutes later when he says "It works now!! Thank you!"
smh and lol..
Thanks for an excellent plugin!!! Now.. if you would build in dynamic pricing for physical server stores (not command based :/) then you would own this market ;)
Thanks Acrobot, we'll revisit the ID10T possibility tonight. I ruled it out because he bought and sold to my chest, that and he says he's an admin on another server and went right to work making his own shop, seemed like he knew your plugin well already. Maybe he doesn't realize he has to click the sign not the chest after all. Thanks for letting me know what triggers that error message :)
@nebenezer Are you sure it isn't the ID10T problem :P From what I hear, he is getting "You don't have permission to access this CHEST" message - this only happens when the user clicks on the chest instead of a sign. I have no clue what is happening if that's not the problem :/
Try checking his permissions with /pex user HisName check ChestShop.shop.buy also the same, but with sell.
@Acrobot
Acrobot, I didn't think this could get anymore.. mysterious, but it has :P
At this point I think I can rule out it being user-error (aka an ID10T problem), or a ChestShop bug, as several successful transactions have been completed by..
He is getting the "You don't have permissions to access this chest!" message.
I tried the following last night:
None of this worked so I asked him to log out and I..
When he logged in after that it was as though he was a Guest again for the first time. He was added to the default group, his money account was regenerated, blah blah blah. Still no love for this guy, regardless what user group he is in :P
FWIW I triple checked my perms.yml.. his perms are still identical to others. Also, I will be happy to describe my region setup in the market (I use WG, EpicZones and SimpleRegionMarket, sounds redundant but they all play their role) but for now let it suffice to say all the shops are set up identically.. no problems with the other shops :/
If you have any brainstorms please let me know. This issue is going on my shelf for at least a few days. Fortunately he is a very patient dude :)
@nebenezer Nope, there isn't. Does he get any message?
@Godworld Can you post that on the Tickets list? Thanks :)
When you destroy a chestshop you get your amount set in config.yml refunded to your balance but there is no alert message to notify you about this, can you please fix this?
Acrobot.. No luck :(
And here is what has really got me stumped.. there is one player that has a shop but cannot buy from any other shops. I just found out that there is another guy that is in the SAME group and CAN buy from any shop, he also has a shop open. I just checked my perms.yml for PEX and confirmed.. their users are set up identically and they are assigned to the same group = they have the exact same permissions ???
Is there any limitation on how close they can be from another persons shop or something. I am totally confused here.
Any insight would be great :)
Acrobot.. I'll give it a shot.. but my spawn radius is already only 2, the market plots are nowhere near it. I hope you're telling me this because its a bukkit bug or something, about to find out! :P