QuickBuy Addon - Overview
The QuickBuy Addon is a personal shop companion for Sigma Orders & Auctions that lets each player configure up to 54 quick-buy slots, each targeting a specific item from the live auction house. One click on a configured slot instantly purchases the cheapest currently active listing โ no browsing, no manual searching.
What It Doesโ
Every player gets their own private shop layout. Each slot is bound to a material the player chooses, with an optional per-item price cap and optional minimum enchantment requirements. When a player clicks a configured slot, the addon queries the live auction in real time, finds the cheapest qualifying listing, and calls the core plugin's buy() method โ the same path a normal auction purchase takes, with the same balance checks, delivery, and confirmation. The shop GUI then refreshes immediately to reflect the new auction state.
Key Featuresโ
Per-Player Configurable Shopโ
- Each player independently configures their own layout of up to 54 slots (server-configurable, multiple of 9)
- Slots are private, persisted per-player as YAML, and survive restarts
- Unconfigured slots show as a green glass pane invite; locked slots (beyond permission allotment) show as red
Real-Time Cheapest Listing Purchaseโ
- One click finds and purchases the cheapest active listing for that slot's material at that moment
- If the targeted listing was just bought by someone else in a concurrent request, the addon silently falls through to the next-cheapest candidate โ no error, no failed click
- The buyer's own listings are never matched
Dialog-Based Material Picker (1.21.6+ Java clients)โ
- Shift-clicking a slot (or clicking it in edit mode) opens a sleek scrollable Dialog UI with an embedded search box
- Every item the auction accepts loads at once in a single scrollable grid โ the client scrolls natively, no page reloads. Items the auction can never hold (spawn eggs, command blocks, barriers, anything on the auction blacklist) are not offered
- Real vanilla item textures render inline in the buttons for 1.21.9+ clients on a 1.21.9+ server, no resource pack needed. Older clients get plain text labels
- Items with applicable enchantments advance to a dedicated enchantment requirement screen with per-enchantment level dropdowns
Automatic Client Fallbackโ
- Bedrock clients (via Floodgate) and Java clients below protocol 771 (pre-1.21.6) are detected automatically โ via the ViaVersion API when installed, not the bridged Bukkit protocol
- Those clients get a fully independent chest-GUI + chat picker: material browsing by page, enchantment selection by chest-GUI, price input by chat with a title/subtitle overlay
- Everything in it works with plain taps, so touch and controller players can do all of it
Optional Per-Slot Price Capโ
- Each slot can have a max price per item, or be left unlimited ("No Limit") to always buy the absolute cheapest listing regardless of price
- The slot lore shows "No Limit" in place of a price when uncapped
- Prices can be typed as
1500,1,500,12.5,10kor2.5m; typenone(or leave the box empty in the Dialog) for no limit โ see Price input
Enchantment Requirement Matchingโ
- Require specific enchantments at a minimum level (โฅ) on the purchased item
- Enchanted books are handled via
EnchantmentStorageMetaseparately from regular item enchantments, and the picker offers every enchantment for them - Custom enchantments from other plugins or datapacks are supported and are saved with their full namespaced key
- Required enchantments are shown in the slot's lore for quick reference
Edit Modeโ
- Change or delete a configured slot with plain clicks: tap the lever in the shop's last slot (shown when that slot is locked for you) or run
/quickbuy edit, then tap the slot - Built for Bedrock and touch players, who have no shift-click. Shift-click still works for Java players
Permission-Based Slot Allotmentsโ
- Server admins configure how many slots each permission group can use
- Conflict resolution always takes the highest matching limit โ no permission conflicts
- Slots beyond the player's allotment are shown as locked (non-interactive)
Configurable Command Aliasesโ
/quickbuyships with/qbas a built-in alias- Additional aliases can be added to
config.ymlundercommand-aliasesโ effective after a restart, no rebuild needed
Fully Config-Drivenโ
- Every chat message, lore line, GUI title, Dialog label, and button text lives in
config.yml - Translate, rebrand, or tweak without touching code
Folia-Safeโ
- Uses
EntitySchedulerfor per-player work andAsyncSchedulerfor background I/O throughout - No
Bukkit.getScheduler()calls
How It Worksโ
Setup (one time per slot):
- Run
/quickbuy(or/qb) to open your personal shop - Click an empty slot to configure it. To change a configured slot, shift-click it, or turn on edit mode (
/qb edit) and click it - Search for and pick the material you want to auto-buy
- Optionally set minimum enchantment levels on the purchased item
- Enter a max price per item (
1500,10k,2.5m...), or leave it empty / typenonefor no limit
Daily use:
- Open
/quickbuyโ each slot shows live availability, quantity, price-per-unit, and total cost - Click any configured slot to instantly buy the cheapest matching auction listing
- The slot refreshes after every click โ what you see is always current
Requirementsโ
| Requirement | Details |
|---|---|
| Sigma Orders & Auctions | Required โ the addon will not enable without SigmaOrders-Auction |
| Java | 21+ |
| Paper / Folia | 1.21.7+ (tested on 1.21.11) |
| ViaVersion | Soft dependency โ enables accurate old-client auto-detection |
| Floodgate / Geyser | Soft dependency โ enables Bedrock client auto-detection |
Next Stepsโ
- Installation - Installation steps and file layout
- Commands - Command and permission reference
- Configuration - Full configuration reference
- Features - Detailed feature documentation