Configuration
Floodgate panels are a form-based GUI intended for Bedrock players connected through GeyserMC. They differ from inventory-style panels by presenting options in a structured, form-like interface.
Floodgate panels are ideal when inventory-based GUIs are not supported or don't translate well to Bedrock Edition.
Overview
Floodgate panels use the floodgate
type and present UI components using a simple or custom layout. These panels allow for clean mobile-friendly interaction and command execution through buttons or other visual components.
Each floodgate panel consists of two key sections:
- layout: Controls the arrangement and flow of the form elements
- items: Defines each button or item that appears in the form
Floodgate panels follow a vertical form layout.
Key Features
- Bedrock-Friendly: Designed to display properly for Floodgate (GeyserMC) players.
- Command Buttons: Use components to trigger commands or actions.
- Conditions Support: Show or hide components based on placeholder logic.
- Custom Icons: Use both texture paths and URLs for custom visuals.
- Dynamic Logic Flow: Form logic is processed top-to-bottom with conditional execution.
Configuration Options
Type
Defines this panel as an inventory GUI type.
type: 'inventory'
Title
The GUI title displayed to the player. Placeholders such as %player_name%
or %commandpanels_session_player%
are supported.
title: 'Example Title'
Subtitle
Text displayed under the title and above the buttons. Only shows up when using a Simple Floodgate panel.
New lines can be created by using \n
.
subtitle: 'Example text in the subtitle.'
Conditions
Conditions that have to be met otherwise the item will not show up on the panel
command: 'ban player'
Command
This is the in-game command players use to open the panel. You can include arguments, and reference them using %commandpanels_session_<arg>%
inside the panel. E.g. if the command is example player
, using /example RockyHawk
will open the panel and the placeholder %commandpanels_session_player%
will return "RockyHawk".
command: 'ban player'
Aliases
This will define other commands that can be executed that will still open this panel.
The arguments used in the command will also be used for these aliases too, so if you
have command: 'ban player'
defined, you can use /ban Player
, /mute Player
, /kick Player
, or /warn Player
they will all open the panel the same way.
aliases: ['mute','kick','warn']
Commands
A list of commands to be executed automatically when the panel is opened.
commands:
- '[msg] Panel has been opened'
- '[session] set player RockyHawk'
Order and Flow
The layout:
section defines the vertical order of interaction for Bedrock players. Each number represents a group of components to evaluate in sequence.
In each group, components are evaluated from top to bottom. The first component with a met condition is shown. This enables conditional button display and logic branching.
The panel flows through order keys in numeric order.
Components
Each component defined under items:
can include:
- A display name
- A
condition
to determine visibility - One or more
commands
to run - Buttons have an
icon
using either a resource path or URL - If using a custom panel, each component type will vary slightly
This separation of layout (order
) and logic (components
) allows flexible design without excessive nesting.
Example Behavior
A floodgate panel can show a "Click me" button, or alternatively show a "Condition met" button if the user matches a certain condition. This is done using conditional logic within the components
section and controlling display flow in order
.
If the condition is met for the first component listed, it will display and prevent any following buttons in the same group from rendering. If not, the system moves to the next available match.
Use Case
Floodgate panels are best used for:
- Bedrock players needing mobile-friendly UIs
- Conditional command forms (e.g. permissions-based menus)
- Buttons with visual icons instead of inventory slots
- Simple forms where order and display flow are critical
If your server supports both Java and Bedrock players, Floodgate panels provide a seamless experience when used as a fallback from inventory or dialog panels.