Feature: 26.20#6345
Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates Geyser's Bedrock support to feature level 26.20 by bumping protocol dependencies, registering the new Bedrock codec/resources, and adjusting startup/resource handling for the new client version. It fits into the codebase as the version-gating and resource-refresh work needed to keep Bedrock clients compatible with the Java translation layer.
Changes:
- Bump protocol library snapshots and project version, and advertise Bedrock 26.20 support.
- Register the 26.20 Bedrock codec/resources for blocks, items, item components, and biome data.
- Add 26.20-specific session/codec handling, including voxel shapes, server configuration join info, and temporary command-suggestion disabling.
Reviewed changes
Copilot reviewed 11 out of 15 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
gradle/libs.versions.toml |
Updates protocol dependency versions used for the Bedrock 26.20 support work. |
gradle.properties |
Bumps the project snapshot version for the release train. |
core/src/main/resources/bedrock/stripped_biome_definitions.json |
Refreshes stripped Bedrock biome metadata used by the biome registry loader. |
core/src/main/resources/bedrock/item_components.1_26_20.nbt |
Adds item component data for the 26.20 Bedrock palette. |
core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaCommandsTranslator.java |
Changes command translation behavior for Bedrock command suggestions. |
core/src/main/java/org/geysermc/geyser/session/auth/BedrockClientData.java |
Adds newly observed Bedrock client-data fields for party information. |
core/src/main/java/org/geysermc/geyser/session/GeyserSession.java |
Adds 26.20 startup packet handling, voxel shapes, server join info propagation, and soft-enum gating changes. |
core/src/main/java/org/geysermc/geyser/registry/populator/ItemRegistryPopulator.java |
Registers the 26.20 item palette and introduces creative-resource version indirection. |
core/src/main/java/org/geysermc/geyser/registry/populator/CreativeItemRegistryPopulator.java |
Uses the palette’s creative-resource version when loading creative inventory data. |
core/src/main/java/org/geysermc/geyser/registry/populator/BlockRegistryPopulator.java |
Registers the 26.20 Bedrock block palette/protocol pairing. |
core/src/main/java/org/geysermc/geyser/network/GameProtocol.java |
Adds Bedrock 26.20 as a supported protocol/version and exposes a helper gate. |
core/src/main/java/org/geysermc/geyser/network/CodecProcessor.java |
Adjusts codec overrides for protocol 975, including new serializers and packet handling paths. |
README.md |
Documents 26.20 as a supported Bedrock version. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 13 out of 17 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 13 out of 17 changed files in this pull request and generated 5 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Current TO-DO's:
Re-enable command suggestions once they no longer crashgonna do that once it's fixed in cb/protocolAPI 2.9.6:
Additions:
boolean ClientEmoteEvent#silent: Whether emote chat should be shown to other players (Support suppressing Bedrock emote announcements #6291)-
void ClientEmoteEvent#silent(boolean silent)allows toggling whether emotes should be announced, false by default