
WTB Plugin
WTB is a modern player-driven buy-order marketplace plugin for Minecraft that lets players create buy requests, manage listings, claim fulfilled items, and run a clean server economy.
Список изменений
🟩 WTB Plugin — Version 2.0
A major stability and correctness update that fixes all known issues from v1.0, improves GUI consistency, ensures accurate payouts, and fully resolves Claim Box behavior.
🚀 Major Fixes
1. Correct Listing Selection (GUI Index Bug)
Listings in the Main GUI now correctly map to the clicked slot.
- Fixed incorrect index calculation
- Correctly accounts for page offset
- No more selecting the wrong listing
2. Correct Payout Calculation
Payouts now always match the exact number of items sold.
- Amount is clamped to seller inventory
- Amount is clamped to listing remaining quantity
- Payout =
pricePerItem * amountis now always correct
3. Fill‑All Uses Sorted Listings
The Fill All button now respects the current sort mode.
- Uses
mainGUI.getSortedListings() - No more inconsistent fill order
- No more skipping or mis‑filling listings
4. Shared GUI Instances (Critical Fix)
All GUIs and services now use single shared instances from Main.
- Fixed Claim Box not updating
- Fixed My Listings not refreshing
- Fixed Main GUI desync
- Fixed Transactions GUI inconsistencies
- Removed all accidental
new GUI()duplicates
5. Claim Box Entry ID System
Each claim entry now includes a unique ID in its lore.
- Prevents claiming the wrong entry
- Fixes silent claim failures
- Enables reliable click detection
6. Claim Box Cache Fix
Claim Box no longer shows entries from the wrong player.
- Cache is cleared on GUI open
- Viewer UUID is updated correctly
- No more cross‑player claim issues
7. Correct Claim Amounts (Final Fix)
Claim messages now match the exact stack size shown in the Claim Box.
- Captures amount before Bukkit mutates the ItemStack
- Prevents auto‑stacking from altering the message
- Claiming 64/36 stacks now prints exactly 64/36
8. Correct Item Storage in Claim Box
Items delivered to the buyer are now stored exactly as intended.
- Listing fulfillment splits into 64‑stacks
- Claim Box displays correct stack sizes
- Claiming each stack gives the correct amount
🧹 Minor Improvements
- Improved debug logging for payouts and fulfillment
- Cleaned up async DB operations
- Ensured all GUI opens run on the main thread
- Improved money formatting consistency
- Removed redundant code paths in click handlers
🛡 Stability & Data Integrity
- Verified DB schema correctness
- Ensured ClaimEntry serialization is stable
- Ensured Listing model updates correctly
- Ensured no duplicate GUI/service instances
- Ensured all caches refresh correctly
🎉 Summary
Version 2.0 delivers:
- Fully accurate payouts
- Fully accurate claim amounts
- Fully correct GUI behavior
- Fully stable Claim Box
- Fully correct listing selection
- Fully correct Fill All logic
This release resolves every major issue from v1.0 and brings the plugin to production‑ready stability.
