
Xshards
Xshards is a Minecraft plugin that introduces a shard-based economy, enabling players to earn shards through gameplay, purchase items from a public shop, and manage their shard balances with various commands.
Xshards 1.2.9
release16 апреля 2026 г.Changelog
All notable changes to the Xshards plugin are documented in this file.
[1.2.9] - 2026-04-16
Fixed
-
Shop: items could be received without paying / lost shards on purchase. The shop listener now uses
getRawSlot()and only reacts to clicks inside the shop's top inventory, so clicks in the player's own inventory no longer trigger purchase flows. Shards are now deducted before the item is delivered, the player's balance is re-verified at confirm time, and any items that don't fit in a full inventory are dropped at the player's feet so they never lose what they paid for. The pending-purchase state is also cleared when the confirm GUI is closed without a choice. Fixes the "I can take items from the shard shop without paying" report. -
Database path mismatch (
XShardsvsXshards). The default SQLite path inconfig.ymlwasplugins/XShards/storage/xshards.db(capital S) while the plugin's data folder isXshards. The default has been corrected toplugins/Xshards/storage/xshards.db.Upgrade note: if you were running 1.2.8 or earlier, you'll have existing data in
plugins/XShards/storage/xshards.db. Either move that file toplugins/Xshards/storage/xshards.db, or setstorage.sqlite.file: plugins/XShards/storage/xshards.dbin yourconfig.ymlto keep the old path. -
SQLite errors: "stmt pointer is closed" / "database has been closed" / "Database connection lost. Reconnecting..." spam. The previous
DatabaseManagerreturned a single shared JDBC connection that callers would then close viatry-with-resources, which closed the shared connection out from under any other thread mid-query (e.g. the AFK task and PlaceholderAPI/DecentHolograms refreshes hitting the leaderboard and AFK status).DatabaseManager.getConnection()now returns a fresh connection per call, so each query is fully isolated. SQLite connections also enable WAL journal mode and a 5s busy timeout for better concurrent read/write behaviour. -
/shards remove <player> <amount>now works from the console. Previously the console branch only acceptedgive. Console, command blocks, and RCON can now useremoveas well, enabling custom commands and admin scripts to debit a player's balance without thegive <player> -Nworkaround.
Changed
- Startup banner now reads the version from
plugin.ymlinstead of a hard-coded string (was stuck atv1.2.4). ShardCommandnow rejects non-positive amounts up front with the existing "invalid amount" message, so admins can't accidentally invert a give/remove with a negative number.
Xshards 1.2.8
release8 апреля 2026 г.Xshards Changelog
[1.2.8] - 2026-04-08
Fixed
- Fixed critical bug where players could take items from the store (
/store) for free without purchasing them. The shop inventory click protection was not being triggered due to a title mismatch caused by color codes, allowing players to freely drag items out of the GUI.
Xshards 1.2.7
release12 марта 2026 г.ersion 1.2.7 - Shop GUI Customization (Database Edition)
Features:
- NEW: Customize shop inventory title in config.yml (store.title)
- NEW: Per-item custom display names (editable via /store editname
) - NEW: Per-item custom lore (editable via /store editlore
<line1|line2|...>) - NEW: Global default lore for all shop items in config.yml
- NEW: Full color code support (&a, &c, etc.) for all customizations
- Support for {price} placeholder in lore
Database Schema Updates:
- Added
display_namecolumn to shop_items table (VARCHAR 256 / TEXT) - Added
lorecolumn to shop_items table (LONGTEXT / TEXT) - Backward compatible - existing shops auto-migrate
New Commands:
/store editname <slot> <name>- Set custom display name for item/store editlore <slot> <line1|line2|...>- Set lore with | as separator
Configuration Example:
store:
title: "&6Custom Shop Name"
default-lore:
- "&7Price: {price} shards"
- "&8Click to purchase"
Data Storage:
- Per-item customizations saved in database (MySQL/SQLite)
- Global settings configured in config.yml
- Changes via commands immediately persist to database
Technical Updates:
- Updated version to 1.2.7
- Added display_name and lore fields to ShopItem class
- Updated DatabaseManager table creation for both MySQL and SQLite
- Enhanced ShopManager with batch save/load for customizations
- Added setItemDisplayName() and setItemLore() methods
- Tab completion for editname and editlore commands
Xshards 1.2.6
release8 марта 2026 г.Нет описания изменений
Xshards 1.2.3
release30 января 2026 г.Version 1.2.5 - Global Message Control and Configuration Improvements
Features:
- Added global and per-message toggle support in messages.yml
- Every message in the plugin can now be disabled by setting it to an empty string or using a new toggle system
- Added message-enabled toggles for all shard earning methods in config.yml
Changes:
- Improved message handling for better performance
- Updated default messages.yml with documentation for disabling messages
Technical Updates:
- Updated version to 1.2.5
- Refactored MessageManager to handle empty/null messages gracefully

