1
0
mirror of https://github.com/GeyserMC/Geyser.git synced 2025-12-19 14:59:27 +00:00

Support 1.21.7 (#5633)

* 1.21.7

* Indicate 1.21.92 support

* Bump these versions too
This commit is contained in:
chris
2025-06-30 23:08:24 +02:00
committed by GitHub
parent 30d61735cb
commit d7d819c282
9 changed files with 244 additions and 210 deletions

View File

@@ -15,7 +15,7 @@ The ultimate goal of this project is to allow Minecraft: Bedrock Edition users t
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
Geyser is currently supporting Minecraft Bedrock 1.21.70 - 1.21.90 and Minecraft Java 1.21.6. For more information, please see [here](https://geysermc.org/wiki/geyser/supported-versions/).
Geyser is currently supporting Minecraft Bedrock 1.21.70 - 1.21.92 and Minecraft Java 1.21.7. For more information, please see [here](https://geysermc.org/wiki/geyser/supported-versions/).
## Setting Up
Take a look [here](https://geysermc.org/wiki/geyser/setup/) for how to set up Geyser.

View File

@@ -29,6 +29,7 @@ import org.cloudburstmc.math.vector.Vector3f;
import org.cloudburstmc.protocol.bedrock.packet.AddPaintingPacket;
import org.geysermc.geyser.entity.EntityDefinition;
import org.geysermc.geyser.level.PaintingType;
import org.geysermc.geyser.network.GameProtocol;
import org.geysermc.geyser.session.GeyserSession;
import org.geysermc.geyser.session.cache.registry.JavaRegistries;
import org.geysermc.mcprotocollib.protocol.data.game.Holder;
@@ -77,6 +78,11 @@ public class PaintingEntity extends HangingEntity {
if (type == null) {
return;
}
if (type == PaintingType.DENNIS && !GameProtocol.is1_21_90orHigher(session)) {
type = PaintingType.TIDES;
}
AddPaintingPacket addPaintingPacket = new AddPaintingPacket();
addPaintingPacket.setUniqueEntityId(geyserId);
addPaintingPacket.setRuntimeEntityId(geyserId);

View File

@@ -1322,6 +1322,7 @@ public final class Items {
public static final Item MUSIC_DISC_CREATOR = register(new Item("music_disc_creator", builder()));
public static final Item MUSIC_DISC_CREATOR_MUSIC_BOX = register(new Item("music_disc_creator_music_box", builder()));
public static final Item MUSIC_DISC_FAR = register(new Item("music_disc_far", builder()));
public static final Item MUSIC_DISC_LAVA_CHICKEN = register(new Item("music_disc_lava_chicken", builder()));
public static final Item MUSIC_DISC_MALL = register(new Item("music_disc_mall", builder()));
public static final Item MUSIC_DISC_MELLOHI = register(new Item("music_disc_mellohi", builder()));
public static final Item MUSIC_DISC_STAL = register(new Item("music_disc_stal", builder()));

View File

@@ -84,7 +84,8 @@ public enum PaintingType {
PASSAGE("passage", 4, 2),
POND("pond", 3, 4),
SUNFLOWERS("sunflowers", 3, 3),
TIDES("tides", 3, 3);
TIDES("tides", 3, 3),
DENNIS("dennis", 3, 3);
private static final PaintingType[] VALUES = values();
private final String bedrockName;

View File

@@ -101,6 +101,10 @@ public class ItemRegistryPopulator {
public PaletteVersion(String version, int protocolVersion) {
this(version, protocolVersion, Collections.emptyMap(), (item, mapping) -> mapping);
}
public PaletteVersion(String version, int protocolVersion, Map<Item, Item> javaOnlyItems) {
this(version, protocolVersion, javaOnlyItems, (item, mapping) -> mapping);
}
}
@FunctionalInterface
@@ -131,11 +135,16 @@ public class ItemRegistryPopulator {
itemFallbacks.put(Items.HAPPY_GHAST_SPAWN_EGG, Items.EGG);
itemFallbacks.put(Items.DRIED_GHAST, Items.PLAYER_HEAD);
itemFallbacks.put(Items.MUSIC_DISC_TEARS, Items.MUSIC_DISC_5);
itemFallbacks.put(Items.MUSIC_DISC_LAVA_CHICKEN, Items.MUSIC_DISC_CHIRP);
Map<Item, Item> fallbacks1_21_80 = new HashMap<>();
fallbacks1_21_80.put(Items.MUSIC_DISC_LAVA_CHICKEN, Items.MUSIC_DISC_CHIRP);
fallbacks1_21_80.put(Items.MUSIC_DISC_TEARS, Items.MUSIC_DISC_5);
List<PaletteVersion> paletteVersions = new ArrayList<>(3);
paletteVersions.add(new PaletteVersion("1_21_70", Bedrock_v786.CODEC.getProtocolVersion(), itemFallbacks, (item, mapping) -> mapping));
paletteVersions.add(new PaletteVersion("1_21_80", Bedrock_v800.CODEC.getProtocolVersion(), Map.of(Items.MUSIC_DISC_TEARS, Items.MUSIC_DISC_5), (item, mapping) -> mapping));
paletteVersions.add(new PaletteVersion("1_21_90", Bedrock_v818.CODEC.getProtocolVersion()));
paletteVersions.add(new PaletteVersion("1_21_70", Bedrock_v786.CODEC.getProtocolVersion(), itemFallbacks));
paletteVersions.add(new PaletteVersion("1_21_80", Bedrock_v800.CODEC.getProtocolVersion(), fallbacks1_21_80));
paletteVersions.add(new PaletteVersion("1_21_90", Bedrock_v818.CODEC.getProtocolVersion(), Map.of(Items.MUSIC_DISC_LAVA_CHICKEN, Items.MUSIC_DISC_CHIRP)));
GeyserBootstrap bootstrap = GeyserImpl.getInstance().getBootstrap();

File diff suppressed because it is too large Load Diff

View File

@@ -8,5 +8,5 @@ org.gradle.vfs.watch=false
group=org.geysermc
id=geyser
version=2.8.0-SNAPSHOT
version=2.8.1-SNAPSHOT
description=Allows for players from Minecraft: Bedrock Edition to join Minecraft: Java Edition servers.

View File

@@ -14,7 +14,7 @@ protocol-common = "3.0.0.Beta7-20250619.102015-10"
protocol-codec = "3.0.0.Beta7-20250619.102015-10"
raknet = "1.0.0.CR3-20250218.160705-18"
minecraftauth = "4.1.1"
mcprotocollib = "1.21.6-20250615.123941-7"
mcprotocollib = "1.21.7-20250630.183005-1"
adventure = "4.21.0"
adventure-platform = "4.3.0"
junit = "5.9.2"
@@ -33,15 +33,15 @@ bungeecord = "1.21-R0.1-20250215.224541-54"
velocity = "3.4.0-SNAPSHOT"
viaproxy = "3.3.2-SNAPSHOT"
fabric-loader = "0.16.14"
fabric-api = "0.127.0+1.21.6"
fabric-api = "0.128.1+1.21.7"
fabric-permissions-api = "0.4.0-SNAPSHOT"
neoforge-minecraft = "21.6.0-beta"
neoforge-minecraft = "21.7.0-beta"
mixin = "0.8.5"
mixinextras = "0.3.5"
minecraft = "1.21.6"
minecraft = "1.21.7"
mockito = "5.+"
runtask = "2.3.1"
runpaperversion = "1.21.6"
runpaperversion = "1.21.7"
runvelocityversion = "3.4.0-SNAPSHOT"
# plugin versions