InfiniteShops · Features
Black Market
Documents InfiniteShops 3.2.1 · mirrored from the product wiki, updated 2026-06-24 · GitBook version
Create timed auction events with exclusive deals and bidding systems!
Overview
The Black Market is a special shop system that offers limited-time items with optional auction mechanics. Items rotate on a timer, creating urgency and excitement for players.
Configuration Files
The Black Market uses two configuration files:
| File | Purpose |
|---|---|
blackmarket/blackmarket.yml |
Main settings and items |
blackmarket/blackmarket-auction.yml |
Auction-specific settings |
Main Configuration
blackmarket/blackmarket.yml
# Black Market Configuration
# Automatically open GUI when event starts
auto_open_gui: true
# Broadcast purchases to server
broadcast_purchases: true
# Skip to next item when current is purchased
skip_on_purchase: false
# How long each item is available (seconds)
item_duration: 30
# Number of items per event
items_per_event: 5
# Auction Mode Settings
auction_mode:
enabled: false
starting_price: 1000.0
bid_increase_percent: 5.0
bid_reset_time: 5 # seconds
one_item_per_server: true
limit_purchases: false
# Messages
messages:
event_start: "&6&l[BLACK MARKET] &eThe Black Market has opened!"
event_end: "&6&l[BLACK MARKET] &cThe Black Market has closed."
no_event: "&cThe Black Market is not open right now."
already_purchased: "&cYou have already purchased from this Black Market!"
insufficient_funds: "&cYou don't have enough money for this item!"
# Items Configuration
items:
special_sword:
type: ITEM
price: 5000.0
weight: 1
max_stock: 1
use_auction_price: true
item:
material: DIAMOND_SWORD
amount: 1
name: "&6&lBlack Market Sword"
lore:
- "&7A mysterious sword from the"
- "&7depths of the black market."
- ""
- "&6Special Edition"
enchants:
1:
enchant: SHARPNESS
level: 5
2:
enchant: UNBREAKING
level: 3
mystery_command:
type: COMMAND
price: 3000.0
weight: 2
commands:
- "give %player% diamond 64"
- "msg %player% &aYou received a mystery reward!"
display_item:
material: ENDER_CHEST
name: "&d&lMystery Box"
lore:
- "&7What could be inside?"
- "&7Only one way to find out!"
rare_shop_item:
type: SHOP_ITEM
price: 10000.0
weight: 1
shop_category: "your_category_id"
shop_item: "your_item_id"
display_item:
material: NETHER_STAR
name: "&b&lRare Shop Item"
lore:
- "&7Normally unavailable item"
- "&7from the shop!"
Item Types
| Type | Description |
|---|---|
ITEM |
Physical item given to player |
COMMAND |
Executes commands on purchase |
SHOP_ITEM |
References an item from another shop |
ITEM Type
items:
legendary_armor:
type: ITEM
price: 25000.0
weight: 1
max_stock: 1
use_auction_price: true
item:
material: NETHERITE_CHESTPLATE
amount: 1
name: "&5&lShadow Armor"
lore:
- "&7Forged in darkness"
enchants:
1:
enchant: PROTECTION
level: 4
2:
enchant: UNBREAKING
level: 3
COMMAND Type
items:
vip_package:
type: COMMAND
price: 50000.0
weight: 1
commands:
- "lp user %player% parent set vip"
- "eco give %player% 10000"
- "broadcast &6%player% &epurchased a VIP package!"
display_item:
material: NETHER_STAR
name: "&6&lVIP Package"
lore:
- "&7Includes:"
- "&a• VIP Rank"
- "&a• $10,000 bonus"
SHOP_ITEM Type
items:
shop_exclusive:
type: SHOP_ITEM
price: 15000.0
weight: 2
shop_category: "tools"
shop_item: "enchanted_pickaxe1"
display_item:
material: DIAMOND_PICKAXE
name: "&b&lExclusive Tool"
Weight System
Weights determine how often items appear:
items:
common_item:
weight: 5 # More likely to appear
rare_item:
weight: 1 # Less likely to appear
Higher weight = more frequent appearance in the rotation.
Auction Configuration
blackmarket/blackmarket-auction.yml
# Auction Settings
auction:
enabled: true
starting_price: 100.0
minimum_increment: 10.0
increment_percent: 5.0
use_percentage_increment: true
bid_reset_time: 5 # seconds added when bid placed
minimum_bidders: 2
require_minimum_bidders: false
one_item_per_server: true
limit_wins_per_event: true
max_wins_per_player: 3
allow_auto_bid: false
max_auto_bid_amount: 100000.0
# Anti-Snipe Protection
anti_snipe:
enabled: true
threshold_seconds: 10
extension_seconds: 5
# Reserve Prices (minimum selling price)
reserve_price:
enabled: false
items:
special_sword: 10000.0
mystery_command: 5000.0
rare_shop_item: 20000.0
# Bidding Requirements
requirements:
require_permission: false
bid_permission: "infiniteshops.blackmarket.bid"
minimum_balance: 1000.0
show_bidder_names: true
anonymous_bidding: false
# Notifications
notifications:
notify_on_outbid: true
notify_on_new_bid: false
sound_on_bid: true
sound_on_win: true
bid_sound: "ENTITY_EXPERIENCE_ORB_PICKUP"
win_sound: "UI_TOAST_CHALLENGE_COMPLETE"
# Visual Effects
visual_effects:
particles_enabled: true
firework_on_win: true
glowing_item_display: true
animated_timer: true
# Messages
messages:
bid_success: "&aYou have successfully bid &e$%amount%&a!"
bid_fail: "&cYour bid of &e$%amount% &cfailed: %reason%"
outbid: "&c%player% has outbid you with &e$%amount%&c!"
win: "&a&lCongratulations! You won %item% for &e$%amount%&a!"
lose: "&cYou did not win this auction. Better luck next time!"
reserve_not_met: "&cThe reserve price was not met. Item will not be sold."
minimum_bidders_not_met: "&cMinimum bidders requirement not met."
auction_start: "&6&lAUCTION: &e%item% &6starting at &e$%price%"
auction_end: "&6&lAUCTION ENDED: &e%item% &6sold to &e%winner% &6for &e$%amount%"
last_call: "&c&lLAST CALL! &e%seconds%s remaining!"
going_once: "&6Going once for &e$%amount%&6..."
going_twice: "&6Going twice for &e$%amount%&6..."
sold: "&a&lSOLD! &6to &e%player% &6for &e$%amount%&6!"
Commands
| Command | Description |
|---|---|
/blackmarket |
Open the Black Market GUI |
/blackmarket start |
Start a Black Market event |
/blackmarket stop |
End the current event |
/blackmarket reload |
Reload configuration |
/blackmarket status |
View current event status |
/blackmarket toggle <setting> |
Toggle settings |
Toggle Options
/blackmarket toggle auction - Toggle auction mode
/blackmarket toggle broadcast - Toggle purchase broadcasts
/blackmarket toggle autoopen - Toggle auto-open GUI
Permissions
| Permission | Description | Default |
|---|---|---|
infiniteshops.blackmarket.use |
Access the Black Market | true |
infiniteshops.blackmarket.admin |
Admin commands | op |
infiniteshops.blackmarket.bid |
Place bids in auctions | true |
infiniteshops.blackmarket.* |
All Black Market permissions | op |
Placeholders
Use these placeholders in messages:
| Placeholder | Description |
|---|---|
%player% |
Player name |
%amount% |
Bid/price amount |
%item% |
Item name |
%winner% |
Auction winner |
%price% |
Starting price |
%seconds% |
Time remaining |
%currentBid% |
Current highest bid |
%totalBids% |
Total number of bids |
%uniqueBids% |
Number of unique bidders |
Event Flow
Standard Mode (Non-Auction)
- Event starts → Items selected from pool based on weights
- Each item displays for
item_durationseconds - Players can purchase at fixed price
- If
skip_on_purchase: true, moves to next item on purchase - Event ends after all items shown
Auction Mode
- Event starts → First item put up for auction
- Players bid, each bid extends timer by
bid_reset_time - Anti-snipe adds time if bid in final seconds
- Highest bidder wins when timer expires
- Next item begins auction
- Event ends after all items auctioned
Tips
- Balance item weights - Ensure variety in each event
- Set appropriate prices - Consider server economy
- Use anti-snipe - Prevents last-second sniping in auctions
- Limit wins per player - Gives more players a chance
- Broadcast purchases - Creates FOMO and excitement
- Test item configurations - Verify all items work correctly
Related Features
- Daily Shop - Another rotating shop system
- Currencies - Economy integration
- Multipliers - Price modifiers