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)
- 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!
" Fixed armour enchantments "
Sorry to say but if i try to buy my 298-gkvpi5 it gives me a normal leather helment :(
I have it installed with vault and iconomy and have set up and tripple checked my perms using Pex. Even with me have all perms, I can set up a shop just fine but neither left nor right click does anything. no chat error I do however get this in the console
I am using the latest release of all plugins and have a MYSQL set up.
07:03:13 [SEVERE] Could not pass event org.bukkit.event.player.PlayerInteractEve nt to ChestShop org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$103.execute(JavaPluginLoader. java:1026) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav a:61) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j ava:460) at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEven t(CraftEventFactory.java:187) at net.minecraft.server.ItemInWorldManager.dig(ItemInWorldManager.java:9 5) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:518) at net.minecraft.server.Packet14BlockDig.handle(SourceFile:43) at net.minecraft.server.NetworkManager.b(NetworkManager.java:231) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:101) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:7 8) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:543) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:441) at net.minecraft.server.ThreadServerApplication.run(SourceFile:465) Caused by: java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor127.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.bukkit.plugin.java.JavaPluginLoader$103.execute(JavaPluginLoader. java:1024) ... 12 more Caused by: java.lang.NullPointerException at com.Acrobot.ChestShop.Economy.Economy.hasAccount(Economy.java:15) at com.Acrobot.ChestShop.Shop.Shop.sell(Shop.java:137) at com.Acrobot.ChestShop.Shop.ShopManagement.sell(ShopManagement.java:39 ) at com.Acrobot.ChestShop.Listeners.playerInteract.onPlayerInteract(playe rInteract.java:81) ... 16 more
I have no idea what it means or how to fix it and tried googling solutions to no avail.
Is there any intention or possibility of being able to buy/sell multiple item types from a single shop? maybe using spout to build a GUI for shops? sorry it took so long to get back but I've been spending insane amounts of time trying to find good RPG style mods for my server and it's kinda hard since most GOOD RPG plugins/mods are for single player only :/
@Acrobot
Would setting the RECORD_TIME_TO_LIVE: to like 1000000 cause any issues?
@bitory You can't use "98:3", only "98"
@vulpineblaze It supports since the damage value was added! Just do /iteminfo to find out the id.
@Acrobot
We have just found a CRITICAL DUPE bug in ChestShop. Please read your PM for a video.
Thank you Acrobot. I had to manage the purchase and sale of various items through the pex. To do this, I cleared the config file (plugin.yml) in section "permission". It would be great if it could support superperms be disabled in config.yml. If you have no trouble, tell me how to Use the syntax of YML in the case when it is necessary to specify here this resolution: - ChestShop.shop.sell.98:3 (a kind of Stone Bricks)
Quick question: ChestShop does not seem to support item damage values, so i cant sell maps or monster eggs or anything... is this on purpose, so just not supported yet?
If you are trying to make a chest near spawn, you need to make the bukkit.yml, spawn-radius to 0.
Thanks so much to acrobot who personally come into the server to help us out.
@Acrobot
yeah, i tried putting gold ingot, and then i put in 266, and it changed back to gold ingot. If you want, i can show you in-game if it's a bug. 96.127.164.140:25565
@Saiek Are you sure that the item line on sign is the right one?
@Acrobot
it was placed horizontally like this
[block] [chest] [block] SIGN
but it works with
[Block] [Block] [Block] SIGN [Chest]
I set up the shop like, saiek, 10, B 10:10 S, gold ingot...i have all the money i need, and i'm holding 11 gold ingots. When someone left click, it says they dont have enough items to sell. When they right click, it says the shop if out of stock, even when it has 12 golden ingots in the chest.
@Saiek Are you sure that the chest isn't placed diagonally of the sign?
I keep getting an error saying it cannot find the chest, even though its right next to it. I'm using 3.39 with CraftBukkit (1.2 2083, r. 20830)
dependencies?
You mean for compiling or running on the server?
If you want to use it on the server, you only need an economy plugin. If it's a plugin other than iConomy or BOSEconomy, you also need Vault. That's it. You can also use WorldGuard, LWC, Lockette, SimpleChestLock, Heroes, Towny and OddItem with it.
For compiling, you need:
@Schneidertm Well, I don't know what's wrong then. What you can try:
<<reply 599661>>
No errors -.-
@Photonlance Hmm, it shouldn't be removing the flags then, but you know, I can't do anything about it - it's a hacky way, because WorldGuard doesn't allow custom flags (like I add them now :/)
@ThoLav Yeah, iConomy sometimes does something wrong and everything crashes. Glad it's working for you again :)
@Acrobot
Hi,
I fixed the problem. I deleted the directory iConomny and let iConomy generate new config files, changed my mysql settings in iConomy/config.yml and now it's running like it did before. I got no errors in server.log console and also found no errors in /var/log/mysql logfiles. I also checked the 2 config files with diff and got no message, what means there is no difference: if I use the old config.yml the problem ist back.
Really strange.
Thanks for your help.