Commands
Base aliases: /ah, /auctionhouse, /hdv.
Command | Aliases | Permission | Description |
|---|---|---|---|
| — |
| Open the listing menu. |
| — |
| Open another player's listings (also gated by the menu's own requirements). |
| — | — | List the item in your main hand. See below. |
|
| — | Show the weighted average unit price of the item in your main hand. |
| — | — | Open your transaction-history menu (buys & sells, last 250). |
| — |
| Force |
| — |
| Reload |
/ah sell
tag is a free-form trailing argument captured by the command parser; it is not currently consumed by the service and is reserved for future labelling.
The flow validates in this order:
Player is on a server whose group is in
commands-enabled-groups(otherwiseDISABLED_WORLD).Main hand is not empty (
EMPTY_HAND).Price is
1 ≤ price ≤ 1_000_000_000(INVALID_PRICE).Item material isn't blacklisted (
BLACKLISTED_ITEM).Number of currently active listings is below
maximumListings(player)(SELL_FAILED_LISTING_LIMIT).Seller has at least
price * sell-taxPolaris in their balance (SELL_FAILED_INSUFFICIENT_FUNDS).
Then:
Item is removed from the main hand.
The sell tax is withdrawn from the seller via
EconomyService.withdraw.A new
AuctionItemrow is written.ItemUpdatedPacket(uuid)is broadcast on theauctionhouse.itemsexchange so peer servers refresh their caches.The seller receives
SELL_SUCCESS.An
auctionhouse-listedevent is emitted to AstralAnalytics.
If any step after the inventory removal fails, the tax is refunded and the item is not returned to the inventory automatically — the row may still have been written; the cleanup task and the operator are expected to resolve the situation.
See Selling, Buying & Claiming for the full flow including the buy and claim paths.
/ah average
Reads the cached weighted unit price for the held item's itemKey. Returns:
Outcome | Message |
|---|---|
Item has no |
|
|
|
Otherwise |
|
See Averaging for how the cache is built and refreshed.
/ah transactions
Opens the transactions menu populated by TransactionRepository.findByPlayerId(player.uuid) — up to 250 rows where the player is either buyer or seller, ordered by created_at descending. Each row resolves the transaction placeholder namespace (see Developer API).
/ah refresh and /ah reload
/ah refreshrunsAverageService.refetch()which:Recomputes every weighted average from the
transactionstable with the standard query (90-day window, minimum 3 sales).Pushes the results to the
auctionhouse:averageRedis hash.Invalidates the local Caffeine cache.
Use it after a manual database edit or when you suspect the periodic refresh missed.
/ah reloadruns the full configuration reload (AHConfiguration,CategoriesConfiguration,AHMessages, all menu YAMLs). Running listings keep their state — only the YAML is reread.