Shop
The 752-item server shop — buy and sell blocks, gear, food, and specials on the Framed UI.
The server shop is Imperium's centralised marketplace: a 752-item catalog of blocks, gear, food, and specials loaded from shop.yml at startup, so the catalog can be tuned live without a plugin rebuild. Buy what you need and sell surplus materials back for Denarius. The shop is also one of the few systems with a fully native Bedrock form-based UI - players on phones and consoles get a working menu, not a Java-only inventory.
Categories
The catalog is two-level: six groups (the tabs you see when you open /shop), each bundling several dozen named categories (Stone & Bricks, Wood, Glass, Banners, Redstone, PVP, Food, and so on):
| Group (tab) | Icon | What it sells |
|---|---|---|
| Building | Bricks | Stone & bricks, earth, and wood - every building block family. |
| Colors | Cyan Concrete | Wool, concrete, terracotta, and all 16 stained glass colors. |
| Nature | Cherry Sapling | Plants, farming, and ocean blocks - flowers, crops, coral, kelp. |
| Decor | Item Frame | Furniture, beds, lighting, banners, and heads. |
| Tech | Redstone | Redstone components, transport (rails, boats), and storage. |
| Combat | Diamond Sword | PVP gear, food, and special items (totems, elytra, ender pearls). |
Run /shop shops any time to list the live categories on your server - that's the authoritative list, since admins can extend it. /shop open <category> jumps straight to a shelf (for example /shop open stone).
Buying Items
Every item carries a buy_price in Denarius (the code also supports optional token_price and crystal_price for Auctoritas and Civitas shelves - when one is set, that currency is charged instead). The live catalog is priced in Denarius, so in practice you pay cash.
- Open a group from
/shop, or a category directly with/shop open <category>. - Click an item to buy one; shift-click (bulk) buys a stack.
- The cost is withdrawn from the right currency and the item is dropped into your inventory.
- If your inventory is full the buy is refused - clear some space first.
Bought items are routed through the ItemFactory with an anti-dupe serial stamp, exactly like crate and auction items. That means shop gear is tracked across trades, vaults, and the auction house - no dupes, no exploits.
Selling Items
If an item has a sell_price greater than zero, you can sell it back to the shop for Denarius. The catalog's default is a 40% sell-back of the buy price, with a few faucet exceptions that sell for zero - Clay Balls, Sticks, Tripwire, and Arrows - so freely bought junk can never be minted back into money. The shop counts how many of that material you have in your storage slots only (slots 0-35), never armor or offhand - a hardened fix that closes a classic gold-armor money exploit. You're paid sell_price × amount × sellMult and the items are removed from your inventory.
Selling is handy for crafted surplus and bulk blocks; for your mined Sarcina contents,/sellall is usually faster.
Dynamic Pricing (Optional)
Categories can opt into dynamic pricing - demand-driven price drift driven by a DynamicShopPricing collaborator. When enabled for a category, every buy pushes the price up a hair and every sell pushes it down, with pressure decaying back to baseline over time. The knobs live in shop.yml under dynamic_pricing:
| Knob | Default | What it controls |
|---|---|---|
| ceiling | 1.3 | Maximum buy-price multiplier (demand pushes up to +30%). |
| floor | 0.8 | Minimum buy-price multiplier (oversupply drops to -20%). |
| sell_floor | 0.7 | Minimum sell-price multiplier the shop will pay. |
| step_size | 0.01 | How far the multiplier moves per pressure step. |
| pressure_per_step | 50.0 | Items bought/sold per 1% price step. |
| decay_per_tick | 5.0 | Pressure that bleeds off each tick back toward baseline. |
Dynamic pricing is off by default and only applies to items priced in Denarius - token and crystal prices are flat. The ceiling and floor clamp how far the price can swing, so a sudden rush can't make an item absurdly expensive or worthless. Use /shop refresh (admin) to reload the knobs without a restart.
The Framed UI (Java & Bedrock)
The shop renders on the FramedUIScreen standard - one tabbed wireframe window whose chrome is shared with the Aureus Emporium - and the underlying UIScreen framework detects whether a player is on Java or Bedrock and routes them to the right renderer. Java players see the familiar chest inventory; Bedrock players get a Floodgate form with the same items, prices, and buy/sell actions. There's no separate command or setup - Geyser players can just type /shop and go.
This replaced an older flow that locked Bedrock players out of the shop entirely. If you're on a phone or console and the shop ever feels broken, make sure you're on the latest Geyser/Floodgate build - the form UI depends on it.
Permissions
imperiummc.shop.access- required to open any shop (default: true).imperiummc.shop.admin- required for/shop refresh(default: op).
Without imperiummc.shop.access the /shop open path refuses with a "No shop access permission" error. Most players have this by default; it exists so servers can restrict the shop to specific ranks if they choose.
Command Reference
| Command | What it does |
|---|---|
/shop | Open the shop main menu - browse groups and categories. |
/shop open <category> | Open a specific shop category directly (e.g. /shop open stone). |
/shop shops | List every available shop category (aliases: list, categories). |
/shop help | Show the in-game shop command reference (aliases: ?, commands, guide). |
/shop info | Print shop feature summary (alias: about). |
/shop refresh | Admin: hot-reload shop.yml and dynamic pricing (alias: reload). |
Tab-completion is full-featured: the first argument offers every subcommand plus aliases plus category names, and /shop open <tab> lists the live categories.
Tips
- Watch the prices. In dynamic categories, prices drift with demand - buy early after a server restart when pressure has decayed.
- Sell in bulk. Shift-click to buy or sell a whole stack in one transaction.
- Check the sell-back exceptions. Clay Balls, Sticks, Tripwire, and Arrows sell for zero - buy them to use, never to resell.
- Open shelves directly.
/shop open stoneis faster than clicking through the tabs - tab-complete shows every live category. - Don't sell with armor on. The sell counter only looks at storage slots, so accidentally wearing a sellable item just means it won't be counted - no harm, but no payout either.
- Refresh after edits. If you're staff and just edited
shop.yml, run/shop refresh- no restart needed.
The shop is the simplest way to convert currencies into useful items and the cleanest way to liquidate mined blocks for Denarius. Pair it with /sellall for the Sarcina and the Auction House for high-value gear, and you have a complete economy loop.