MGUI is a simple and intuitive plugin for organizing server menus in Minecraft. It allows players to easily navigate between servers through a user-friendly graphical interface.
- Install the plugin on all servers that you want to display in the menu.
- Install the plugin on the proxy server (BungeeCord or Velocity).
- Java 16+
- Proxy Server: BungeeCord or Velocity
- Server: Paper 1.16+ (or its forks)
❗ IMPORTANT: The plugin must also be installed on all servers specified in the configuration.
- Asynchronous data transfer between servers.
- Automatic display of currently available servers.
- Real-time server statistics updates.
- Pagination for managing large numbers of servers.
- Support for placeholders via PlaceholderAPI.
- External configuration for unified management across multiple servers.
- Categorization of servers for better organization.
- Fully customizable graphical interface.
- Automatic connection to an available server.
- Localization
MGUI supports multiple languages for more flexible customization and use. You can change the menu language by selecting the appropriate localization.
- 🇺🇸 English (
en) - 🇷🇺 Russian (
ru)
- Open the file
config.yml - Change the value to the desired language code (
enorru)
Example:
configPaths:
settings: 'settings.yml'
gui: 'lang/en/gui.yml' # Change from 'en' to 'ru' to switch language
# For Russian, use:
# gui: 'lang/ru/gui.yml'
configureServers: 'lang/en/configure-servers.yml' # Change from 'en' to 'ru' to switch language
# For Russian, use:
# configureServers: 'lang/ru/configure-servers.yml'- Open the directory lang.
- Create a folder with a short name.
- Move files from another localization and translate, then change the directory path as indicated above.
- Copy the configuration files from the plugin folder (except
config.yml) to a convenient location, such as a shared directory for all servers. - In
config.yml, specify the paths to the copied files relative to the current directory.
Example:
If the file is located at:
Lobby-1/plugins/MGUI/FILE.yml,
specify the path as:
../../../globals/MGUI/FILE.yml
Recommendation: Create a dedicatedglobals/MGUIfolder for all external configurations.
- Open the file
configure-servers.yml. - Add new servers in the following format:
- game: The category for display (e.g., "Mini-Games").
- servers: A nested list of server names in your proxy.
- name: The category name displayed in the menu.
- Open the file
gui.yml. - To change the menu size, modify the parameter:
parameters.size(default:54). - To configure text and placeholders, modify:
items.SERVER.placeholderLines.
- ❗ Important: Ensure the placeholder order matches your
lore. - ❗ Important: Placeholders that were not transferred (do not exist on another server) will not be displayed and the replaced string will be removed from lore.
- Open the file
settings.yml. - Locate the
placeholdersparameter and add the desired placeholders.
Example of a default configuration:To add a new placeholder, such as server uptime, the configuration will look like this:placeholders: '{server_tps}': '%server_tps%'
placeholders: '{server_tps}': '%server_tps%' '{server_uptime}': '%server_uptime%'
- These placeholders will now be sent and used by all servers.
-
/mgui reload— Reloads the configuration (including servers, menu text, and other settings).❗ Important: Configurations are loaded from the paths specified in config.yml. You can change the paths and reload the plugin with this command.
-
/mgui <category>— Opens the server menu for the specified category.
💡 Tip: Use PlaceholderAPI to add unique data (e.g., online players, server status) to the menu.
✨ Enjoy seamless server management with MGUI!