
AI-generated branding artwork; this is not an in-game screenshot.
UniversalShop
A configurable survival shop and player marketplace by hash014. Runs on the Java server; players need no client mod or resource pack.
Features
- In-game catalog editor: create products from held items, retaining names, lore, enchantments and damage. Private drafts are reviewed before publication.
- Chest menus with categories, search, custom/maximum quantities, purchase confirmation and bulk-sale review.
- Custom chest layouts: configure 1–6 rows, ordered content slots, button positions, titles, backgrounds and passive decorations in
menus.yml. Controls retain their actions; pagination follows content capacity. Invalid layouts reject reloads and preserve the previous active layout.
- Internal economy without dependencies, or integration with a Vault-compatible provider. EssentialsX Economy has been tested.
- Player marketplace with item escrow, filtering/sorting, listing expiry, safe reclamation and persistent offline sale notices. Vault seller proceeds are collected with
/shop market claim.
- Stock and automatic restocking, daily limits, worlds/permissions, rotating offers and optional dynamic prices.
- Optional schedules, budgets, campaigns, loyalty, sale protection, favorites, recent trades and analytics. Management modules are off by default.
- English/French text packs and player language preferences. Native Bedrock forms through Geyser/Floodgate on a Java backend.
- Durable transaction history, CSV export, plugin backups, diagnostics and manual incident recovery.
Installation
- Stop the server and back up its data.
- Place
UniversalShop-2.1.0.jar in plugins/, replacing the old UniversalShop JAR.
- Start the server and run
/shop. Administrators use /shop admin editor.
- Edit
config.yml, shops.yml, menus.yml and the language files. Apply validated changes with /shop admin reload.
Internal economy needs no dependencies. For an external economy, install Vault plus a Vault-compatible economy provider and set economy: VAULT. Changing economy mode on an existing server requires a planned balance migration; it does not transfer money automatically.
Commands and permissions
/shop
/shop buy stone 16
/shop sell stone 8
/shop sellall
/shop balance
/shop market
/shop market list 16 100
/shop market claim
/shop language fr
/shop admin editor
/shop admin diagnose
/shop admin history 20
/shop admin backup
Players use universalshop.use by default. Administrators use universalshop.admin or granular catalog/stock/history/management permissions. Purchases and sales require confirmation. In Vault mode use the economy provider’s payment command; /shop pay uses internal mode. Default prices are examples and must be balanced against your server’s farms, recipes and other plugins.
Compatibility and testing
One Java 8 bytecode JAR targets Bukkit, Spigot, Paper and API-compatible derivatives. Automated tests boot actual Paper servers across 55 selected releases from 1.7.10 through 26.3, connect two loopback clients, exercise transactions/menu events, and verify persistence after full restarts. Vault/EssentialsX and Geyser/Floodgate have separate integration tests. Use the Java runtime required by your server version.
Paper is directly tested. Spigot/CraftBukkit/Purpur support is based on Bukkit API compatibility, not a separate boot matrix. Folia, Fabric, Forge and native Bedrock Dedicated Server are unsupported. Native Bedrock forms do not use Java chest geometry. Other Vault providers, rendered interfaces, Microsoft authentication and large production loads require deployment-specific validation. Plugin backups do not replace world/playerdata or external economy backups.
Development and license
Substantial code, translations, documentation, publication text and the chest-and-emerald branding illustrations were created with generative AI assistance under the author’s direction. The author tested the 2.0 gameplay locally; automated evidence and source are available for inspection. The plugin requires no AI service at runtime. The logo is branding, not an in-game screenshot.
Author: hash014. License: MIT.
Source and documentation · Report an issue