Skip to content

About

A bridge/proxy allowing you to connect to Minecraft: Java Edition servers with Minecraft: Bedrock Edition.

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

 
 

Repository files navigation

GeyserVanilla

GeyserVanilla is a development fork of Geyser. It replaces MCProtocolLib with the vanilla Minecraft client, including its networking, packet codecs, registries, and item components. The launcher downloads the pinned Java 26.3 client and libraries into a local cache and checks their sizes and SHA-1 hashes. The built Geyser jar does not contain Minecraft classes. English locale files and default skins load from the cached client. Shutdown cancels pending requests for the remote language index. The private loader extends vanilla block-state lookups to preserve custom Java IDs. Vanilla codecs still handle block updates, particles, and entity metadata.

The standalone jar starts and stops successfully with the downloaded client. The plugins for Velocity 4.3.1, BungeeCord build 2111, and ViaProxy 3.4.14 also pass startup and shutdown checks. The Spigot plugin passes these checks on Paper 26.3 build 243. Velocity tests cover injected status requests, styled chat conversion, console commands, and shutdown without stopping the proxy's network workers. BungeeCord tests cover injected status requests, console commands, reload with an existing connection, and shutdown without stopping the proxy's network workers. ViaProxy tests cover native status requests, console commands, host authentication profiles, proxy restart, and shutdown without stopping the proxy's network workers. Paper tests cover injected status requests, commands, styled chat, integrated ping, world block IDs, biome names, decorated-pot components, Geyser reload, and independent plugin shutdown. Automated tests cover native networking, codecs, registry isolation, sparse custom item IDs, custom block palettes, components, and core translation behavior. Fabric 0.19.5 and NeoForge 26.3.0.1-beta dedicated servers also pass runtime isolation checks. These tests cover injected status requests, offline Java login, configuration, chunks, inventory packets, world reads, commands, ping, reload, and independent shutdown. The Fabric and NeoForge clients each pass two LAN publish/unpublish cycles with native Java login, chunks, inventory, and the owner remaining in the world. The game-test suite runs against the host test registries and passes its required cases, including native item defaults and packet coverage. Two optional entity metadata cases still fail for unsupported block and item displays. Bedrock gameplay checks on the standalone jar cover encrypted offline login, spawning, chunks, item and creative inventories, recipes, live block changes, cow metadata, chat, server kick messages, and reconnects. The Java server also confirms player movement and chest-to-hotbar item transfers made through Bedrock packets. These are preview builds. Live Mojang account authentication and additional gameplay scenarios have not been tested.

Build and run the standalone jar with Java 25 or newer. The upstream information below describes Geyser's features and protocol targets, rather than a completed compatibility claim for this fork.

Geyser

License: MIT Discord Crowdin

Geyser is a bridge between Minecraft: Bedrock Edition and Minecraft: Java Edition, closing the gap from those wanting to play true cross-platform.

Geyser is an Open Collaboration project.

What is Geyser?

Geyser is a proxy, bridging the gap between Minecraft: Bedrock Edition and Minecraft: Java Edition servers. The ultimate goal of this project is to allow Minecraft: Bedrock Edition users to join Minecraft: Java Edition servers as seamlessly as possible. However, due to the nature of Geyser translating packets over the network of two different games, do not expect everything to work perfectly!

Special thanks to the DragonProxy project for being a trailblazer in protocol translation and for all the team members who have joined us here!

Supported Versions

Edition Supported Versions
Bedrock 26.40, 26.41, 26.42, 26.43, 26.44, 26.45, 26.50, 26.51, 26.52, 26.60
Java 26.3 (For older versions, see this guide)

Setting Up

Take a look here for how to set up Geyser.

Links:

What's Left to be Added/Fixed

  • Near-perfect movement (to the point where anticheat on large servers is unlikely to ban you)
  • Some Entity Flags

What can't be fixed

There are a few things Geyser is unable to support due to various differences between Minecraft Bedrock and Java. For a list of these limitations, see the Current Limitations page.

Compiling

Run these commands from the repository root with Java 25 or newer:

git submodule update --init --recursive
./gradlew :core:test :vanilla-protocol:test :vanilla-runtime:test :standalone:shadowJar
java -jar bootstrap/standalone/build/libs/Geyser-Standalone.jar --nogui

The build and the first launch need network access to download the pinned client and libraries. Later launches use the cache after the launcher checks each artifact. Standalone uses cache/vanilla as its runtime cache, relative to the launch directory. Velocity uses plugins/Geyser-Velocity/cache/vanilla. BungeeCord uses plugins/Geyser-BungeeCord/cache/vanilla. ViaProxy uses plugins/Geyser/cache/vanilla. Spigot/Paper uses plugins/Geyser-Spigot/cache/vanilla. To change it, pass -Dgeyser.vanilla.cache=/path/to/cache before -jar.

Contributing

Any contributions are appreciated. Please feel free to reach out to us on Discord if you're interested in helping out with Geyser.

Libraries Used:

About

A bridge/proxy allowing you to connect to Minecraft: Java Edition servers with Minecraft: Bedrock Edition.

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages