How to Actually Set Up Bedrock Crossplay (Without Breaking Your Server)
For years, the biggest headache in Minecraft multiplayer was the great divide. You had a Java server, but half your friends played on their phones or Xbox. It was miserable. Then Geyser came along and basically reverse-engineered the entire bedrock network protocol to act as a translator.
Setting up Geyser isn't rocket science, but people still mess it up constantly. They drop the plugin in, cross their fingers, and wonder why their console is throwing 400 lines of authentication errors. Let's do it the right way.
Step 1: You Need Geyser AND Floodgate
This is the most common mistake. Geyser translates the packets. Floodgate handles the authentication. If you just install Geyser, Bedrock players will be prompted to log in with a Java account. That defeats the whole purpose.
Drop both Geyser-Spigot.jar and Floodgate-Spigot.jar into your plugins folder. (Or the Paper/Fabric equivalents. Seriously, use Paper.)
Step 2: The Port Forwarding Nightmare
Java uses port 25565. Bedrock uses port 19132.
If you're hosting at home, you have to forward both. If you're using a host (like us), you need to make sure your host gives you a secondary port for Bedrock traffic. At BaoHost, you can just request a network allocation in the Pterodactyl panel.
Once you have your port, open plugins/Geyser-Spigot/config.yml. Find the Bedrock section and change the port from the default 19132 to whatever your host gave you.
Step 3: Enforcing Secure Profiles
Since 1.19, Minecraft has enforced chat signing. This breaks Geyser horribly because Bedrock players don't have Java cryptographic keys. When they try to chat, the server will kick them or shadowban their messages.
You have to open your server.properties and set enforce-secure-profile=false. If you skip this, your Bedrock players are going to have a very frustrating, very silent time.
The Quirks You Should Expect
Geyser is magic, but it's not perfect. Since Bedrock mechanics are slightly different, some things will look weird.
- Combat: Bedrock has no attack cooldown. Java does. Geyser puts a fake cooldown indicator on the Bedrock screen, but spam-clicking will still result in weak Java-style hits.
- Off-hand: Bedrock players can't put everything in their off-hand like Java players can. Geyser fakes this visually, but it can get glitchy.
- Redstone: Bedrock redstone is totally different from Java. Since the server runs Java, all redstone behaves like Java. Bedrock players will just have to adapt.
That's it. Restart the server, tell your Bedrock friends to connect using your server IP and the specific Bedrock port, and you're good to go.