This version is a version based off the original AuctionHouse updated to versions 1.20.5+. I have removed the dependency for NMS that made the original version locked to 1.20.4. This version is a replacement for AuctionHouse on newer server versions.
The original AuctionHouse plugin can be found here. Thanks to
klugemonkey for making the original version
Thanks to
Moloch17 for helping fix some bugs.
Auction House Rewrite 1.0.8 for Spigot 1.20.5+
Overview: AuctionHouse allows players to list items for sale on an auction house accessible with the /ah command. The plugin is new code and only shares a similar look and feel as the inactive plugin resource AuctionHouse.
Features:
FREE!
Sell items in the auction house
List server items in the auction house (one-time or unlimited)
View items matching a search filter based on name, type, lore, enchants, or seller
Sort chronologically or by price
Show items you are selling
Cancel items
Collect cancelled/expired items
Drop unclaimed items at player's feet
Automatically clean up abandoned items
Show and clear recently sold items
Hover over item to show time remaining and enchants
Charge a flat and/or percentage based fee for listing an item (with confirmation menu)
Tax sellers a percentage of revenue for each sale with cap
Set min and max prices
Restrict items by name, type, lore, enchants, damage and unbreakable flag
Restrict wildcard items/blocks by omitting the item type and specifying lore, or enchants (can ban selling soulbound and cursed items)
Restrict item names using Regex with regex:<expr>
Restrict items based on custom_model_data
Optional Back/Exit button calls a command to return to another menu
Click on a special sign to open the auction house
Click on certain named block entities to open the auction house (chests, shulker boxes, dispensers, droppers, hoppers, furnaces, enchanting tables, brewing stands)
Click on custom named entities to open the auction house
Console command support for custom menu and NPC plugins
Internationalization Support
Customize messages, button materials and sounds
Support for HeadDatabase heads as buttons with hdb:<id>
Support for custom skull textures as buttons with texture:<base64 data>
Supports player head for the player listings button with auctionhouse player_head
Logging all transactions to separate log file
Announce listings to all players
Discord integration
Rewriting of String UUIDs in NBT (Seller -> Buyer)
Multi-world support with simple world grouping
Set cooldown between listings
Supports Minecraft 1.20.5+
Commands: /ah reload - reloads the auctionhouse configuration /ah - open the auction house /ah show [player] - open the auction house for a player (console only) /ah menu [player] - open the auction house for a player with a back button for exiting (console only) /ah search <filter> - view items matching search filter /ah help - show help for all the commands /ah sell <price> - sell the item you are holding in hand /ah list <price> [count] - list the item as server /ah ulist <price> [count] - list the item as server with unlimited buying /ah selling - view the items you are selling /ah sold - view the items you have sold recently /ah expired - view your expired items to return /ah cancel - cancel all your auctions /ah return - return all your cancelled/expired items
Permissions: auctionhouse.reload - enables reloading the plugin auctionhouse.use - enables /ah command (default: true) auctionhouse.menu - enables /ah menu command auctionhouse.search - enables /ah search command (default: true) auctionhouse.help - enables /ah help command (default: true) auctionhouse.sell - enables /ah sell command (default: true) auctionhouse.list - enables /ah list command auctionhouse.ulist - enables /ah ulist command auctionhouse.selling - enables /ah selling command (default: true) auctionhouse.sold - enables /ah sold command (default: true) auctionhouse.show - enables /ah show command commandauctionhouse.expired - enables /ah expired command (default: true) auctionhouse.cancel - enables /ah cancel command (default: true) auctionhouse.return - enables /ah return command (default: true) auctionhouse.cancel.others - enables cancelling other's auctions auctionhouse.trigger.block - enables block triggers for menu auctionhouse.trigger.entity - enables entity triggers for menu auctionhouse.trigger.sign - enables sign triggers for menu auctionhouse.auctions.# - sets maximum listings *Note: the plugin will take the maximum set value of the setting in the config.yml, permissions and meta.
Meta: auctions - sets the number of auctions a player can list To use meta, you need to have a compatible permissions plugin that supports setting and removal of meta such as PermissionsEx or LuckPerms.
For PermissionsEx use: /pex user <user> set auctions <value> /pex group <group> set auctions <value> For LuckPerms use: /lp user <user> meta set auctions <value> /lp group <group> meta set auctions <value> For GroupManager use: /manuaddv <user> auctions <value> /mangaddv <group> auctions <value>
DiscordSRV Support: This plugin currently supports DiscordSRV 1.25.1 integration. Make sure you have the latest plugin. To configure for DiscordSRV, you need to set discord: true in the config.yml and set the discord_channel: 'auctionhouse', where auctionhouse represents the in-game channel name you will configured in DiscordSRV's config.yml.
Usually this can be achieved by adding an additional entry into the Channels: section of DiscordSRV's config.yml using the same numeric channel as the global one. It might look something like the following with the actual number matching what is given in Discord.
Code (YAML):
# Channel links from game to Discord # syntax is Channels: {"in-game channel name": "numerical channel ID from Discord", "another in-game channel name": "another numerical channel ID from Discord"} # The first channel pair specified in this config option will be the "main" channel, used for sending player joins/quits/deaths/achievements/etc # Channels: {"global": "123456789012345678",
"auctionhouse": "123456789012345678"}
Known Issues:
There is no support for drag-and-drop of items.
There is no external database support - it uses SQLite.
Users should supply localized translation files
Per user maximum listings are not supported by all permissions plugins, and may require additional configuration
Dependencies:
Vault (version 1.7.1+)
An appropriate Economy Plugin
An appropriate Permissions Plugin
Terms of Service:
The plugin is provided AS-IS.
Please report all issues by starting a conversation. If you post in the discussion forum, it may get overlooked as we are getting more discussion now.
Disclaimer: This plugin currently supports Spigot version 1.20.5+. Features may break if used with older versions of Spigot than intended.