1.14.1-ReleaselatestDeluxeMenus 1.14.1-ReleaseAug 13, 2025 1.14.1
Hey there! It's been a quick moment since we last updated you all. Here's a whole heap of new features and changes. One important change that has happened since our last update is DeluxeMenus is now an open sourced project on GitHub, so feel free to help us on future updates or just follow along with changes as they happen. https://github.com/HelpChat/DeluxeMenus/Fixes And Changes:
- Fixed smithing tables being limited to 3 out of 4 slots in 1.20+. - Fixedmaterial: placeholder-not properly updating when reloading the menu (using/dm reload). - Fixed tipped arrows not supporting thepotion_effectoption. -model_datasupports negative values (for versions that still use the old option). - Fixed armor materials showing stone instead of air when armor was not placed in the respective slot. - Fixed target set in/dm open <menu> -p:<target>not being used to parse placeholders inside actions. - Removedhide_effectsoption as this item flag was removed. - Fixedupdate_intervalchanging to 10 if value is set to 1. - Changed/dm listcommand. It is now paginated. To get the old list, simply use/dm list all. - Fixed[sound]action on 1.21.3 and newer versions. - Fixed lore containing the new line symbol\nnot properly being updated whenupdate_intervalandupdateoptions were enabled. - Fixed[commandevent]action. The internal behavior was changed from a CommandPreProcessEvent to do the same as the[player]action.The New Stuff:
- Added argument requirements. <details> <summary>Example</summary>
</details> - Added a new requirement typemenu_title: "{player}'s Profile" size: 9 open_command: dprofile register_command: true args: player: requirements: regex: type: "regex matches" input: "{player}" regex: "^[a-zA-Z]{2,16}$" deny_commands: - "[message] That's not a valid player!" length: type: "string length" input: "{player}" min: 2 max: 32 deny_commands: - "[message] Player must be between 2 and 32 characters long." player: type: "is object" input: "{player}" object: "player" deny_commands: - "[message] Must be a player's username or UUID." count: requirements: size: type: ">" input: "{count}" output: "5" deny_commands: - "[message] Count must be at least 5." items: health: slot: 0 material: STONE display_name: "{player}'s health => {count}" lore: - "%parseother_{{player}}_{player_health}%"string length. It has 3 options: -input(required): The string used in the requirement -min(required): The minimum length the string should be -max(optional): The maximum length the string should be - Added a new requirement typeis object. It has 2 options: -input(required): The value to be checked -object(required): The type of object to check for This requirement attempts to parse the given input as a certain type of Java object. Supported objects are: int, double, uuid, and player. (player supports both player name and UUID) - Added support for MMOItems materialsmaterial: mmoitems-ITEMTYPE:ITEMID- Added support for ExecutableBlocks materialsmaterial: executableblocks-ITEMID- Added support for ExecutableItems materialsmaterial: executableitems-ITEMID- Added support for SimpleItemGenerator materialsmaterial: simpleitemgenerator-ITEMID- Added support for Nexo materialsmaterial: nexo-ITEMID- Newlore_append_modeoption for items. In case you are using materials from different plugins such as MMOItems, they come with their own lore. This option decides what to do with the lore you specify inside the menu. Valid options:IGNORE,OVERRIDE,TOP,BOTTOM. Default value isOVERRIDE. - Newlight_leveloption. Takes a number from 0 to 15 and can be used to change the light level of the new LIGHT item. - Added newtrim_materialandtrim_patternoptions to set armor trims for armors. Valid values can be found here: https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/inven… https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/inven… - Added a newdamageoption. It sets the damage of an item such as armor - Added support for arguments to be used with the[opengui]and[openguimenu]actions. Example:- '[openguimenu] MENU1 arg1 arg2'. The arguments are not required and maintain the old behavior if they are not specified. - Added new PlaceholderAPI placeholders:%deluxemenus_is_in_menu%,%deluxemenus_opened_menu%,%deluxemenus_last_menu%-%deluxemenus_opened_menu%- Returns the ID of the menu that the player currently has open -%deluxemenus_has_open_menu%- Returns yes/no if a user has a menu opened -%deluxemenus_previously_opened%- Returns the previous ID of the menu that the player had opened - Added a new requirement typehas permissions. It works just likehas permissionbut it takes in a list of permissions. It also has aminimumoption to only check for a number of permissions from the list. <details> <summary>Example</summary>
</details> - Added support for item hooks inside the<type>_requirement: requirements: perms: type: "has permissions" minimum: 1 permissions: - perms.1 - perms.2has itemrequirement type. Example:material: itemsadder-<id>- Added new item options:hide_tooltip,enchantment_glint_override,rarity,tooltip_style, anditem_model-hide_tooltip- Hides the tooltip of the item completely -enchantment_glint_override- If true, the item will glint, even without enchantments; if false, the item will not glint, even with enchantments -rarity- Change the item rarity. Valid item rarities: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/inven… -tooltip_style- Use custom sprites for tooltip background and frame -item_model- Change the item model - Added new item options:nbt_byte,nbt_bytes,nbt_short,nbt_shorts. They are used for setting short and byte values - Added tab completion for the/dm ...commands - Added new commands for managing Metadata <details> <summary>Metadata Command Reference</summary> Commands for handling metadata (with support for placeholders): -show: Gets the stored value at the specified key as long as it matches the specified type -list: Lists all key-value pairs of a specified type -set: Sets a value of specified type at the specified key (if a value exists at the given key, it will override it only if the type matches) -remove: Removes a value of specified type from the specified key (as long as the existing value matches the given type) -add: Used for addition on number types (if no value exists at the given key yet, the addition will be done on a0value) -subtract: Used for subtraction on number types (if no value exists at the given key yet, the subtraction will be done on a0value) -switch: Used for switching boolean values. SinceBOOLEANtype is just an alias forString, it will also work forStringtypes as long as the values aretrueorfalse(case-insensitive) </details> - Added a new item option:model_data_component. This adds support for the new custom model data component <details> <summary>Example</summary>
</details>items: test: material: dirt slot: 0 model_data_component: strings: ["string1", "string2"] floats: [1, 2, 3] flags: ["true", "false", "true"] colors: ["255, 255, 255", "0, 0, 0"]Other Important Changes:
- Placeholders are parsed before arguments. To change back to the old behavior addarguments_support_placeholders: trueto the menus you want to revert the change for. Long rant/explanation: This was done for secur
Similar projects
Plugin →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
103.6MSueta
Simple Voice Chat
A working voice chat in Minecraft!
76.3MSueta
Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
26.2MSueta
Chunky
Pre-generates chunks, quickly and efficiently
20.8MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18.3MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta