Skip to main content

5-Minute Quick Start

With EasyMenu, you can create interactive menus in just a few lines of YAML.

This tutorial guides you through creating a simple, working menu and opening it in-game.


1. Minimal Menu Configuration

Open plugins/EasyMenu/main.yml in a text editor and replace its contents with:

plugins/EasyMenu/main.yml
menu-title: "&6&lMy Server Menu"
menu-size: 27

menu-items:
- slot: 13
material: DIAMOND
name: "&bClaim Free Diamond"
lore:
- "&7Click to receive 1 diamond"
command: "give {player} diamond 1"

Explanation of Settings

  • menu-title: Title displayed at the top of the menu. Minecraft & color codes are supported.
  • menu-size: Inventory size. Must be a multiple of 9 (9, 18, 27, 36, 45, 54).
  • menu-items: List of interactive elements in the menu.
    • slot: Zero-indexed slot index (for a 27-slot menu, slot 13 is the center).
    • material: Minecraft Material name.
    • name: Display name of the item.
    • lore: List of lore lines shown when hovering over the item.
    • command: Command executed upon clicking. {player} is automatically replaced with the player's name.

2. Reload Configuration

Save the file and run the following command in-game or from the server console:

/menu reload

Upon success, you will see EasyMenu configuration reloaded. All changes take effect immediately without restarting the server.


3. Test Your Menu

Run the menu command in-game:

/menu

A 27-slot chest menu will open with a diamond in the center (slot 13). Clicking the diamond will give you 1 diamond.


4. Add Sounds and Customization

Let's enrich the menu with open sounds, background fillers, and submenus:

plugins/EasyMenu/main.yml
menu-title: "&6&lMy Server Menu"
menu-size: 27
menu-opensound: "BLOCK_CHEST_OPEN"
menu-background-item: "GRAY_STAINED_GLASS_PANE"

menu-items:
- slot: 11
material: COMPASS
name: "&aTeleport to Spawn"
lore:
- "&7Teleport to spawn location"
command: "/spawn"
sound: "ENTITY_ENDERMAN_TELEPORT"
close-menu: true

- slot: 15
material: DIAMOND
name: "&bOpen Shop"
lore:
- "&7Open the shop submenu"
command: "sub_shop"
sound: "UI_BUTTON_CLICK"

Highlights of New Features

  • menu-opensound: Sound played automatically when the menu opens.
  • menu-background-item: Item used to fill all unassigned slots.
  • sound: Sound effect played when an item is clicked.
  • close-menu: true: Closes the menu after executing actions (default is true).
  • command: "sub_shop": Switches to the submenu defined in plugins/EasyMenu/sub/shop.yml.

Save the file and run /menu reload to test your updated menu!