Auction House Channels
Auction House Channels
Section titled “Auction House Channels”Channels are the building block of Bazaar’s Auction House. Each one is an independent market lane with its own command, permission, currency, fee schedule, GUI IDs, and item filter.
Channels live in config/bazaar/channels.conf.
Minimum Channel
Section titled “Minimum Channel”channels = [ { id = "main" name = "Auction House" icon = "minecraft:chest" command = "ah" permission = "bazaar.ah" currency = "default"
gui { browse = "ah_main" detail = "ah_detail" sell = "ah_sell" }
fees = null
itemFilter { mode = "none" rules = [] } }]The bundled default channel uses id = "main" and command = "ah".
Full Channel
Section titled “Full Channel”{ id = "premium" name = "Premium Market" icon = "minecraft:netherite_ingot" command = "premium" permission = "bazaar.ah.premium" currency = "bazaar:prisms"
gui { browse = "ah_main_premium" detail = "ah_detail_premium" sell = "ah_sell_premium" }
fees { listingFeeFlat = 0 listingFeePercent = 1.5 transactionTaxPercent = 4.0 }
itemFilter { mode = "whitelist" rules = [ { type = "id", value = "minecraft:netherite_*" } { type = "tag", value = "#minecraft:tools" } { type = "component" component = "minecraft:custom_model_data" value = "12345" match = "exact" } ] }}Fields
Section titled “Fields”| Field | Type | Purpose |
|---|---|---|
id | string | Stable internal ID used by Bazaar storage and routing. |
name | string | Human-facing label shown in GUIs and the dashboard. |
icon | Minecraft item ID | Icon shown in channel pickers. |
command | string | Slash command players run. Must be unique across channels. |
permission | permission node | Base permission. Bazaar derives .browse and .sell from it. See Permissions. |
currency | string | Impactor currency ID, or default for Impactor’s primary currency. |
gui.browse / gui.detail / gui.sell | string | GUI IDs Bazaar resolves against the extracted files under config/bazaar/gui/. |
fees | object or null | Channel-specific override for fees.conf. Use null to inherit the global defaults. |
itemFilter | object | Whitelist, blacklist, or accept-all rule set for items in this channel. |
Item Filters
Section titled “Item Filters”Channels reuse Bazaar’s shared item-filter structure.
Rule types:
| Type | Match |
|---|---|
id | Exact item ID or * wildcard pattern. |
tag | Item tag such as #minecraft:tools. |
component | String comparison against a data component using component, value, and match. |
Modes:
| Mode | Behaviour |
|---|---|
none | Accept any item. |
whitelist | Allow the item if any rule matches. |
blacklist | Reject the item if any rule matches. |
Currency Resolution
Section titled “Currency Resolution”The channel’s currency field is an Impactor currency ID. The symbol shown in GUIs and the dashboard comes from that currency’s symbol in config/impactor/economy.conf.
Use currency = "default" to point the channel at Impactor’s primary currency.
Per-Channel GUIs
Section titled “Per-Channel GUIs”To give a channel its own look, copy one of the shipped GUI files under config/bazaar/gui/, change its id, and reference that ID from the channel’s gui block.
Example workflow:
- Copy
ah_main.conftoah_main_premium.conf. - Change the copied file’s
idtoah_main_premium. - Update titles, icons, colors, or layout.
- Set
gui.browse = "ah_main_premium"on the premium channel.
See GUI Customization for the HOCON structure and shipped file set.
Worked Example: Netherite-Only Premium Channel
Section titled “Worked Example: Netherite-Only Premium Channel”channels = [ { id = "main" name = "Auction House" icon = "minecraft:chest" command = "ah" permission = "bazaar.ah" currency = "default" gui { browse = "ah_main" detail = "ah_detail" sell = "ah_sell" } fees = null itemFilter { mode = "blacklist" rules = [{ type = "id", value = "minecraft:netherite_*" }] } }, { id = "premium" name = "Premium Market" icon = "minecraft:netherite_ingot" command = "premium" permission = "bazaar.ah.premium" currency = "bazaar:prisms" gui { browse = "ah_main_premium" detail = "ah_detail_premium" sell = "ah_sell_premium" } fees { listingFeePercent = 5.0 transactionTaxPercent = 10.0 } itemFilter { mode = "whitelist" rules = [{ type = "id", value = "minecraft:netherite_*" }] } }]Netherite gear is kept out of the regular AH and tradeable only in the premium channel, paid for in Prisms, with a stricter fee schedule.