Paper 1.21.11 auction house plugin with a DonutSMP-style market GUI, Vault economy support, listing expiration, and claim flow.
/ahmarket GUI with paging/ah sell <price>with suffix support like1k,2.5m, and1b/ah search <name>item search- buy confirmation UI
- seller-side removal for owned listings
- expired listing storage with
/ah expiredand/ah claim - YAML-backed persistence
- Vault economy integration
- Paper
1.21.11 - Java
21 - Vault
- an economy provider such as EssentialsX Economy or CMI
Important:
- the plugin depends on a working Vault economy provider at startup
- if Vault is missing or no economy provider is registered, the plugin disables itself
Recommended first-time setup:
- Install
Vault. - Install one economy plugin such as
EssentialsX EconomyorCMI. - Build the plugin jar with Maven.
- Copy
target/donut-auction-house-1.0.0.jarintoplugins/. - Start the server and confirm the plugin stays enabled.
- Run
/ahin-game to verify the GUI opens correctly. - Test a full flow:
- list an item with
/ah sell <price> - buy it from another account
- check expired storage with
/ah expiredand/ah claim
- list an item with
If the plugin disables itself during startup, check Vault first and confirm that your economy provider is loaded before AuctionHouse.
/ah/ah <page>/ah sell <price>/ah search <name>/ah expired/ah claim/ah reload
Aliases:
/auctionhouse/auction
auctionhouse.use- Open the auction house GUI and basic player usage.
auctionhouse.sell- Create listings with
/ah sell <price>.
- Create listings with
auctionhouse.buy- Buy items from the GUI.
auctionhouse.unlimited- Bypass the normal listing cap.
auctionhouse.admin- Reload the plugin and use admin-level actions.
Compatibility aliases are also included:
donutauction.usedonutauction.selldonutauction.buydonutauction.unlimiteddonutauction.admin
Recommended server-side setup:
- Install
Vault. - Install one supported economy plugin, for example
EssentialsX EconomyorCMI. - Start the server and confirm the economy plugin is loaded before AuctionHouse.
- Add the AuctionHouse jar to
plugins/. - Start the server again and verify the plugin stays enabled.
What the plugin uses Vault for:
- checking whether the buyer has enough balance
- withdrawing money on purchase
- depositing money to the seller
- refunding the buyer if seller payout fails
Main settings live in src/main/resources/config.yml.
currency-symbol- Symbol shown in GUI text and messages. Default:
$
- Symbol shown in GUI text and messages. Default:
currency-format- Java number format pattern used for prices. Default:
#,##0.##
- Java number format pattern used for prices. Default:
max-listings-per-player- Maximum active listings per player unless they have
auctionhouse.unlimited. Default:20
- Maximum active listings per player unless they have
min-price- Lowest allowed sell price. Default:
1
- Lowest allowed sell price. Default:
max-price- Highest allowed sell price. Default:
1000000000
- Highest allowed sell price. Default:
auction-duration- Listing lifetime. Supports
s,m,h, andd. Default:48h
- Listing lifetime. Supports
files.listings-file- File used for active listings. Default:
auctions.yml
- File used for active listings. Default:
files.expired-file- File used for expired listings waiting to be claimed. Default:
expired.yml
- File used for expired listings waiting to be claimed. Default:
Runtime data is stored in:
auctions.ymlexpired.yml
- Build the plugin with Maven.
- Copy
target/donut-auction-house-1.0.0.jarinto your serverplugins/folder. - Install Vault and an economy provider.
- Start the server once so the plugin can generate its config and data files.
- Adjust the generated config if needed.
- Reload the plugin with
/ah reloador restart the server.
From the project root:
mvn clean packageOutput:
target/donut-auction-house-1.0.0.jar
- pom.xml
- Maven artifact metadata, dependency declarations, Java toolchain target, and repository information.
- src/main/resources/plugin.yml
- Bukkit command, permission, and plugin metadata used by Paper at runtime.
src/main/java/bg/nikol/auctionhouse/- Core plugin logic, command handling, GUI flow, persistence, and listeners.
src/main/resources/- Plugin metadata and default configuration.
pom.xml- Maven build configuration with Paper and VaultAPI as provided dependencies.
The repo is source-only. Built .jar files, Maven output, and portable toolchains are intentionally excluded from version control.
MIT