Engagement Features
Tools that make bot auction activity feel dynamic, exciting, and worth paying attention to.
Flash Salesโ
A flash sale is a randomly triggered event where bot listings for that run are generated at a discounted price for a shorter listing duration.
| Setting | Description |
|---|---|
engagement.flash-sale.chance | Probability (0โ1) that a flash sale triggers during a generation run |
engagement.flash-sale.discount | Discount percentage applied to all listing prices during the sale |
engagement.flash-sale.duration | How long flash sale listings stay active (minutes) โ shorter than normal |
engagement.flash-sale.announce | When true, a server-wide broadcast fires at the start of the flash sale |
How It Worksโ
On each generation run, a random roll is made against flash-sale.chance. If it triggers:
- All listings for that run are priced with the discount applied
- Listing durations are set to the flash sale duration (shorter urgency window)
- If
announceistrue, all players receive a broadcast notification
Flash sales create urgency and encourage players to check the auction house regularly.
Featured Listingsโ
Any bot listing has a configurable chance of being marked as "featured" in the auction house GUI, making it stand out from regular listings.
| Setting | Description |
|---|---|
engagement.featured-chance | Probability (0โ1) that any generated listing is marked featured |
Featured listings appear with a visual distinction in the auction GUI, drawing player attention to specific bot items.
Rare Item Announcementsโ
When the bot generates a listing from a pool designated as "rare," a server-wide broadcast is sent to alert all players.
| Setting | Description |
|---|---|
engagement.announce-rare | Enable/disable rare item announcements |
engagement.rare-pools | List of pool names that trigger announcements (e.g. rare, enchanted) |
This creates excitement and gives players a reason to check the auction house when rare items appear.
Named Market Eventsโ
Market events are named, scheduled time windows that temporarily change how the bot behaves โ increasing listing volume, adjusting prices, and optionally broadcasting an announcement.
| Setting | Description |
|---|---|
event-schedule.<name>.days | Days of the week the event runs (e.g. SATURDAY, SUNDAY) |
event-schedule.<name>.start | Start time in HH:MM format |
event-schedule.<name>.end | End time in HH:MM format |
event-schedule.<name>.bonus-multiplier | Price multiplier applied to all listings during the event |
event-schedule.<name>.extra-listings | Additional listings generated per run during the event |
event-schedule.<name>.announce | Broadcast a server-wide message when the event begins |
Example Eventsโ
engagement:
event-schedule:
IronRush:
days: [MONDAY, WEDNESDAY]
start: "17:00"
end: "19:00"
bonus-multiplier: 1.3
extra-listings: 5
announce: true
DiamondFrenzy:
days: [SATURDAY, SUNDAY]
start: "14:00"
end: "20:00"
bonus-multiplier: 1.5
extra-listings: 10
announce: true
Behavior During an Eventโ
- The
bonus-multiplieris applied on top of normal rarity and time-based pricing extra-listingsadds to the player-count-scaled listing count for each run during the event window- If
announceistrue, the broadcast fires once when the event window begins
Multiple events can be configured and can overlap. When two events overlap, their multipliers and extra listings stack.
Bot Identityโ
The bot's name can be configured to match any persona the server chooses.
| Mode | Setting | Behaviour |
|---|---|---|
static | system-player-name | All listings appear under one fixed player name |
random | random-names list | A name is randomly selected from the list for each generation run |
In random mode, different generation runs can appear to come from different "traders," giving the auction house a more populated, player-like feel.
See Alsoโ
- Listing Generation โ Scheduling and pool selection
- Pricing System โ How listing prices are calculated
- Configuration โ Full engagement config reference