Getting Started

Requirements

  • Java 21 or higher
  • Paper 1.21.1+ (or Folia)
  • XCore (required — install it first)

Installation

  1. Make sure XCore is installed and running on your server.
  2. Download XAuctionHouse from BuiltByBit.
  3. Place the .jar file in /plugins/XCore/addons/.
  4. Restart your server — do not use /reload.
  5. XAuctionHouse will automatically connect to the database configured in XCore.
  6. Configure the plugin in /plugins/XCore/addons/XAuctionHouse/config.yml.

How Auctions Work

XAuctionHouse supports two listing types:

Fixed Price (Buy Now)

The seller sets a price, and any buyer can instantly purchase the item.

Timed Auction

  1. Seller runs /ah auction <starting_bid> with item in hand.
  2. Item appears in the auction house with an [AUCTION] tag.
  3. Buyers click the item to open the bid amount selector with configurable increments.
  4. Each bid must exceed the current bid by the configured increment (tier-based).
  5. Outbid players are automatically refunded.
  6. Snipe protection: a bid placed near the end extends the auction duration.
  7. When the auction ends:
    • With bids: highest bidder receives the item directly if online with inventory space, otherwise stored in My Purchases for claiming. Seller receives payment (minus tax).
    • No bids: item returned to seller or marked as expired.

Smart Delivery & My Purchases

XAuctionHouse uses a smart delivery system for purchased items:

  • Direct buy: if the buyer has inventory space, the item is delivered instantly. If the inventory is full, the purchase still goes through and the item is stored in My Purchases.
  • Auction win: if the winner is online with inventory space, the item is delivered directly. If their inventory is full, they receive a message and the item goes to My Purchases. If they are offline, the item waits in My Purchases.
  • My Purchases tab: accessible from the my_items GUI, it lists all unclaimed bought items with seller, price, and date info. Players click the claim button to retrieve items.
  • Login notification: when a player logs in, they are notified of the number of items waiting to be claimed.

This means a full inventory never blocks a purchase — the item is always stored safely until claimed.