
Better DonutSMP │ All in One. 1.3.5
BUILT IN TAB, Home GUI, Bounties GUI, RTP GUI, Sell GUI, ItemValue, Marriage System, PvP Toggle, /ah
PoSMP v1.3.5 Update
Released: October 5, 2025
What's New
Auction House Improvements
No more inconvenient purchases! Right-clicking an item now shows a confirmation screen before buying. You'll see exactly what you're purchasing, the price, and buttons to confirm or cancel. Much safer and clearer than the old double-click system.
TPA Request Fixes
Fixed the accept/decline buttons in TPA requests - they actually work now when you click them!
Bounty System Updates
- New command: Players can now cancel bounties with
/bounty cancel <player> Be sure to give players the following permission: posmp.bounty.cancel.self
- Less spam: Bounty reminders now appear every 10 minutes instead of every 30 seconds
- Players who cancel bounties lose 50% of their fee and refunds the remainder to them (configurable for server owners) [bounty.yml]
- Fixed /Bounty map - typing player name - so you can bind map to the player you want to hunt!
Why This Matters
- Safer item purchases with visual confirmation
- Working TPA buttons (no more frustration!)
- Quieter bounty notifications that don't spam chat
Scoreboard.yml now allows you to switch server location (for ping). That's about it really!
PoSMP v1.3.4 - Patch Notes
Release Date: October 2, 2025
Overview
Version 1.3.4 brings critical bug fixes to the SellGUI system, comprehensive MySQL database support for 12+ features, and improved transaction history interface.
Database Support (MySQL + File Storage)
12 Features with MySQL Persistence
Full MySQL database support for data persistence across server restarts. All features support both MySQL and file-based storage (YAML/SQLite) with automatic fallback.
Features with Database Support: Home System, Team System, Stats System, Crystal Currency, AFK System, Settings System, Bounty System, Auction System, Build/Claims, Crates System, SellGUI System, Marriage System
Configuration Locations
Centralized Configuration (5 Features) File: plugins/PoSMP/config.yml
- Home, Team, Stats, Crystal, and AFK features use shared centralized storage in the
player-data-storage
section
Individual Feature Configurations (7 Features) Each feature has its own storage
section in their respective config files:
- Settings:
features/settings.yml
- Bounty:
features/bounty.yml
- Auction:
features/auction.yml
- Build:
features/build.yml
- Crates:
features/crates.yml
- SellGUI:
features/sellgui.yml
- Marriage:
features/marriage.yml
Example storage configuration:
storage:
type: yaml
# Options: yaml, mysql
mysql:
host:
localhost
port:
3306
database:
posmp
username:
root
password:yourpassword
table-prefix: posmp_
Database Features
- Automatic table creation
- Connection pooling with HikariCP
- Auto-reconnect and async operations
- Automatic fallback to file storage if MySQL unavailable
- Transaction support for data integrity
Critical Bug Fixes
SellGUI Payment System - CRITICAL FIX
Issue: Players were being paid 64x more than intended for all items sold.
- Example: 64 Birch Logs worth $128 total was paying $8,192
Fix: Removed duplicate multiplication in payment calculation methods.
Transaction History Values - CRITICAL FIX
Issue: Transaction history showed wildly incorrect values.
- Example: Sold 64 Carrots for $96, but history showed $6,758.40
Root Cause: When saving to database, history multiplied value by item amount again when value already included the full stack.
Fix: Removed duplicate multiplication when saving to history database. Note: Existing history entries will still show incorrect values - only new transactions after this update will be accurate.
Feature Improvements
Item Value Display - Permission Removal
Change: Removed permission requirement for viewing item values.
- All players can now see item values in tooltips and actionbar
- No
posmp.itemvalue.actionbar
permission required
Transaction History - Improved Clarity
Changes:
- Removed confusing "Avg/Item" from history displays
- Changed "Total Value" to "Total Payment" for clarity
- Individual items show "Worth: $X each" and "Sold for: $XXX"
- Fixed SQL query to properly sum all items in a transaction
Tax System - Disabled by Default
Tax rate set to 0.0 by default in configuration. Can be re-enabled by changing tax-rate
in sellgui.yml
.
Missing Message Configuration
Added missing tax-message
configuration to messages section.
Technical Changes
- Fixed payment calculation.
- Fixed transaction history value storage
- Removed permission check from actionbar display for item values
- Updated transaction detail tooltip labels for clarity
- Added intelligent GUI item detection to prevent value tooltips on GUI buttons
- Added
storage
sections to all feature configs with MySQL examples - Enhanced
config.yml
with centralizedplayer-data-storage
section
Upgrade Instructions
Standard Upgrade (File Storage)
- Stop your server
- Backup your current plugin
- Remove old PoSMP Folder (your previous data will be deleted)
- Replace
PoSMP-1.3.3.jar
withPoSMP-1.3.4.jar
- Restart server - new config sections will auto-generate
MySQL Migration (Optional)
- Create MySQL database and user
- Update configuration files (change
type: yaml
totype: mysql
) - Restart server - tables will auto-create and data will migrate
- Verify in console for successful initialization
Impact Summary
Payment Calculation Bug | Critical | Fixed |
Transaction History Values | Critical | Fixed |
MySQL Database Support (12 features) | Major Feature | Added |
Item Value Permissions | Medium | Fixed |
Transaction Display Clarity | Medium | Fixed |
Known Issues
Transaction History (Pre-1.3.4 Data): Existing transaction history entries saved before v1.3.4 will show incorrect values. New transactions after updating will be accurate.
Patch Notes - Version [1.3.3]
New: Hover Stats Feature:
- Hover over player names in chat to see a detailed stats tooltip
- Displays key player statistics:
- Money (with abbreviated formatting: 25.70K)
- Kills
- Playtime (formatted as 4h 8m)
- Deaths
- Shards/Crystals
- Click player names to open their stats GUI (/stats <player>)
- Fully customizable in chat.yml:
- Enable/disable individual stats
- Change icons, labels, colors
- Customize format and layout
- Configure click action (run command, suggest command, or open URL)
- Uses Paper's Adventure API (no ProtocolLib required)
Bug Fixes & Improvements
Stats Synchronization
- Fixed: Deaths and kills showing different values across scoreboard, tooltip, and stats GUI
- Fixed: Stats features were pulling from Bukkit statistics instead of PoSMP database
- Now: All stats displays (scoreboard, tooltip, stats GUI) pull from the same database
- Result: Perfect synchronization across all features
Default Settings
- Hover stats: Enabled by default
- Click action: Opens stats GUI
- All stats: Enabled and matching scoreboard design
- Legacy hover mode: Available by setting enabled: false
Compatibility
- Minecraft Versions: 1.19.x - 1.21.x
- Server Types: Paper (recommended), Spigot, Purpur
- Dependencies: Vault (required), PlaceholderAPI (optional)
What's New in v1.3.2:
- Hidden Scoreboard Numbers: Integrated NumberFormat.blank() solution from reference code
- Clean Scoreboard Appearance: No more red numbers on the right side of scoreboard entries
- Paper API Integration: Uses modern Paper API for optimal performance
- Backward Compatibility: Graceful fallback for older Paper versions
- Professional Look: Scoreboard now matches modern server standards
PoSMP Plugin - Patch Notes v1.3.1
Major Features & Improvements
Enhanced Scoreboard System
- Gradient Support: Added full gradient rendering support for scoreboard titles
- Supports both MiniMessage format:
<gradient:#start:#end>text</gradient>
- Supports legacy format with proper color interpolation
- Fixed gradient processing order to prevent color code conflicts
- New PoSMP default scoreboard name is in gradient blue
- Supports both MiniMessage format:
Command System Overhaul
- Prefixed Essentials Commands: Complete migration to conflict-free command system
- All POSMP Essentials commands now use
/p
prefix:/pgamemode
,/pfly
,/pgod
, etc. - Eliminates conflicts with actual Essentials plugins if you are using it on your server alongside PoSMP
- 46+ prefixed commands registered and functional
- All POSMP Essentials commands now use
- Enhanced Tab Completion: Fixed missing subcommands in
/posmp
tab completion- Added
features
,language
,version
,commands
,fixcommands
- Improved command discovery and usability
- Added
Critical Bug Fixes:
plugin.yml Major Updates
- Removed Conflicting Commands: All original Essentials-like commands removed
- Added Prefixed Commands: 46+ new prefixed commands added
pgamemode
,pfly
,pgod
,ptp
,pspawn
,psell
, etc.- Complete descriptions, usage, permissions, and aliases
- Enhanced Dependencies: Added
softdepend
entries for better plugin loading orderEssentials
,EssentialsX
,CMI
,zEssentials
Technical Improvements
Performance Optimizations
- Reduced Logging Overhead: Removed debug spam from scoreboard processing
- Efficient Command Handling: Streamlined command registration without delegation overhead
- Memory Management: Improved GUI event handling and cleanup
Code Quality
- Error Handling: Enhanced null checks and exception handling throughout
- Documentation: Comprehensive inline documentation for new systems
- Maintainability: Cleaner separation of concerns between features
User Experience Improvements
Command Usability
- Conflict-Free Commands: No more command conflicts with other plugins
- Intuitive Prefixes: Easy-to-remember
/p
prefix for PoSMP Essentials - Better Tab Completion: Improved command discovery and autocomplete
Migration Notes
For Server Administrators
- Command Changes: Update any scripts/documentation to use new prefixed commands
/gamemode
→/pgamemode
(for PoSMP Essentials)/fly
→/pfly
(for PoSMP Essentials)- Original Essentials commands remain unchanged
- Configuration: Review
scoreboard.yml
for new ping position options - Permissions: Update permission configurations for new prefixed commands
Coming Soon
- Full Language System: Complete multi-language support activation
- Enhanced GUI Localization: All GUI elements in multiple languages
Version: 1.3.1
Release Date: September 25, 2025
Compatibility: Minecraft 1.19.x - 1.21.x
Dependencies: Vault (required), PlaceholderAPI (optional), LuckPerms (optional)
Major Features
Advanced Features Management System
- New
/posmp features
command opens a GUI to toggle features on/off without server restart - Features can be enabled/disabled in real-time with automatic command registration/unregistration
- Changes automatically saved to configuration files
- Professional interface with visual status indicators
Complete Data Persistence System
- Marriage data now persists between server restarts
- Player statistics properly save and load
- Support for multiple database backends (YAML, MySQL, SQLite, PostgreSQL)
- All progress is preserved across server restarts
Major Improvements
Performance Optimizations
- RTP system is 60% faster with better location finding
- Reduced particle spam from marriage system (20 particles down to 3)
- Eliminated chunk loading lag during teleportation
- Memory usage reduced by 25% for particle-related operations
User Experience Enhancements
- Enhanced
/sethome
command with better subcommands and tab completion - Team join notifications properly notify all team members
- Improved tablist display with proper color codes and player names
- Marriage particles moved above players to avoid blocking view
- Real-time playtime updates on scoreboard
Chat System Overhaul
- Smart LuckPerms integration that auto-detects plugin availability
- Cleaner chat formatting without redundant brackets or symbols
- Improved team prefix display logic
- Better fallback handling when permission plugins aren't available
Critical Bug Fixes
Data Loss Prevention
- Fixed marriages disappearing after server restart
- Fixed player statistics resetting on server restart
- Fixed manual config changes being overwritten on restart
- Improved data validation and error handling
Economy Integration
- Fixed economy features failing when LiteEco loads after PoSMP
- Added delayed retry system for economy plugin detection
- All economy features now work properly regardless of plugin load order
Performance Fixes
- Fixed RTP "found no safe space" error caused by over-aggressive optimizations
- Fixed scoreboard flickering and display issues
- Fixed tablist color code rendering problems
- Fixed /near command not detecting nearby players properly
Display & Formatting
- Fixed balance display showing "1000K" instead of "999K"
- Fixed raw color codes showing instead of formatted colors
- Fixed placeholder text appearing in tab headers/footers
- Fixed scoreboard red numbers still showing when disabled
Command & Feature Fixes
Enhanced Commands
/sethome
now supports multiple formats:/sethome
,/sethome <name>
,/sethome <number>
- Fixed
/sethome help
showing usage instead of setting default home - Improved tab completion with better suggestions
- Fixed command unregistration for disabled features
Team System
- Fixed missing join notifications for team members
- Removed duplicate invite messages
- Better handling of team join requests and invitations
Configuration
- Manual config changes are now properly preserved
- Features can be disabled in config and stay disabled after restart
- Better error handling for invalid configurations
- Automatic migration from old configuration formats
Technical Improvements
Database Support
- Multi-backend storage system with connection pooling
- Async operations prevent server blocking
- Automatic data migration from old formats
- Graceful fallback handling for connection failures
Advanced Configuration
- Over 200 new configuration options
- Backward compatibility with existing configs
- Enhanced error handling and validation
- Hot reload capabilities for most settings
Hi all,
Two updates within a day? Yes, you got that right!
This update enhances on 1.2.0 update by allowing you to disable posmp feature commands to allow the use of other plugins.
How it works:
- Lets say you would like to disable the built-in /sell command, to use another plugin like zSell. The process will involve:
- 1) disabling posmp sellgui command in it's config, setting all to false where applicable.
- Turn all commands to 'false' to disable:
- Once that is complete, use /posmp reload to reload the config and save, then restart the server. [osmp will then allow other plugins to have priority in registering their commands.
- 1) disabling posmp sellgui command in it's config, setting all to false where applicable.
Feature Update:
- You can now disable individual features to use other plugins with PoSMP.
- If you have another plugin you want to use, for example /sell, instead of PoSMP conflicting with their /sell command, you can go to the config file of sellgui in PoSMP folder, set "enabled: false"
🎁 Crates System - DonutSMP-Style Crate Experience
Overview
The Crates system provides a complete DonutSMP-style crate experience with physical key items, magical effects, and customizable rewards. Players can create crates on storage blocks, give out keys, and enjoy an immersive reward-claiming experience.Physical Key System
- Material: Tripwire Hook (looks like an actual key!)
- Appearance: Golden glowing keys with enchantment effects
- Display: [Crate Name] Key (e.g., "Sand Key", "Diamond Key")
- Stackable: Multiple keys of the same type stack together
- Persistent Data: Each key is tagged with its specific crate type
- Inventory Integration: Keys appear as physical items players can see and manage
Key Crate Creation and Key Crate Editor
Key Management
Using Crates
- Right-click any crate block
- Magical effects spawn (portal particles, enchantment sparkles)
- Crate GUI opens showing available rewards
- Click an item to select it (requires physical key)
- Confirmation GUI appears to confirm your choice
- Key consumed automatically from inventory
- Reward given with celebration effects!
Magical Effects & Sounds
Visual Effects
- Crate Opening: Portal particles around block + enchantment sparkles around player
- Reward Claiming: Golden villager particles + firework sparks + magical enchantment effects
- Block Protection: Crates become protected from breaking/modification
Audio Experience
- Crate Opening: Chest open sound + enchantment table sound
- Item Selection: UI button click sound
- No Keys: Villager "no" sound with error message
- Reward Claim: Experience orb pickup sound for successful claims
Smart Features
Block Type Restrictions
- Only works on storage blocks: chests, barrels, shulker boxes, furnaces, hoppers, etc.
- Clear error messages when trying to use invalid blocks
- Prevents confusion from creating crates on grass, vines, or other non-storage blocks
Inventory Management
- Overflow Protection: If inventory is full, keys drop at player's feet
- Automatic Consumption: Keys are automatically removed when claiming rewards
- Visual Feedback: Players can see exactly how many keys they have
DonutSMP Similarities
- Physical key items instead of just data tracking
- Magical particle effects and immersive sounds
- Confirmation system to prevent accidental claims
- Customizable rewards through easy-to-use GUI editor
- Protected crate blocks that can't be broken
- Overflow handling for full inventories
- Admin management tools for server operators
Technical Features
- Persistent Data: Keys use NBT data to identify crate types
- Cross-Server Compatible: Works on Paper, Spigot, and other server implementations
- Performance Optimized: Non-blocking particle effects and sound handling
- Configurable: Fully customizable through YAML configuration files
- Debug System: Comprehensive logging for troubleshooting
Perfect for servers wanting the authentic DonutSMP crate experience with enhanced integration into the PoSMP ecosystem!
This Update brings some needed fixes and improvements more notably with the Scoreboard feature.
- Money abbreviation support (K/M/B format) with configuration toggles
- Hex color support for scoreboard (<#RRGGBB> format)
- Enhanced CurrencyUtils for consistent money formatting
- Updated MessageUtils with improved color parsing
- All existing features and functionality
Some GUIs such as bounty were broken as well as TPA, where glass panes could be dragged around. Fixed and patched up!
Fixed and reenabled Scoreboard feature.
Fixed Home Permissions for Unopped players.
Hi All!
This minor update comes with minor performance improvements and removed problematic command registration code that prevented plugin startup for some users reporting config.yml errors.
1. Fixed NoSuchElementException - Removed problematic ItemValue command registration
2. Cleaned up plugin.yml - Removed non-existent itemvalue command definition
3. mproved error handling - Plugin will now start successfully even without optional dependencies
PoSMP 1.0.5 – Patch Notes
Features
PlaceholderAPI integration: Stabilized for TAB and scoreboards with working stats placeholders (kills, deaths, playtime) and crystals placeholder
New placeholders for use with PlaceholderAPI-enabled plugins like TAB:
- %posmp_stats_kills%
- %posmp_stats_deaths%
- %posmp_stats_playtime% (formatted)
- %posmp_stats_playtime_raw% (seconds)
- %posmp_crystal_amount%
- %posmp_team_name%
Placeholder optimization: Consolidated placeholder logic into single expansion (identifier "posmp"). Removed legacy duplicate team expansion to avoid collisions
Stats GUI improvements: Playtime now computed from tracked total + current session with no PAPI dependency
Crystals enhancements:
- Placeholder now reads CrystalFeature store by UUID and falls back to PlayerData to avoid showing 0
- Configuration improved: unlimited cap with 0 or -1 in features/crystal.yml
- settings.maximum-balance: 0 or -1 means unlimited (previously -1), default set to 0
- Message placeholders updated to %posmp_crystal_amount%
Bug Fixes
TAB values blank: Resolved by removing duplicate PlaceholderAPI expansion with same identifier and returning safe defaults when stats/crystal features are unavailable
Stats placeholders: Switched to direct method calls (no reflection) and ensured non-empty outputs
Playtime in GUI: Fixed to include current session and use internal tracking
Crystal placeholder stuck at 0: Now reads persisted store first with PlayerData fallback
Config Updates
features/crystal.yml now defaults to unlimited max balance using 0
Build/Packaging
Version bumped to 1.0.5
Commands to Reload
/papi reload /tab reload (or restart) /posmp reload (optional after deploying JAR)
PoSMP 1.0.4 – Patch Notes
Features
Team nametag system: New second line under player names with instant, smooth tracking
- Default format: [Team: TeamName] with team color
- Instant follow via PlayerMove/Teleport/WorldChange with lightweight periodic refresh
- Configurable in features/team.yml with options for enabled, y-offset, instant tracking, update period, and format
Team Levels page: Team Info GUI Experience Bottle opens levels page showing current level, XP, next threshold, and benefits per level from config
Join request GUI: Clicking a team in Team List sends request and opens Accept/Deny GUI for owner. /team join <team> triggers same GUI flow
RTP multiverse support: features/rtp.yml multiverse section to pick overworld/nether/end/lobby world names. RTP respects configured world names instead of first world with matching environment
Team enhancements:
- Team list shows team level in item lore
- Team sidebar toggleable (default OFF) via gui.sidebar: false
- Team color selection GUI and back button fixed
- Kick GUI lists teammate heads reliably with UUID-based lookup
Chat improvements: Resolved raw %luckperms_prefix% by using PlaceholderAPI when present with fallback resolver for common placeholders when PlaceholderAPI is absent
Bug Fixes
AFK disable crash on shutdown: Avoid scheduling tasks while plugin disables
Duplicate messages eliminated:
- Team chat toggle now reports only once
- Kick duplicate notice removed (one source of truth from TeamFeature)
Display cleanup: Kick/leave immediately clears second-line nametag and below-name artifacts
Above-head display: Removed old label usage and replaced with armor-stand nametag for fully custom second line under player name
Config Updates
features/team.yml overhauled:
- New gui.nametag block for second line settings
- display.tab-format and display.chat-format simplified
- Benefits/levels retained with team list showing level in GUI lore
features/rtp.yml: Added multiverse world name mapping
PoSMP 1.0.3 – Patch Notes
Highlights
Fixed startup crash caused by internal conflicts (NoSuchFieldError in EconomyFixFeature) Shipped clean JAR build with improved stability Cross-version runtime support: 1.19, 1.20, and 1.21 (latest) Essentials replacements restored and expanded with proper command executors and tab-completion
Fixes
Resolved java.lang.NoSuchFieldError during enable caused by internal conflicts by improving build process and stability Guarded ProtocolLib-dependent features (Item Value tooltips) so plugin runs even if ProtocolLib/NBT-API are absent Updated compatibility with Paper API changes across versions (enchantments, particles, attributes, flags, materials)
Compatibility
Server versions: 1.19.x, 1.20.x, 1.21.x (including latest Paper) Build: Java 17 bytecode (runs on Java 17 and Java 21) plugin.yml: api-version: 1.21
Essentials Commands (built-in)
Core commands: broadcast, msg, reply, burn, nuke, fly, god, vanish Teleportation: tp, tphere, back, tppos, tpoffline Player management: gamemode (gma, gmc, gms, gmsp), speed, heal, feed, repair Inventory: trash, workbench, invsee, enderchest, clearinventory, give Utilities: playtime, exp, seen, socialspy, kill, near, ignore, remove World: pweather, worth, time, spawnmob
Tab-completion provided for applicable commands with permissions defined in plugin.yml
Deployment Notes
Upload build/libs/PoSMP-1.0.3.jar for installation For Item Value tooltips, install ProtocolLib and NBT-API (feature auto-skips if absent)
Technical Changes
Build targets Java 17 with Paper dependencies adjusted Updated plugin.yml api-version with verified commands and permissions Full Essentials command registration with tab-completers Compatibility helper added for API differences across 1.19–1.21