MineAuctions A fast, feature-rich Auction House for Paper 1.8 → 1.21.x with true Multi-Currency and built-in Multi-Server sync (SQL; no Redis).
Clear Product Description MineAuctions is an Auction House plugin designed for both single servers and networks. It focuses on performance, dupe safety, and a smooth player experience. The plugin supports multiple currencies simultaneously (Vault, PlayerPoints, GemsEconomy, CMI, or an internal fallback), and it synchronizes listings and purchases across multiple servers using lightweight SQL messaging—no Redis or message broker required. Everything is configurable, translatable, and designed to work from Minecraft 1.8 up to 1.21.x (features that don’t exist on older versions gracefully disable).
What MineAuctions Offers (Detailed) 1) High Performance & Stability
Async database operations, cached listing pages, and minimal main-thread work.
“Fast navigation” design: page changes, sorting, and refreshing without forced cooldowns.
Optimized search and purchase flow to avoid lag spikes.
2) True Multi-Server Support (No Redis)
Built-in SQL message bus: new listings/purchases/cancellations sync quickly across servers.
Open GUIs refresh with live data network-wide.
Supports MySQL (recommended) or H2 (file mode) for small setups.
3) Multi-Currency System
Players must select a currency when listing an item.
Adapters for Vault, PlayerPoints, GemsEconomy, CMI; plus an internal “Credits” fallback so it works out-of-the-box.
Per-currency display (symbol/format/precision) and PlaceholderAPI balance placeholders.
Currency is stored with the listing to keep prices unambiguous across servers.
4) Intuitive GUIs with Rich Features
/ah main: browse, paginate, filter/sort, and refresh instantly.
Right-Click Preview (where supported): view Shulker/Barrel contents before buying (auto-disabled on versions without these blocks).
History GUI: global or per-player history (configurable) with container previews when available.
Mail GUI: items are safely stored if buyer inventory is full or they’re offline; claim later.
Search Flow: search by item name, lore, material, or seller name via GUI (anvil input or chat prompt).
5) Powerful Search & Sorting
Case-insensitive search over name, lore, material, and seller name.
Sort by Date (newest/oldest), Price (asc/desc), and Currency.
Index-friendly storage to keep searches snappy at scale.
6) Safe, Dupe-Resistant Transactions
Atomic purchase flow: only the first valid buyer succeeds; others get “already sold”.
Inventory checks before/after purchase; rollback + mail fallback to prevent loss/duplication.
Heavily tested against common macro/lag dupes.
7) Auction Limits System
Tiered per-player caps via permissions like mineauctions.limit.5, .10, .20 (highest wins).
Admin override is available and persists.
Players can check remaining slots with /ah limit.
8) Offline Player Support
Sellers get paid even if offline (via supported economy).
Buyers receive items later via /ah mail if inventory is full or they disconnect.
Login notifications keep players informed.
9) Discord Webhooks
Optional notifications for new listings and purchases.
Customizable embed titles/fields/colors; includes server name, item info, price, currency, seller/buyer.
10) Blacklist & Safety Rules
Block by Material, by Name/Lore (regex), or simple NBT-style predicates (e.g., CustomModelData>0 where supported).
Clear feedback explains why an item can’t be listed.
11) Custom Texture Support (1.14+)
Use CustomModelData for GUI icons and special items on modern versions.
Automatic fallbacks on older versions.
12) PlaceholderAPI Integration
%mineauctions_active% – active listings count
%mineauctions_sales_today% – sales today
%mineauctions_player_active% – player’s active listings
%mineauctions_balance_<currencyId>% – player balance in a currency
%mineauctions_recent_sale% – player’s most recent sale
%mineauctions_server% – configured server name
13) Simple, Organized Configuration
Clean YAML with comments and sensible defaults.
Translate or rewrite all messages in messages.yml (full localization).
Toggle features (History GUI, Anvil vs Chat search, Blacklist).
Control page size, SQL sync polling interval, currency display formats, and more.
14) Version Compatibility
Paper/Spigot forks from 1.8 to 1.21.x.
Features requiring newer content (Shulkers 1.11+, Barrels 1.14+, CustomModelData 1.14+) auto-disable on older versions.
No direct NMS; uses safe API calls for smoother updates.
Player Experience (How It Works) Listing an Item
Hold the item and run /ah sell <price> <currency>.
Blacklist checks run; if valid, a listing is created and visible to everyone.
The item is safely stored server-side until sold or cancelled.
Buying an Item
Open /ah, sort/filter/search, and select an item.
Optional preview (shulker/barrel) via right-click on supported versions.
On purchase, MineAuctions checks availability, reserves the item, charges the buyer in the correct currency, pays the seller, and delivers the item (inventory or /ah mail).
Other servers are informed via SQL messaging; GUIs update quickly.
Reviewing History & Mail
/ah history shows global or personal sales history with timestamps, prices, and currencies.
/ah mail stores items until the player claims them.