- Added Portfolio Button to main menu (Slot 48).
- Added config toggle
gui.portfolio_button_enabled- Fixed Cloud Dashboard not loading data correctly.
- Polished Dashboard UI (cleaner charts & textures).
- Fixed cloud dashboard integration
- Added secure, random Server IDs (persists across restarts)
- Updated project dependencies
- Full compatibility with stonkz.space
Fixes:
- Fixed a critical race condition where stock levels could revert if a sale happened during a database save.
- Fixed a loop where Limit Orders would repeatedly try (and fail) to fill for offline players.
- Fixed the default
missing the requiredCode:config.ymlfield.Code:license_key- Added auto-repair for existing configs to inject the missing license setting.
Technical:
- Refactored
for better thread-safe state management.Code:StockItem- Improved database handling for high-concurrency environments.
New Features
Technical Changes
- MMOItems Support: You can now use MMOItems in the market!
- Use the format mmoitems:TYPE:ID in your items.yml.
- Example: mmoitems:SWORD:CUTLASS
- Integration is enabled by default but can be disabled in config.yml under the hooks section.
- Implemented a robust reflection-based hook for MMOItems to ensure maximum compatibility across versions.
Criticial Fixes
- Fixed Zero Stock Exploit: Resolved a critical issue where players could continue to purchase items even when the stock was depleted (zero).
- Fixed Auto-Fluctuation Bug: Prevented the market volatility system from creating "ghost stock" by artificially adding items to empty stocks during price drops.
- Fixed Zero Stock Initialization: Added a safety default so items configured without a specific stock target now initialize with 1000 stock instead of 0.
- Stock Validation Logic: Updated the internal stock check logic in both the Trade Menu and Quick Trade commands to strictly enforce stock availability.
- Ghost Stock Display: Fixed discrepancies where the GUI might suggest availability for items that were actually out of stock.
- Fixed inventory stacking bug (buying items no longer requires an empty slot)
- Fixed race condition in market velocity tracking
- Added creation date to Limit Order lore
- Added {panic} placeholder support for item lore
- Cleanup of deprecated API calls
- Fixed Command Aliases: Fixed
/sellinvand/sellinventoryfunctionality swap.- Code Cleanup: Removed unused code in premium module.
