Links
Tags
Creators
Details
2.0.0
Compatibility
Changes
🟩 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.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:oMV2eBl7:NtYLZ4gg"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:oMV2eBl7:NtYLZ4gg"
}

