Shopkeepers
Set up custom villager shopkeepers that sell exactly what you want them to sell and for what price. You can set up admin shops, which have infinite supply, and you can also set up player shops, which pull supply from a chest.
It will also prevent any other trades with non-shopkeeper villagers, if you want it to.
For those who are simply looking for a convenient way to modify the trades of vanilla villagers (as an alternative to using complex Minecraft commands), the plugin also includes a graphical editor for regular villagers and wandering traders.
Basic Features
- Easily create villager shopkeepers that trade the items you want them to trade.
- Admins shops with infinite supplies.
- Player shops which pull supplies from a chest.
- Different types of player shops: selling, buying, trading, and selling books.
- Various supported mob types to represent your shopkeeper, sign shops, and Citizens (NPC) shops.
- Editor for regular villagers and wandering traders.
- Many configuration options.
- Translatable messages.
- Open source (Source code on GitHub)
Supported server versions
Shopkeepers supports the latest versions of Bukkit / Spigot.
Note that this plugin is created to work with CraftBukkit (or alternatively Spigot). Bukkit does not have an API for some of the things necessary to make this plugin work. This means that other server software (Tekkit, Forge, Cauldron, etc.) will not work with this plugin.
Other CraftBukkit or Spigot derivatives/forks might work, but are not officially supported. So if you run into issues while using those, try to reproduce your issue on a fresh and up-to-date Spigot server first.
Getting started
All documentation can be found in the wiki:
- Downloads and changelogs for all files
- Installation
- Translations
- Configuration
- Permissions
- Creating shops
- Commands
- Frequently Asked Questions
Showcase
Admin shops:
Configure the trades via the in-game inventory menu:
Resulting trading menu:
Player shops (ex. selling items):
Fill the shop chest with supplies:
Configure the trades via the in-game inventory menu:
Resulting trading menu:
Video Tutorials
More video tutorials can be found in the wiki: https://github.com/Shopkeepers/Shopkeepers-Wiki/wiki/Video-Tutorials
Tutorial by Donnie, explaining the setup of the different shop types:
Tutorial by Fan Staaff showing the setup of the different shop types in detail:
Tutorial by LastKing2X,showing the setup of the different shop types:
Spanish tutorial by Ajneb97, also mentioning placeholder items and various config options:
Statistics
This plugin uses bStats to collect anonymous plugin usage statistics. This helps me to determine how many servers are using the plugin, which Minecraft versions it is used with the most, and to which degree the different features are used.
Here is a list of all currently tracked information:
- Common information: The number of servers using the plugin, the number of players on these servers, online mode, Minecraft version, plugin version, core count, system arch, operating system, server country, Java version.
- Shopkeepers specific information: Whether specific related plugins are used (Citizens, Towny, WorldGuard, Gringotts, other Vault economy plugins), number of shops, whether player shops are used, whether certain features are enabled in the config (ex. WorldGuard/Towny compatibility, Citizens shops, delayed saves, colored names, chest protection, removal of inactive shops, tax rate, strict item comparison, purchase logging, disabling of other villagers, ..), the number of worlds containing shops.
- All information can be publicly viewed here: https://bstats.org/plugin/bukkit/Shopkeepers/
If you want to disable bStats for all plugins on your server, edit the file plugins/bStats/config.yml, or alternatively disable it only for Shopkeepers by setting 'enable-metrics' to 'false' inside the Shopkeepers config.
Known potential issues
A list of known potential issues of the latest version of Shopkeepers can be found in the wiki: This documents differences between Minecraft/Spigot versions, and existing Minecraft/Spigot issues related to Shopkeepers.
If you run into an issue, check if this list already contains and maybe offers information on how to handle it.
Have issues or further questions?
If you have a pressing issue or simple question, you can join the discord server and ask other plugin users for help:
But submitting a ticket is the best way to get help or report a problem with the plugin.
Before submitting a ticket:
- Check if your question is already answered in:
- The documentation (wiki).
- The FAQ.
- The Known Issues.
- Check if there is already another ticket for your issue.
Before reporting an issue:
- Try to reproduce your issue when using:
- The latest versions of Spigot and Shopkeepers.
- No other plugins.
- No kinds of other server or client mods.
When reporting an issue:
- Provide the versions you are using of Minecraft, Spigot and Shopkeepers.
- Provide a detailed description of your problem and add as much information as possible which could help reproducing the issue.
- If possible, include step-by-step instructions on how to reproduce the issue on a fresh Spigot server.
Donations
If you like this plugin, consider supporting its developers by making a donation:
- To blablubbabc (current maintainer: Dec 2013 - today)
- To nisovin (former author: Aug 2012 - Dec 2013)
A big "thank you" to everybody who is keeping the motivation up through donations!
Minecraft-Servers-Listing.com | TRS Game Servers | terminalserver.us |
Minewind | mercurialmusic | timitimitimi |
FatherWh0 (merchantvillages.com) | lukeeexd (tws-mc.com) | PapaJuan |
EmeraldHaze (Ninjalette) | Espen | kbtalkin |
Dimo (Beyond Vanilla) | RefugiaCraft | Frilioth |
Tabletopcheese | Observant Minecraft Server | Ren Binden |
Want to help?
The less I have to do myself, the more time I have to write plugins. Therefore I am looking for someone who would be willing to get involved in the project. That could for example mean:
- Keeping the documentation (the wiki) up-to-date with plugin updates.
- Improving the existing documentation.
- Creating and maintaining translations.
- Help managing issues and answering questions of users.
If you are a programmer with experience in writing bukkit plugins, or have ideas on how you can contribute to the project beyond that, let me know as well! If you are interested, feel free to contact me via PM.
Beyond that, everybody is invited to help others with issues and questions in the issue tracker, comment section, and the discord channel! Also consider contributing translations!
Third-Party Add-On Plugins
Sometimes a feature is either to specific to include it directly into the Shopkeepers plugin, or I did not yet have the time to add something similar myself. The plugins listed here extend the functionality of the Shopkeepers plugin.
These plugins are maintained by other community members. If you run into issues while using any of these add-ons, try to first reproduce your problem without any add-ons before you report it.
ShopkeepersNavAddon(abandoned): Adds inventory-based GUIs that allow you to browse all player shops, all admin shops, and to find shops that trade a specific type of item. You can teleport to a particular shopkeeper by clicking a button inside the GUI.
This plugin also integrates support for trading with Vault-based currency, but does so by replacing Shopkeepers' normal trade handling.
If you have also written an add-on plugin and want it listed here, let me know!
He was on a grass block that i spooned into a grass_path block :3
Hello,
I really like this plugin and it worked perfectly but since a few days my shopkeepers don't work anymore.
When I'm on the shopkeeper's interface and I click on one of my items (most of times to trade), the interface closes.
I tried to reload the plugin, to use the debug mode, to shift-rightclick, to create some other shopkeepers, but it still does the same error. I don't have any log.
My server is in 1.7.10, I don't know which shopkeeper version I have (if you know how to tell it, I'll take it ^^) but it's one of the latest for 1.7 and more.
Thanks for your help :)
Are you using craftbukkit or spigot? Make sure that you are not using any modded server, because those those had this issue in the past if I remember correctly.
If not, you will have to get the log for me. If there is no error, try with debug mode enabled to see if it yield any useful information, and if nothing helps, make sure that no other plugin is interfering.
Hello, yes my server is modded but shopkeepers worked perfectly since here.
Where can I find shopkeepers logs? It doesn't appear on the console.
Finally, how does the debug mode works? I did'nt understand ^^
Thanks
Hi, I really love the way is made this plugin, but I tried to make a villager with customs trades, using /shopkeeper, but when I put items in the slots for the trades, they will appear when shift clicking, but when you just right-click on the villages, nothing happens or the villager has default trades... I'm in 1.11
Check your server log for errors. If there is an error saying something along the lines of 'MethodNotFoundException' it might be that you need to update your spigot server to a later version of 1.11.
I updated the server, now it works good, thx a lot!
right clicking with empty hand, with an egg in hand, in survival, in oped mode and not, the "Right-click to select" doesn't work... running latest version on my 1.9.
It creates the entity but its none responsive, and i did enable Citizens in the config, even added the permission node. hasn't worked ever in the 5 times i tried it over 3 years bud.
contact me if you'd like help troubleshooting this.
I am not sure what you mean with 'right-click to select'. You could mean any of the following:
* Selecting the shop type or the shop object type when right clicking in air.
* Selecting a chest via right click.
* Selecting a spawn location for the shop after having selected a chest.
* Opening the trading view of a shop.
* Opening the editor of a shop via crouch+right-click.
Assuming you mean selecting spawn location and you get some entity to spawn but you cannot interact with it: If you right-click somewhere where you cannot place a shop, or if shop placement failed for some reason, the egg will act like normal and spawn a normal non-shopkeeper entity, which of course will not be interactable. You can check if it is a normal entity by checking if it moves / gets teleported back to its spawn location.
Shop-creation can fail for various reasons. Usually you should get a message then though. Also turn on debug mode and see if that prints any additional info in that case.
Assuming you were able to create a shopkeeper but you cannot open the trading menu: Check your server log for errors. If you are on 1.9 the chances are you are on an old version of 1.9. The latest version of shopkeepers requires a latest version of spigot 1.9 to work, because they added some new API in some later 1.9 version of spigot.
Assuming you cannot open the editor window: Not sure what the issue might be here. Could be some other plugin interfering.
If you send me your server ip via PM I can come and take a look. On my test server it works fine, so its either an user error or some conflicting plugin or server version.
@IsaiahPatton:
Please don't post error stack traces in the comment section. Instead create a ticket and attach them there.
Regarding your issue: You are probably using an older version of spigot 1.11. Make sure to update your server. The version you are using does not yet have the required API additions for shopkeepers.
Is it possible to change the Look of an Adminshop simply with rightklicking it with the speciffic monsteregg?
This would be cool. :)
Little bugs:
if u setup the config to de.
Then the plugin creates a file called language-de.yml
if u now open the GUI of a Shopkeeper - u see that not all strings taken from the german file. Some lores are taken from the config.yml where the strings are all in english.
My current solution for this problem is overwriting all strings in the config with the lines from the lanuage-de.yml and reloading the plugin :P
Notes: The German file is missing these strings:
Thanks, those messages will be included in the default german translation with the next update.
Regarding feature requests:
You can create a ticket and describe it there in detail. But currently I have no time to look into this.
Hey, I love your plugin! Are you considering making an API (or is there any?)? Because I would like to Hook your plugin into my vanish one so the shopkeepers dont look at vanish people!
Thank you :)
There is no official API. But you can look at the source code at github and see for yourself what you can do with the public methods.
Regarding looking at vanish players: Shopkeepers makes use of minecraft's look-at-nearby-players AI goal whenever it spawns a shop entity. So you will have to modify the entities AI goals somehow periodically or similar. Shopkeeper entities are also tagged with the 'Shopkeeper' metadata to help identifying them.
Thanks for answering! I see its a little complicated. Other thing would be make the Shopkeepers not to look at hidden players. So they wont be targeted.
Thank you, if you cant add this, it doesnt matter. This plugin rocks!
Could you please update it to 1.11
It is already updated.
Just to let everyone/the plugin author know, the shopkeepers will not let you sell items to them that have multiple lines of lore and are enchanted.
For example; I make a shopkeeper named Bob, using commands I create an Iron ingot with the name "Steel" and the Lore1: "Raw Material", Lore2: "Tough and Strong" and I give Steel "Lure 1" I then make two trades on Bob, one selling Steel and one buying. Bob will happily sell Steel (or any other multiple-lored item) to the player, however the player cannot sell the steel back. This is true for any enchantment/name on any item with multiple lore.
That said, from my experience; Vanilla custom Minecraft villagers have the same problem. It would be nice to see this fixed but I'm not complaining too much, I'd just thought it'd be handy for the plugin developer or any user of the plugin to be aware of this.
p.s: AWESOME plugin, saves me a ton of time plus makes economies super easy to setup, run, maintain and have easy user input.
The plugin nor the vanilla villagers should have any problem with those items. From past experience my guess is that some plugin on your server is modifying the items at some point, without you or the players noticing it. This could be small changes like adding some custom internal data to the item which players cannot see. Or the plugin is actively disguising the changes to the items from the players by modifying the outgoing item data (dtltraders did that in the past).