Skip to main content

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.