Mmenu
YAML driven GUI menus with MiniMessage, actions, costs, animations, and per menu commands
Telegram support | bStats
What is this?
YAML driven GUI menus with MiniMessage, actions, costs, animations, and per menu commands
Telegram support | bStats
Mmenu is a Paper GUI menu plugin. You drop YAML files into plugins/Mmenu/menus (including subfolders), each file is one menu: title, size, items, click actions, optional permission, optional open command and aliases, optional open animation.
Text uses MiniMessage and/or classic & codes. PlaceholderAPI works in titles, names, lore and action lines. Vault powers optional item prices.
Where it runs
- Yes: Paper 26.1.x (api version 26.1, built on Paper API 26.1.2). Java 25 or newer.
- Usually fine: Purpur on the same game version as Paper 26.1.x.
- No: plain Spigot or CraftBukkit.
- No: Folia.
- Old Paper 1.21.11: not the build target. Update to Paper 26.1.x first.
- PlaceholderAPI %placeholders% in menu text and actions
- Vault + any economy plugin for item costs / [cost] / [give money]
How menus work
- Every *.yml under plugins/Mmenu/menus/ is loaded (recursive, e.g. menus/Help/).
- Menu id usually matches the file stem or the id: field.
- Items sit in slots with material, name, lore, glow, skulls, custom model data, hide tooltip.
- clicks: map click keys to action lists (left, right, shift_left, any, middle, drop, number_key_1 …).
- Optional cost / price / money on an item (Vault charge before actions). Nested click cost and cooldown also supported.
- Per item cooldown (seconds) and per click cooldowns; global click spam guard in config.
- animation: reveal or spectacle styles with themes (neon, aqua, gold, forest, ascended, and more), sounds, title/subtitle, frame border.
- Per menu command + aliases open that menu without registering fragile CommandMap entries (safe PlugMan reload).
Lines in clicks:
- [close] close inventory
- [message] / [msg] text to player
- [command] / [player] / [cmd] run as player
- [console] run as console
- [chat] send chat as player
- [open] otherMenuId
- [sound] SOUND;volume;pitch
- [particle] PARTICLE;count;ox;oy;oz;extra
- [cost] / [take money] / [money] amount (Vault)
- [give money] / [deposit] amount
- [permission message] show no permission line
- Plain line without brackets = player command
How to install
- Put Mmenu.jar into the plugins folder
- (Optional) PlaceholderAPI and Vault + economy
- Start Paper once
- Edit plugins/Mmenu/config.yml and plugins/Mmenu/menus/*.yml
- /mmenu reload after edits
Commands
Aliases: /menu, /mmenu
Code (Text):
/menu
/menu <menuId>
/mmenu open <menuId> [player]
/mmenu reload
/menu <menuId>
/mmenu open <menuId> [player]
/mmenu reload
- /menu alone opens settings.default menu (default id: menu)
- /menu <id> opens that menu for yourself (player only)
- open needs mmenu.open or mmenu.admin; can target another online player; console must pass a player
- reload needs mmenu.admin; reloads YAML, rebuilds menu commands, clears cooldowns
- Extra open commands come from each menu YAML command: and aliases: (examples: /m, /меню, custom help commands)
Code (Text):
mmenu.use legacy optional (default true); not required for /menu
mmenu.open open menu for others (default op)
mmenu.admin reload + bypass menu permissions (default op)
mmenu.menu.* access any menu that sets a permission (default op)
mmenu.open open menu for others (default op)
mmenu.admin reload + bypass menu permissions (default op)
mmenu.menu.* access any menu that sets a permission (default op)
Players with mmenu.admin or mmenu.menu.* bypass the menu permission check.
Config files
- plugins/Mmenu/config.yml default menu, click cooldown, messages, fail sound
- plugins/Mmenu/menus/**/*.yml one menu per file (folders allowed)
Anonymous metrics (plugin id 33092). Charts: menus_count, placeholderapi, vault.
Page: https://bstats.org/plugin/bukkit/Mmenu/33092
Quick item example
Code (Text):
items:
spawn:
slot: 14
material: CHERRY_SAPLING
name: "<gradient:#55ff55:#00aa00>Spawn</gradient>"
glow: true
cost: 0
clicks:
any:
"[command] spawn"
"[close]"
spawn:
slot: 14
material: CHERRY_SAPLING
name: "<gradient:#55ff55:#00aa00>Spawn</gradient>"
glow: true
cost: 0
clicks:
any:
"[command] spawn"
"[close]"
Telegram: https://t.me/Zoobastiks
bStats: https://bstats.org/plugin/bukkit/Mmenu/33092
If something breaks, tell me your Paper version, Java version, and the error from the console. That saves a lot of back and forth.
Thanks for trying Mmenu.
Mmenu is a free Minecraft Java mod. Compatible with Minecraft 26.1, 26.2. Downloaded 4 times (via Spigot). Download it and open it directly in the game.