Skip to content

Bedrock (Floodgate)

Running a cross-platform server that accepts Bedrock Edition players through Geyser? uxmEssentials detects those players and, instead of showing them a chest GUI, renders native Cumulus forms — the tidy list-and-button dialogs Bedrock players expect. It all keys off Floodgate, and there is nothing to configure beyond installing the Bedrock stack itself.


What Floodgate Is

  • Geyser lets Bedrock clients connect to a Java server.
  • Floodgate is Geyser's companion that identifies which connected players are Bedrock, so plugins can treat them appropriately.

uxmEssentials uses Floodgate purely for that detection, plus the Cumulus form library Floodgate ships to build native Bedrock UIs.


What uxmEssentials Uses It For

When a Bedrock player opens a menu, the menu engine auto-redirects them away from the chest inventory to a native Cumulus form:

  • A standard menu degrades automatically into a SimpleForm (a scrollable list of buttons).
  • A menu that declares an explicit bedrock {} block renders as a richer CustomForm (with inputs, toggles, sliders, ...).

Java players on the same server keep getting the normal chest GUI. Both audiences are served from the same menu definition — you don't maintain two versions.


Forcing the Chest Path

Some menus rely on real inventory slots (item grids, drag-and-drop). For those, set chest-only = true on the menu so every player — Bedrock included — gets the chest inventory instead of a form.

# in a menu spec: keep this one as a chest for everyone
chest-only = true

When Floodgate Is Absent

On a Java-only server, the Bedrock detector loads none of the org.geysermc classes — the code path is never touched. Every player is treated as a chest-GUI viewer and the plugin behaves exactly as it would on any vanilla Paper install.

Situation Behavior
Floodgate installed, Bedrock player Native Cumulus form (SimpleForm or CustomForm).
Floodgate installed, Java player Normal chest GUI.
No Floodgate (Java-only) Everyone gets the chest GUI; nothing changes.

Setup Checklist

  1. Install Geyser and Floodgate the way you normally would for Bedrock support — that's the whole setup.
  2. No uxmEssentials config is required; form rendering activates on its own.
  3. Add chest-only = true to any menu that must use real inventory slots.

Next Steps