Skip to content

GUI Reference

github-actions[bot] edited this page Jan 3, 2026 · 7 revisions

Customizing Menus (GUI.yml)

BeaconPlus allows you to completely redesign every menu in the plugin. You are not stuck with a hardcoded layout. You can move buttons, change their icons, add decorative glass, or even shrink the menu to a single row.


1. How to Design a Menu (The Layout System)

We use a "Draw it yourself" system. You literally draw the shape of the inventory using characters in the gui.yml file.

The Possibilities

  • Make it compact: Use 3 rows for a clean, simple look.
  • Make it grand: Use 6 rows (Double Chest size) to fit tons of information.
  • The Catch: You cannot create "Scrollable" menus or exceed 6 rows (54 slots), as that is a physical limit of the Minecraft client.

Visual Example

In gui.yml, you will see a Layout section. Each character represents one slot.

Menus:
  Beacon:
    Layout:
      - "         "  # Row 1: Empty air (Space character)
      - " GGGGGGG "  # Row 2: 'G' (Glass Panes) bordering the middle
      - " G  B  G "  # Row 3: 'B' (The Beacon Effect button) in the center
      - " GGGGGGG "  # Row 4: Border
      - "         "  # Row 5: Air

In this example, the menu is 5 rows tall, with a glass box floating in the middle.


2. Slot Configuration Types

Each character (like B, A, G) is linked to a specific function in the Items section.

Core Functions

  • B Effect Icon: Displays the current effect's status (Level, Duration).
  • A Toggle Switch: Toggles the effect ON or OFF.
  • S Settings: Opens the "Beacon Settings" sub-menu.
  • V Access List: Opens the Whitelist/Blacklist manager.
  • J Back Button: Returns to the previous screen.

Upgrade Functions

These appear in the "Upgrade Effect" menu.

  • E XP Upgrade: Purchase using Vanilla XP Levels.
  • D Money Upgrade: Purchase using Server Economy (Vault).
  • F Item Upgrade: Purchase using Items.
  • O Mode Selector: Switch between effect modes.

Access List Functions

These appear in the Whitelist/Blacklist manager.

  • N Add Player: Prompts to type a player name to add.
  • Y Add Team: Prompts to add a Party/Team.
  • W Mode Toggle: Switches list between "Whitelist" and "Blacklist".
  • Z The Entry: Represents a person on the list.

3. Customizing Button Looks

For every button, you can change the Material, Name, and Lore. You can even make them look different based on the situation (Conditions).

Example: A Toggle Switch (A)

You want the button to look like a Lime Dye when On, and Gray Dye when Off.

Items:
  A: # The Key used in the layout
    Type: LIME_DYE
    Name: "&a&lENABLED"
    Lore:
      - "&7Click to disable"
    
    # "The Catch": What if it's currently OFF?
    # We use specific "States" to handle this.
    States:
      Unchecked: # State name for "OFF"
        Type: GRAY_DYE
        Name: "&c&lDISABLED"
        Lore:
          - "&7Click to enable"

Available States

  • Unchecked: Used for Toggle buttons when they are OFF.
  • Disabled: Used for Upgrade buttons when the player cannot afford the cost.
    • Possibility: Use BARRIER item to clearly show they can't buy it yet.
  • Completed: Used for Upgrade buttons when the effect is already Max Level.

4. Placeholders (Showing Data)

You can use these placeholders in the Name or Lore of any item to display dynamic info.

General Info

  • {player}: The name of the player looking at the menu.
  • {beacon_power}: The amount of "Pyramid Power" this beacon has.
  • {beacon_range}: The current radius (e.g., "50 blocks").

In Upgrade Menus

  • {effect_level}: The current level (e.g., "Speed I").
  • {next_level}: The level they are buying content (e.g., "Speed II").
  • {cost}: How much the upgrade costs.
  • {balance}: The player's current money/items.

In Access Lists

  • {target_name}: The name of the person on the whitelist card.

Server Owner Reference

Installation
Commands & Permissions
Config.yml
Beacon.yml
GUI Reference
All Beacon Effects
All Conditions & Filters
Effect File Structure
Storage Reference

Tutorials

VIP-Only Effects
Custom Recipes
Multi-Tier Economy
MySQL Setup

Player Guide

Getting Started
Managing Beacons
Upgrading Effects
Access Control

Developer Documentation

API Basics
Custom Effects
Team Providers

Clone this wiki locally