EzAuction Menu-first marketplace with listings, buy orders, and async safety nets Paper/Purpur 1.21+ • Vault economy • YAML fallback + MySQL/HikariCP • English/Dutch/Spanish/Chinese menus included • PlaceholderAPI stats Requires Vault and a compatible economy plugin to process currency.
Why EzAuction?
Menu-first trading – Paginated browsers, sell/order editors, and confirmation popups keep every transaction guided and click-friendly.
Listings + buy orders – Run timed sales, reserve balance for buy requests, and fulfill either side straight from the GUI or command flow.
Async persistence & fallbacks – Listings and history write through dedicated executors, automatically falling back to YAML storage if MySQL is unreachable.
Offline-safe returns – Expired or undeliverable items go to a claimable stash with login reminders and `/auction claim` recovery.
Rank-aware limits – Plug in a custom `AuctionListingLimitResolver` service to scale slot caps with ranks, islands, or progression data.
Smart value overlays – Surface configured price hints or pipe in EzShops buy/sell estimates directly into menu lore.
Feature Highlights
Configurable menus & translations – Override browser/confirm layouts, filler glass, and button text across the bundled English, Dutch, Spanish, and Chinese menu files.
Flexible storage – Start on lightweight YAML or flip to production-ready MySQL with SSL flags, table prefixes, and shaded HikariCP pooling.
Asynchronous history – Background save queues batch player history writes to keep gameplay responsive, even during heavy auction traffic.
Player protections – Deposit refunds, balance checks, expiry sweeps, and inventory-aware delivery prevent dupes and lost currency.
PlaceholderAPI hooks – Drop `%ezauction_*%` placeholders into scoreboards or holograms to surface active listings, orders, limits, or pending returns.
Integration-ready API – Register Bukkit services to override listing caps or provide custom value providers without forking the plugin.
Quick Start
Upload `EzAuction.jar`, restart your Paper or Purpur server, and confirm Vault plus an economy plugin are active.
Edit plugins/EzAuction/auction.yml for pricing rules, durations, and GUI slots, adjust auction-storage.yml for YAML/MySQL persistence, and update auction-values.yml or messages/menu-interactions_*.yml as needed.
Choose between YAML or MySQL storage, then grant players ezauction.auction (and optional sell/order/history nodes) so they can browse and trade.
Encourage `/auction history` so buyers and sellers can audit their latest activity right from chat.
Commands & Permissions
Command
Description
Permission
/auction
Open the auction browser, claim items, and cancel listings.
ezauction.auction
/auction sell <price> [duration]
List the held item instantly or open the sell GUI.
ezauction.auction.sell
/auction order <price> <amount> [duration]
Create a buy order with reserved funds.
ezauction.auction.order
/auction cancel [id]
Review and cancel active listings or buy orders.
ezauction.auction
/auction history [buy|sell]
Show the latest transactions for each category.
ezauction.auction.history
/auction claim
Withdraw stored return items.
ezauction.auction
Setup Guide
Requirements
Requirement
Notes
Java 17+
Matches the Paper 1.21.4 API target used by EzAuction.
Paper or Purpur 1.21+
The plugin relies on modern Paper server APIs.
Vault
Provides the economy bridge for deposits, buy orders, and payouts.
Economy plugin
Install any Vault-compatible provider such as EssentialsX Economy or CMI.
Optional: EzShops
Unlock live value overlays via values.mode = ezshops-buy or ezshops-sell.
Optional: Custom limit resolver
Expose AuctionListingLimitResolver as a Bukkit service to scale listing caps.
Optional: Menu localisation overrides
Duplicate the bundled `_nl`, `_es`, or `_zh` menu files to keep translations in sync with your branding.
Configuration Overview
Storage selection – Toggle storage.type between yaml and mysql; MySQL connections support SSL flags and pool tuning.
Menus – menu.browser and menu.confirm control inventory sizes, filler panes, and navigation slots across all language variants.
Sell & order editors – Configure default price suggestions and click adjustments for both listing and buy-order editors.
This companion plugin registers before EzAuction enables and adds any configured bonus slots per player UUID on top of EzAuction's base limit. Update the UUID keys or compute the bonus however you like to reflect your network's progression rules.