
EzAuction
Menu-first marketplace with listings, buy orders, and async safety nets
Список изменений
New Features
Discord Notifications
EzAuction can now send auction event notifications to Discord via two independent methods — use one or both at the same time.
- Direct webhook (no extra plugins required): set
webhook.enabled: trueindiscord.yml, paste your Discord webhook URL, and choose which events trigger a message (auction_start,auction_end,auction_bid,auction_cancel). Supports rich embeds and custom bot name/avatar. - DiscordSRV channel forwarding: if you run DiscordSRV, set
enabled: trueindiscord.ymland supply the target channel ID. Optionally restrict notifications to players that have a linked Discord account with a required role (role-required,required-role-id).
A new admin command /auctiondiscord test [message] lets you verify Discord is wired up correctly without needing to create a real listing. Requires the ezauction.discord permission.
Improved Sell GUI (in-GUI price and duration selection)
The sell menu now handles price and duration entirely inside the GUI:
- Dedicated price adjustment buttons (set, increase, decrease) keep players inside the inventory screen.
- Duration picker lets players choose from the configured duration options without typing a command.
- A custom input button is still available for players who prefer typing an exact value in chat.
- In-GUI confirm/cancel dialogs for both listings and buy orders replace the previous chat prompts. Players no longer need to respond in chat to confirm a purchase.
Configurable GUI Action Buttons
GUI action buttons (confirm, cancel, adjust price, pick duration, etc.) are now fully driven by the message/layout YAML files. Each button's item, name, lore, and slot can be customised without modifying any code. Language translations apply to these buttons as they do to all other GUI text.
Changes
- Number input shortcuts (
1k,2.5m, etc.) now throwIllegalArgumentExceptionon bad input. Error messages are correctly shown to the player when an unrecognisable price or amount is entered via command. - Tab completion for
/auctionand/liveauctionis now handled per-subcommand, giving context-aware suggestions at each argument position. - Internal storage layer has been refactored to use Repository interfaces. No configuration changes are required, but the refactor lays the groundwork for future storage backends and improves reliability.
Breaking / Migration Notes
- Legacy
messages.ymlfallback removed. If your server was relying on a root-levelmessages.ymlfile (deprecated since v2.0), it will no longer be loaded. All messages must be in the language-specific files undermessages/messages_<lang>.yml,messages/gui-messages_<lang>.yml, etc. The defaults ship correctly — this only affects servers that manually edited the old file. - New
discord.ymlconfiguration file. This file is automatically created on first run with all features disabled (enabled: false,webhook.enabled: false). No action is required unless you want to enable Discord notifications.
