Menus (GUI)
Homestead uses chest GUIs for visual management of regions, flags, members, and more. All menu content (titles, button names, lore lines, and the item shown for each button) is customizable.
Menu Files
Menu files live in plugins/Homestead/menus/, one per language:
plugins/Homestead/menus/en-US.yml
plugins/Homestead/menus/es-ES.yml
plugins/Homestead/menus/hu-HU.yml
File Structure
Menus are organized under three top-level sections:
# Shared default buttons
defaults:
back: ...
prev-page: ...
next-page: ...
empty-slot: ...
# Per-menu configuration
menus:
<menu-key>:
title: "..."
buttons:
0: ...
1: ...
# Internal type mappings (do NOT edit)
button-types: ...
Defaults
Shared buttons used across menus:
defaults:
back:
name: "&c&lBack"
lore:
- "&7Return to the previous menu."
type: RED_STAINED_GLASS_PANE
prev-page:
name: "&9&lPrevious"
lore:
- "&7Go to the previous page."
type: ARROW
next-page:
name: "&9&lNext"
lore:
- "&7Go to the next page."
type: ARROW
empty-slot:
name: " "
type: GRAY_STAINED_GLASS_PANE
Buttons
Each button within a menu is defined by its name, lore (description), and type (item):
menus:
region_menu:
title: "Region - &2{region}"
buttons:
0:
name: "&a&lConfirm"
lore:
- "&7Click to confirm this action."
- "&cThis cannot be undone!"
- ""
- "&eLeft-click to continue"
type: DIAMOND
Button IDs are local to each menu and are used to position items within the GUI.
Customizing Titles
Each menu has a title that supports color codes:
menus:
regions:
title: "Regions"
region_menu:
title: "Region - &2{region}"
region_global_player_flags:
title: "Player Flags - &9Global"
region_world_flags:
title: "World Flags"
region_member_flags:
title: "Player Flags - &3{playername}&r"
region_players_management:
title: "Manage Players"
sub_areas:
title: "Sub-Areas"
miscellaneous_settings:
title: "Miscellaneous Settings"
Color codes are supported: &6&lGold & Bold and hex colors: &#FF00FF.
Customizing Buttons
Name
Lore (Description)
lore:
- "&7Click to confirm this action."
- "&cThis cannot be undone!"
- ""
- "&eLeft-click to continue"
Type (Item)
Regular items:
Player heads (custom textures):
Get texture IDs from Minecraft-Heads.com.
Player head using the viewer's skin:
ItemsAdder custom items:
NexoMC custom items:
NexoMC No Dashes
Use underscores (_) instead of dashes (-) for NexoMC item IDs.
CraftEngine custom items:
Dynamic types (resolved internally):
Fallback
If a material name doesn't exist, a BARRIER block is shown instead.
Button-Types (Do Not Edit)
The button-types section at the bottom of the file maps world heads internally:
# Do NOT modify these
button-types:
world:
overworld: PLAYERHEAD-...
nether: PLAYERHEAD-...
the_end: PLAYERHEAD-...
Button-Levels (Do Not Edit)
The button-levels section controls the rewards displayed in the Levels menu and must stay synchronized with config.yml:
# Make sure the level rewards are synchronized as in config.yml
button-levels:
5:
- "&a✔ 1 Chunk"
- "&a✔ 5% Upkeep price"
10:
- "&a✔ 2 Chunks"
- "&a✔ 1 Member"
# ...
Reload
Players may need to close and reopen menus to see changes.