Menu Customization
Menu Layout
menus.yml uses schema-version: 2. Each entry under menus customizes a registered FateUHC menu. Keep the existing menu IDs and button keys when editing built-in controls so their game actions continue to work.
menu-title: the inventory title.menu-size: 9, 18, 27, 36, 45 or 54 slots.refresh-ticks: automatic refresh interval; 0 disables scheduled refresh.permission.enabled,permission.nodeandpermission.denied-message: optional access control.fill-menu.enabledandfill-menu.item: filler for unused slots.items: built-in button overrides or additional standalone items.
Slots are one-based: slot: 1 is the first inventory slot. slots accepts a list. Pagination also uses one-based content-slots, previous-slot and next-slot.
Item Appearance and Behavior
Items support material, amount, durability, name, lore, enchantments, flags, custom-model-data, skull-owner and skull-texture. Use materials available on the server version you run.
state selects an entry under states, allowing labels and appearance to change with the menu’s context. Keep the built-in state placeholders unless you intend to change the behavior.
run-button-action: true preserves a built-in button’s FateUHC action. Additional actions can be configured alongside it. Use standalone: true with an explicit slot for an extra button, and run-button-action: false when it should perform only your configured actions. close-inventory, cooldown-seconds, cooldown-message and optional item permissions control interaction.
Actions
| Action | Purpose |
|---|---|
player-command:rules |
Run a command as the clicking player. |
console-command:say Welcome {player} |
Run a command as the server console. |
open-menu:settings |
Open an existing registered menu ID. |
back |
Return to the previous menu. |
close |
Close the inventory. |
message:&aWelcome {player} |
Send text to the player. |
sound:CLICK |
Play a supported sound. |
connect:hub |
Request a BungeeCord server connection. |
player-balancer:hub |
Send a PlayerBalancer connection request. |
refresh |
Refresh the current menu. |
custom: is for actions registered by integrations; it is not an arbitrary script field. Only trusted administrators should edit console commands because these execute with console permissions.
Placeholders
Titles, items and actions resolve {player}, <player>, {display-name}, {online} and {game-state}, plus PlaceholderAPI placeholders when installed. Individual menus provide their own context values, such as {config-name}; refer to the matching bundled menu entry.
Reloading
Use /uhc reload with uhc.reload after editing menu settings. Check the console for validation errors and reopen the menu. Missing bundled defaults are merged while existing values are retained. Back up the file first, and keep the schema version managed by the plugin.
See the complete menus.yml defaults.