A powerful and flexible custom GUI system for PocketMine-MP 5.x that allows server administrators to create interactive graphical user interfaces with various actions and customizations.
plugins
folderThe plugin includes all necessary libraries:
plugins/Customgui/config.yml
to configure your database settingsConfigure permissions in your permission plugin:
permissions:
cg.use:
description: "Allows use of /customgui command"
default: true
cg.admin:
description: "Allows access to the GUI management menu"
default: op
Command | Permission | Description |
---|---|---|
/customgui |
cg.use |
Opens the main GUI management menu |
/customgui <gui_name> |
cg.use |
Opens a specific GUI by name |
Access the Management Menu
/customgui
Create a New GUI
Design Your GUI
Add Actions
Add Custom Lore
§a
for green)Execute server commands when players click items.
type: command
command: "spawn"
Teleport players to specific coordinates.
type: teleport
x: 100.5
y: 64
z: 200.5
Open another GUI when players click items.
type: open_gui
gui_name: "shop_menu"
The plugin supports both SQLite and MySQL databases:
database:
type: sqlite
sqlite:
file: customgui.sqlite
worker-limit: 1
database:
type: mysql
mysql:
host: 127.0.0.1
username: your_username
password: your_password
schema: your_database
worker-limit: 2
GUIs are stored as JSON files in the plugin_data/customgui/guis/
directory. Each GUI has its own file with the structure:
{
"0,0": {
"nbt": "item_nbt_data",
"action": {
"type": "command",
"command": "spawn"
},
"lore": {
"title": "Spawn",
"description": "Return to spawn"
}
}
}
If you're upgrading from an older version of the plugin, your GUI data will be automatically migrated from the old resources/guis/
directory to the new plugin_data/customgui/guis/
directory.
If automatic migration doesn't work, you can manually migrate your data:
.json
files from plugins/Customgui/resources/guis/
plugin_data/customgui/guis/
This change was necessary because:
resources/
directory becomes read-onlyCreate a welcome menu with navigation options:
Create an admin panel with management tools:
Player Management
Server Control
Create complex menu systems with multiple levels:
Assign multiple actions to a single item:
{
"action": [
{
"type": "command",
"command": "spawn"
},
{
"type": "teleport",
"x": 100,
"y": 64,
"z": 200
}
]
}