How to Enable Bedrock/Java Crossplay with Geyser and Floodgate
Let Bedrock players on mobile, console, and Windows Edition join your Java server using the Geyser and Floodgate plugins.
How Geyser Works
Geyser is a protocol translation layer. It sits between your Java server and Bedrock clients, translating Bedrock's network protocol into Java's protocol in real time. Bedrock players connect to a UDP port (default 19132), and Geyser makes them appear as Java players to your server.
Floodgate is a companion plugin that removes the requirement for Bedrock players to have a Java account — they can join using their Xbox/Microsoft account instead.
Both projects are maintained by the GeyserMC team at https://geysermc.org.
Requirements
- A Paper or Spigot server (Geyser also works as a standalone proxy, but the plugin install is simpler)
- UDP port 19132 open (or another port you choose) — contact DustBowl.Games support if you need a UDP port opened
- Java 11 or newer on the server
Step 1: Download the Plugins
- Go to https://geysermc.org/download.
- Download Geyser-Spigot (the plugin version).
- Download Floodgate-Spigot (optional but strongly recommended — removes the Java account requirement for Bedrock players).
Step 2: Install Both Plugins
Upload both .jar files to your plugins/ folder via the WISP file manager, then restart your server. Both plugins will generate their config files in plugins/Geyser-Spigot/ and plugins/floodgate/.
Step 3: Configure Geyser
Open plugins/Geyser-Spigot/config.yml in the WISP file manager. The key section is:
bedrock:
address: 0.0.0.0
port: 19132
broadcast-port: 19132
clone-remote-port: false
motd1: "Your Server Name"
motd2: "Powered by Geyser"
Leave address as 0.0.0.0. Change the port if your host requires it. The motd1 and motd2 lines are what Bedrock players see in their server list.
If you installed Floodgate, also set:
auth-type: floodgate
This tells Geyser to use Floodgate for Bedrock authentication instead of requiring a Java account.
Step 4: Open the Bedrock Port
Bedrock clients connect over UDP, not TCP. Make sure UDP 19132 is open in your server's network settings. If you're unsure whether this port is available on your plan, open a support ticket with DustBowl.Games.
Step 5: Restart and Test
Restart your server. On a Bedrock client (mobile, console, or Windows Edition), go to Add Server and enter your server's IP and port 19132. You should be able to connect.
From the Java console, Geyser will log Bedrock player connections:
[Geyser] Bedrock player BedrockPlayer connected. Java username: .BedrockPlayer
Note the . prefix — Floodgate prefixes Bedrock usernames with a dot (by default) to avoid naming conflicts with Java players.
Limitations
Geyser does its best, but there are some things that don't translate perfectly:
- Some Java-only UI elements (like certain custom inventory GUIs from plugins) may not display correctly for Bedrock players
- A small number of plugins that hook into Java-specific packet data may not work properly for Bedrock clients
- Bedrock players cannot see or interact with Java-only blocks that don't exist in Bedrock (custom modded content)
For most survival/SMP servers these limitations are minor. For heavily plugin-dependent servers, test Bedrock connectivity thoroughly before advertising crossplay.