Language

GeyserCommandsYML

GeyserCommandsYML

Modrinth

Set your own list of custom command suggestions to be displayed for Geyser (Bedrock) Clients

769 downloads 7 followers updated 13mo ago
latest v1.1-SNAPSHOT Modrinth
Paper Spigot 1.21 – 1.21.5 ManagementOptimizationUtility

GeyserCommandsYML

GeyserCommandsYML is a lightweight plugin designed for servers using Geyser-Spigot to allow better control over the command suggestion list shown to their Bedrock Edition players.

Rather than disabling all of the server command suggestions entirely through the Geyser-Spigot configuration (aka Geyser-Spigot\config.ymlcommand-suggestions: false), this plugin hooks directly into Geyser + Floodgate APIs, letting you define your own custom list of commands only for Bedrock players — avoiding crashes, bloat, or exposing irrelevant commands.


Features

  • ✅ Add your own customizable list of visible commands for Bedrock players.
  • ✅ Prevents the need to disable Geyser's command suggestions globally.
  • ✅ Simple YAML configuration (plugins/GeyserCommandsYML/commands.yml).
  • ✅ Hot-reloading support for external config edits (with controlled player kick).
  • ✅ Very lightweight — simply intercepts PlayerCommandSendEvent and modifies it for Bedrock clients.

Commands

| Command | Description | Permission |
| :--- | :--- | :--- |
| /geysercommands add <command> | Adds a command to the Bedrock command list. | geysercommands.add |
| /geysercommands remove <command> | Removes a command from the Bedrock command list. | geysercommands.remove |
| /geysercommands list | Lists all currently registered Bedrock commands in chat. | geysercommands.list |
| /geysercommands reload | Reloads the plugin configuration and updates the Bedrock command list (forces Bedrock players to reconnect). | geysercommands.reload |

Aliases:
/geysercommandsyml, /gcyml


How it Works

  • On PlayerCommandSendEvent, the plugin:

    • Checks if the player is a Bedrock client (via Geyser/Floodgate APIs).
    • If yes, it clears the default command suggestion list.
    • Then it adds only the commands defined in the plugin's YAML file.
  • The Geyser client pulls the available commands at player join, not dynamically —
    therefore, after running /geysercommands reload, Bedrock players must rejoin to see the updated list.
    (This command automatically kicks Bedrock players with a kind message asking them to rejoin.)

  • Important:

    • In Geyser-Spigot\config.yml, ensure command-suggestions: true is set.
    • The /geysercommands add <command> and /geysercommands remove <command> commands do not kick players.
      • But keep in mind, online Bedrock players won't see updated command lists until they manually leave and rejoin.

Permissions Overview

| Permission | Purpose |
| :--- | :--- |
| geysercommands.add | Allows adding commands to the Bedrock command list. |
| geysercommands.remove | Allows removing commands from the Bedrock command list. |
| geysercommands.list | Allows viewing the current Bedrock command list. |
| geysercommands.reload | Allows reloading the plugin configuration and forcing Bedrock players to reconnect. |

  • If a player lacks the required permission, they will be denied access to the subcommand.
  • Server Operators maintain default command access.

Tested Environments

  • PaperMC 1.21.4 - Build #226: Compatible
  • Geyser-Spigot - Build #816: Compatible
  • Floodgate - Build #116: Compatible

Versions

Release
1.1-SNAPSHOT
paper, spigot · 1.21, 1.21.1, 1.21.2 · 13mo ago
- Add bStats
732
Release
1.0-SNAPSHOT
paper, spigot · 1.21, 1.21.1, 1.21.2 · 13mo ago
Initial release
37

Comments 0

No comments yet. Be the first to share your thoughts.

Download GeyserCommandsYML

Files are served directly from the original source. Modgrid does not host or modify them.