Chest shops with no signs and no syntax. Sneak, click, and just talk.
Made by infinity3113 · Minecraft 1.21+ · Spigot & Paper
✔ Free — no premium version, no locked features. · Java 21 · 4 languages (EN / ES / FR / ZH)
Full Documentation & Wiki
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Every chest shop plugin asks your players to learn something first: a sign written in an exact format, a command with the right arguments, a syntax page they have to read.
TalkShop asks them nothing. They sneak, left-click a chest, and the plugin asks the questions:
Code (Text):
[TalkShop] What kind of shop is this? Type buy, sell or both.
> sell
[TalkShop] At what price do you want to SELL this item?
> 100
[TalkShop] Shop created!
That is the whole tutorial. A brand-new player builds a working shop in fifteen seconds without reading a single line of documentation — which is exactly what you want on a server where most people never read the wiki.
A note from the author
This plugin is completely free, with no premium version holding features back. If it helps your server:
Thanks for trying TalkShop! — infinity3113
- ⭐ Please leave a review — it genuinely helps other owners find it.
- Found a bug or have an idea? Post it in the thread and I'll fix it fast.
- ☕ Donations welcome (optional): Donate via PayPal
Click to expand...
- Created by talking — sneak + left-click a chest holding an item. No signs, no syntax, nothing to memorise.
- Buy, sell, or both — one chest can sell to players, buy from them, or do both and live off the margin.
- Holograms — the item, the owner, the price and the stock float above the chest. A buy-only shop shows the room left and what it can still pay instead of a stock of zero, so sellers know exactly where they stand.
- Linked warehouse — point a shop at a second chest and it restocks itself. The hologram shows both: Stock: 40 (8 + 32 in reserve). Most player shops don't die because the price was wrong — they die because the owner got tired of walking over to refill the chest every evening.
- Global shop finder — /shopsearch lists everything on sale server-wide, cheapest first, with the seller and coordinates. Filter by name, and click a shop to teleport to it if you grant the permission.
- Real market prices — every sale is written down, so /talkshop price answers what an item actually sells for instead of what someone is asking. Admin shops are excluded so they cannot skew it.
- Buying budgets — a shop that buys can be capped: /talkshop budget 50000 and it stops buying on its own when spent, so nobody drains your account overnight.
- Selling caps — the mirror of a budget. /talkshop selllimit 5000 and the shop closes the counter once it has sold that much, then opens again by itself after a set number of hours. In an ordinary shop the chest is already the brake — this is for admin shops and warehouse-fed ones, where it isn't.
- Sales tax — an optional cut the server keeps from every sale, off by default. Whoever receives the money pays it, so the buyer never pays more than the hologram says. Send it out of the economy as a real sink, or into an account.
- Click to trade, confirm to commit — an offer appears in chat with [CONFIRM], [OTHER AMOUNT] and [CANCEL] buttons. Hover it to inspect the item. Nothing moves until you confirm.
- Owner alerts — when your shop fills up or runs out, you get told, so a dead shop doesn't sit there quietly turning customers away. Offline owners get the message on their next login, even across a restart.
- Custom items work — the whole item is stored, including the internal markers plugins like MMOItems or ElementalArms attach. A fake copy without them does not count as stock.
- Run a shop together — an owner can name other players as staff from a menu, and you decide in the config what a helper may touch: prices, stock, history, warehouse, budget. The money always goes to the owner, and only the owner can break the shop, give it away or name staff — so a helper can never quietly turn into a thief.
- Hand a shop over — /talkshop setowner gives away the shop you're looking at, /talkshop transfer gives away all of them. The receiver has to accept, their shop limit is respected, and the warehouse and budget are unhooked — that chest and that money belonged to the old owner.
- Per-rank shop limits — talkshop.limit.5 for players, talkshop.limit.50 for VIPs. Optional creation cost.
- Admin shops — infinite stock, for server-run trading posts.
- Optional shop expiry — clear out the shops of players who stopped playing, so an old server doesn't end up covered in dead chests. Off by default, and the owner is warned days ahead.
- SQLite or MySQL — SQLite needs zero setup; MySQL if you want shops shared across a network.
- 4 languages included and fully editable — and your edits survive plugin updates.
A shop is a chest full of valuables with the owner's name floating over it. These are the ways people try to rob one — and none of them work:
- Opening the chest — it never opens. Right-click trades, it does not open.
- Breaking the other half of a double chest — blocked. Both halves are the same shop.
- Placing a chest alongside to merge with it — blocked, so nobody can attach to your shop and open "their" half.
- A hopper underneath — pulls nothing out.
- TNT or a creeper — shop chests survive the blast.
Linked warehouses are protected exactly like the shop they feed.
⚡ Built to not lag
- Every shop lives in memory — clicking a chest is a lookup, never a database query.
- All database writes are queued onto a background thread. The main thread never waits on the disk.
- Holograms refresh when something actually changes — a sale, a price edit, the owner closing the chest — not on a timer. Idle shops cost nothing.
- A chunk with no shop in it costs one hash lookup when it loads. A chunk packed with shops builds its holograms a few per tick instead of all at once.
- Holograms are never written into your world file. Remove the plugin and no ghosts are left behind.
- Vault + any economy plugin (required) — EssentialsX, CMI or whatever you already run.
- WorldGuard (optional) — respects build permissions when creating shops.
- Sneak + left-click a chest holding an item → create a shop
- Left-click a shop → buy · Right-click → sell
- Sneak-click → trade a full stack at once
- [OTHER AMOUNT] → type the exact number in chat
- On your own shop: right-click to restock, left-click to break it
- Running low on space? /talkshop warehouse while looking at your shop, then click a nearby chest — it keeps the shop stocked for you
- Not running it alone? /talkshop staff while looking at your shop, then click the players who may help. Search by name to find someone who isn't online
Base: /talkshop · aliases /tshop, /ts — everything has Tab completion.
Players
- /shopsearch — the global shop finder
- /talkshop setsell <price> — change what your shop charges (0 stops selling)
- /talkshop setbuy <price> — change what your shop pays (0 stops buying)
- /talkshop remove — stop being a shop but keep the chest and its contents
- /talkshop warehouse — link (or unlink) a chest that restocks your shop
- /talkshop budget <amount|off> — cap what your shop spends buying from players
- /talkshop selllimit <amount|off> — cap how much your shop may sell before it closes the counter
- /talkshop staff — open the menu of who else may run your shop (add · del · list · clear)
- /talkshop setowner <player> — give away the shop you are looking at
- /talkshop transfer <player> — give away every shop you own
- /talkshop accept — take the shops someone is giving you
- /talkshop price [item] — what an item has really been selling for
- /talkshop history — the last sales of your shop, with date and price
- /talkshop help — command list
- /talkshop toggleadmin — turn a shop into an admin shop (infinite stock)
- /talkshop cleanup — remove orphan holograms nearby
- /talkshop test — use your own shops as a customer, to try them out alone
- /talkshop reload — reload config and language files
- talkshop.command.create — create shops (default: true)
- talkshop.command.search — use the finder (default: true)
- talkshop.command.setbuy · talkshop.command.setsell — edit own prices (default: true)
- talkshop.command.budget · talkshop.command.price — budget and market price (default: true)
- talkshop.command.staff — name staff on your own shops (default: true)
- talkshop.command.transfer — give your shops to another player (default: true)
- talkshop.teleport — teleport to a shop from the finder (default: false — a rank perk)
- talkshop.tax.exempt — pay no sales tax, keeping the whole amount (default: false — a rank perk)
- talkshop.admin.history — read any shop's sales, not just your own (default: op)
- talkshop.limit.<n> — shop limit for that rank (highest number a player holds wins)
- talkshop.admin.* — everything admin (default: op)
One clean, fully commented config.yml, and it updates itself: new options from an update land in your file with their documentation, and everything you changed stays exactly as you left it.
Spoiler: config.yml
language : "en" # en · es · fr · zh
database:
type : "sqlite" # sqlite (zero setup) or mysql (shared across servers)
shop:
max-per-player : 0 # 0 = unlimited
creation-cost : 0.0 # charge players to open a shop
remove-orphans : true # clear shops whose chest no longer exists
protect-from-hoppers : true
protect-from-explosions : true
notify-owner : true # warn when a shop fills up or runs out
display:
enabled : true
show-stock : true
show-space : true # buy-only shops show room left, not "Stock: 0"
show-budget : true # ...and what the shop can still pay
show-sell-limit : true # ...and what a capped shop has left to sell
background-opacity : 0 # dark box behind the text, 0-255. 0 = none
price-decimals : 2
view-range : 0.8 # lower it if you run a huge shopping district
sell-budget:
reset-hours : 24 # a shop that hit its selling cap opens again after this
staff : # who else may run a shop besides its owner
enabled : true
max-per-shop : 5 # 0 = unlimited
can-change-prices : true
can-manage-stock : true # open the chest to restock or take stock out
can-view-history : true
can-set-warehouse : false
can-change-budget : false # this one is money, so it ships off
transfer:
require-accept : true # the receiver confirms with /talkshop accept
accept-seconds : 60 # how long an offer stands
log:
enabled : true # every sale is recorded
keep-days : 90 # 0 keeps them forever
history-lines : 10
market:
days : 30 # window used by /talkshop price
min-sales : 3 # below this, no average is shown
expiry:
enabled : false # remove shops of players who stopped playing
days : 60
warn-days-before : 7
teleport:
enabled : true # click a result in /shopsearch to travel there
tax : # a cut the server keeps from every sale
percent : 0.0 # ships at 0 — turn it on yourself
exempt-permission : "talkshop.tax.exempt"
destination : "void" # void = leaves the economy · account:<name>
warehouse:
enabled : true
max-distance : 16 # how far the warehouse may be from the shop
select-timeout-seconds : 60
Installation
Code (YAML):
language : "en" # en · es · fr · zh
database:
type : "sqlite" # sqlite (zero setup) or mysql (shared across servers)
shop:
max-per-player : 0 # 0 = unlimited
creation-cost : 0.0 # charge players to open a shop
remove-orphans : true # clear shops whose chest no longer exists
protect-from-hoppers : true
protect-from-explosions : true
notify-owner : true # warn when a shop fills up or runs out
display:
enabled : true
show-stock : true
show-space : true # buy-only shops show room left, not "Stock: 0"
show-budget : true # ...and what the shop can still pay
show-sell-limit : true # ...and what a capped shop has left to sell
background-opacity : 0 # dark box behind the text, 0-255. 0 = none
price-decimals : 2
view-range : 0.8 # lower it if you run a huge shopping district
sell-budget:
reset-hours : 24 # a shop that hit its selling cap opens again after this
staff : # who else may run a shop besides its owner
enabled : true
max-per-shop : 5 # 0 = unlimited
can-change-prices : true
can-manage-stock : true # open the chest to restock or take stock out
can-view-history : true
can-set-warehouse : false
can-change-budget : false # this one is money, so it ships off
transfer:
require-accept : true # the receiver confirms with /talkshop accept
accept-seconds : 60 # how long an offer stands
log:
enabled : true # every sale is recorded
keep-days : 90 # 0 keeps them forever
history-lines : 10
market:
days : 30 # window used by /talkshop price
min-sales : 3 # below this, no average is shown
expiry:
enabled : false # remove shops of players who stopped playing
days : 60
warn-days-before : 7
teleport:
enabled : true # click a result in /shopsearch to travel there
tax : # a cut the server keeps from every sale
percent : 0.0 # ships at 0 — turn it on yourself
exempt-permission : "talkshop.tax.exempt"
destination : "void" # void = leaves the economy · account:<name>
warehouse:
enabled : true
max-distance : 16 # how far the warehouse may be from the shop
select-timeout-seconds : 60
- Make sure you have Vault and an economy plugin.
- Drop TalkShop-1.4.jar into your /plugins folder.
- Restart the server (Java 21). Don't use /reload.
- Check the console for TalkShop enabled. and you're done.
Coming from another shop plugin?
If you were running ChestShopIK, TalkShop finds its database on first start and imports every shop automatically — owner, item and prices intact. Your old folder is left untouched.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Licence & Terms
TalkShop is free, but it is not public domain. It remains the work of infinity3113.
You MAY:
- Use it on any server or network, public or private, with no player limit.
- Use it on a server that charges its players (ranks, donations, shops). What you may not charge for is the plugin itself.
- Edit the configuration and language files however you like.
- Translate the language files and share those translations.
- Re-upload or mirror the plugin on any site, marketplace, Discord, forum or file host. Please link to this page instead.
- Sell it, or include it in any paid package, bundle, "plugin pack", server setup or hosting offer.
- Decompile, deobfuscate, reverse-engineer or republish its source code.
- Remove or alter the author credits, the plugin name or the licence notice.
- Claim authorship of it, or present a modified copy as your own work.
Provided "as is", without warranty of any kind. The author is not liable for any damage, downtime or data loss arising from its use.
Full terms: infinity3113.mc-paradise.com/plugins/terminos.html
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
More plugins by infinity3113
https://infinity3113.mc-paradise.com/plugins
Minecraft 1.21+ · Requires Java 21 · Spigot & Paper · Needs Vault + an economy · By infinity3113
Quick facts
- Edition: Minecraft Java
- File type: .jar
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Spigot — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.
TalkShop | Chest Shops With No Signs — Just Talk [1.21+] is a free Minecraft Java mod. Downloaded 53 times (via Spigot). Download it and open it directly in the game.