The plugin has been entirely rewritten in Kotlin, resulting in cleaner code, improved performance, and easier maintainability.
Anvil Menu Enhancements
Introduced Anvil menus with advanced rename text functionality. Use {text} as a placeholder for dynamic rename text values.
Expanded Requirement Types
Added new requirement types, such as permission and balance, to provide more dynamic options for conditions.
Extended conditions for requirement types to allow for more complex checks.
New Action Types
Introduced a variety of new action types to increase interactivity and customization:
Teleport: Move players to specific coordinates.
Server: Transfer players between servers.
World: Change a player's world.
Broadcast: Send global messages to all players.
Balance: Modify player balances (positive values add; negative values subtract).
Permission: Dynamically grant or revoke permissions using Vault (! prefix removes permissions).
Broadcast-Sound: Play global sound effects.
Sudo: Execute commands as a player.
Menu Command System
Added a new menu command system with Brigadier-style arguments, supporting types such as string, array, word, number, and player for precise command handling.
Bedrock Compatibility
Added support for Bedrock skins for player heads.
Enhanced compatibility with skin face rendering in Bedrock forms.
Real-Time Updates
Menus now automatically update every 20 ticks by default, ensuring real-time dynamic interaction.
Global Variables
Introduced support for global variables to enable consistent data across menus.
Custom Requirement Messages
Customize messages for unmet requirements to provide better feedback to users.
Enhanced Java & Bedrock Separation
Added optional distinctions for actions, requirements, titles, names, and lores between Java and Bedrock editions.
Small Caps Numbers
Introduced small caps styling for numeric displays to improve visual design.
Tutorial Menus
Added built-in tutorial menus to guide users on plugin usage and features.
New Button Properties
Added support for:
Data attributes for buttons.
Hide Enchants and Hide Attributes options to streamline button display.
Improved Reload Commands
Introduced new subcommands for managing menus more effectively:
Reload Specific Menus: Reload individual menus on demand.
Load and Test Commands: Streamlined for better menu testing workflows.
Updated Configuration
Enhanced the configuration file to include:
Messages: Customize user-facing messages.
Variables: Define global variables directly in the config.
Debug Options: Simplify troubleshooting and fine-tuning.
Spigot Compatibility
Removed the Paper API requirement, allowing the plugin to function seamlessly on both Paper and standard Spigot servers.