How to Let Bedrock Players Join a Java Server (Geyser Crossplay)
Oct 5, 2026
How crossplay works
Java and Bedrock players normally can't join each other's servers. Two plugins from GeyserMC close the gap: Geyser translates Bedrock's protocol into Java's, and Floodgate lets Bedrock players sign in with their own account, so they don't need to buy Java Edition. The server stays a Java server. Bedrock players just connect to it.
Turning it on in Coalstack
- Select a Paper, Purpur or Spigot server. Vanilla and mod-loader servers aren't supported yet, and the tab explains why.
- Open Networking, then Crossplay.
- Press Enable. Coalstack downloads Geyser and Floodgate from GeyserMC and checks each file against the checksum GeyserMC publishes, refusing anything that doesn't match. If you already installed either plugin from the Marketplace, it is reused rather than duplicated.
- Coalstack also sets Geyser to use Floodgate sign-in. Restart the server to load both plugins.
Letting Bedrock players connect
Geyser listens on UDP port 19132 by default. The Crossplay tab shows the port it actually reads from Geyser's config and has an Open port button that forwards it on your router (uPnP) and adds a firewall rule, like the Port Forwarding tab does. Bedrock players then add your address and that port in Minecraft's server list.
If you also run a Coalstack Bedrock server on 19132, the two clash. Change Geyser's port in plugins/Geyser-Spigot/config.yml.
Bedrock player names
Floodgate puts a dot in front of Bedrock players' names by default, so a player called Steve shows up as .Steve. Use the dotted name when you add them to the allow-list or make them an operator.
Turning it off
Stop the server, then disable Crossplay. Coalstack removes the two plugin jars and leaves their data folders, so Floodgate's key and linked accounts survive if you turn it back on later. Details are in the Networking section of the docs.

