The menu builder
Build a Pane in the panel: blocks on a grid, words, buttons and what they do, looks and colours, and a preview that shows what players will see.
DraftThis page is a first draft and may change.
Open Menus for your server in the panel, then make a page with New page, or pick a page and
press Edit. Each page has a name players see at the top, and an address like shop that buttons
and commands use.
The builder has three parts:
- On the left: blocks you can add, the blocks on this page, and anything to fix.
- In the middle: your page. Switch between Layout (where you move things), As a Pane and As a chest menu.
- On the right: settings for the selected block, the page's Look, how players open it, and its Chest design.
Blocks and the grid
A page is a grid 12 columns wide and 1 to 8 rows high. Every block takes a rectangle of cells, and no two blocks can share a cell. The builder will not let you drop one block on another.
| Block | What it is |
|---|---|
| Button | Words, an icon if you like, and an action when clicked |
| Text | Words. Use **bold**, *italic* and {accent}colour{/accent} |
| Image | One of your pictures, or one of our icons |
| List | Rows of words, each with small words on the right, an icon, and an action if you like. Long lists get pages |
| Tabs | 2 to 6 tabs. Each tab has its own grid of blocks inside the tabs block |
To move a block, drag it. To resize it, drag its bottom right corner. With a block selected you can also use the arrow keys to move it and Shift with the arrow keys to resize it. Delete removes it. Ctrl+Z (Cmd+Z on a Mac) undoes and Ctrl+Shift+Z redoes.
Tabs. Select a tabs block, then press Edit what is inside on a tab. The grid now shows just that tab. Press The whole page to go back.
Words filled in for each player
In any text you can use:
| Write | Players see |
|---|---|
{player} | Their own name |
{online} | How many players are online |
{max_players} | Your server's player limit |
{server} | Your server's name |
What buttons do
A button does one thing from a safe list:
| Action | What happens |
|---|---|
| Run a command | Runs a command, as the player who clicks or as the server console |
| Open another page | Opens one of your other pages |
| Send to another server | Moves the player to another server on our network, by the name in its address |
| Show a message | Shows the player a line of text in chat |
| Close the menu | Closes it |
| Go back | Opens the page they came from |
Commands are written without the slash. {player} and {uuid} are filled in with the clicking
player's name and id, for example give {player} diamond 1. No other word in braces is filled in, so
the builder stops you if you write one, like {name}. Other braces stay as you wrote them, so text
and item data work: tellraw {player} {"text":"Welcome!","color":"gold"}.
Every press runs the command again. A button is not used up when it is pressed: a player can
press it as often as they like, and each press runs its command once more. So a button with
give {player} diamond 1 hands out a diamond on every press. For something a player should get only
once, or only now and then, make the button run a command that checks for itself, like a kit with its
own cooldown (kit starter), and keep the item giving inside that plugin. To keep autoclickers in
check, the same console button runs at most once a second for each player, and any button at most
about three times a second.
Console commands need care. The console can run any command, and anyone who can see the button can make it run. Only use console commands that are safe for every player who sees the button, and use a permission (below) to hide buttons that are not. Your AI can only publish console buttons whose commands are on the safe list for AI; see Building menus with your AI.
Blocks only some players see
Every block has Only for players with a permission. Put a permission node there, like
shop.vip, and only players who have it see the block. Blocks for different permissions may share
cells, so a VIP button and a normal button can sit in the same spot.
The page's look
Under Look:
- Starting look: dark or light.
- Accent colour: the colour of main buttons and highlights.
- Your colours: set any of background, panels, lines, words, quiet words, accent, buttons, button words and danger. Unset colours keep the starting look's. If words would be hard to read on their background, the builder tells you.
- Font: the game's font, or a font from your own resource pack. See Images, fonts and your resource pack.
- Background picture, menu size (small, large or the whole screen), frame, space between blocks, opening motion, opening sound, and how much to darken the world behind.
- Show the title and a close button at the top.
Preview, save and publish
As a Pane draws the page exactly as a player on a recent game version sees it, with a sample player name. As a chest menu shows the chest menu players on other versions get, with what each slot says listed under it. Long pages and tabs have more than one view: use the arrows under the preview. The preview is shown at a whole size so the game's letters stay sharp: bigger on a wide screen, and a wide one scrolls inside its box. The magnifier button above it switches the size.
Save draft keeps your changes without showing them to players; it is greyed out, with "No changes to save" beside it, until you change something. Publish sends the page to players; it saves first. Each publish gets a new version number. Anything listed under To fix before publishing stops publishing until it is fixed, and the builder says what is wrong in plain words.