Skip to main content

Commands and Permissions

Command List

Basic Commands

CommandDescriptionPermission
/gmenuOpen the default menugeysermenu.use
/gmenu helpDisplay help informationgeysermenu.use
/gmenu reloadReload configuration filesgeysermenu.reload
/gmenu open <player> <menu>Open a specified menu for a target playergeysermenu.open

Command Parameters

Explanation of parameters for the /gmenu open command:

  • <player>: Target player name
  • <menu>: Menu filename to open (e.g., menu.yml)

Reload Command

When using /gmenu reload to reload the plugin:

  1. Reloads main configuration file
  2. Reloads message configuration
  3. Reloads all menus
  4. Clears variable cache if caching is enabled
Tip

Reloading does not affect players currently using menus.

Permission Nodes

Basic Permissions

Permission NodeDescriptionDefault Value
geysermenu.useAllows using menu commandstrue
geysermenu.reloadAllows reloading plugin configurationop
geysermenu.openAllows opening menus for other playersop
geysermenu.*Allows using all featuresop

Menu permissions are configured in config.yml:

menus:
main:
file: "menu.yml"
enable: true
permission: "geysermenu.menu.main"

shop:
file: "shop.yml"
enable: true
permission: "geysermenu.menu.shop"

All menu permissions automatically become sub-permissions of geysermenu.menu.*. Players with the geysermenu.menu.* permission can use all enabled menus.

GeyserMenu supports multiple menu types, each with different purposes:

Menu TypeDescriptionExample
Main MenuEntry menu, usually contains entries to other submenusmenu.yml
SubmenuSecondary menu opened from main menushop.yml, teleport.yml
Command MenuMenu that executes specific commandsMenu items with command attribute

Command Execution Modes

Commands in menus can be executed in different ways, set through the execute_as attribute:

Execution ModeDescriptionPermission Requirement
playerExecute command as player (default)Player needs permission to execute the command
consoleExecute command as consoleNo player permission required, but must be allowed in security settings
opTemporarily grant player OP permission to execute commandMust be allowed in security settings

Example configuration:

items:
- text: "Teleport to Mine"
icon: "diamond_pickaxe"
icon_type: "java"
command: "warp mine"
execute_as: "player" # Execute as player

- text: "Get Special Item"
icon: "nether_star"
icon_type: "java"
command: "give {player} diamond 1"
execute_as: "console" # Execute as console

Command Security Settings

To protect server security, you can configure command security settings in config.yml:

security:
# List of blocked commands
blocked-commands:
- "op"
- "deop"
- "stop"
- "reload"

# Whether to allow special characters in commands (like & | ; etc.)
allow-special-chars: false
Note

Be extra careful when using execute_as: "console" or execute_as: "op" to ensure commands are not abused.