A bridge/proxy allowing you to connect to Minecraft: Java Edition servers with Minecraft: Bedrock edition. https://geysermc.org
Find a file
David Choo 9ea22042eb
Fix some item interactions (#3083)
* Remove Bedrock only banner patterns from the creative inventory

* Add sound for tadpole bucket

* Fix lily pad and frogspawn placing on mobile/single stacks

* Workaround? Fix? for bucket usage on mobile

* Simplify math and update position+rotation whenever ServerboundUseItemPacket is sent

* Rotate the player back after using an item and fix glass bottles

* ITEM_USE actionType 1 does not need the rotation fix

Increase delay for look back

* Add some checks

* Prevent buckets and spawn eggs from being unintentionally placed when interacting with special blocks

As of 1.19 Bedrock no longer sends a PlayerActionPacket with action=BLOCK_INTERACT. Bedrock now sends action=ITEM_USE_ON_START before and action=ITEM_USE_ON_STOP after using an item on a block. However, this is not useful as it is sent for all block interactions.

* Fix inventory transactions being rejected after restoreCorrectBlock

The held item's netId is always 0 in the InventoryTransactionPacket.

* Touch ups

* Fix lookAt for different poses and sneaking + cauldron + bucket interactions

Fix boat items being desynced when placing them very close to collision
Fix bottles being desynced when tapping above water

Resend the held item if we do encounter a desync

* Avoid getting blockstate twice and fix comment

* Use generated interaction data

* Fix glass bottles being double filled and phantom water bottles/water buckets

* Don't update the entire inventory on useItem

* Use Geyser's inventory copy for check

* Use ItemTranslator#getBedrockItemMapping to avoid NBT translation

* mappings

Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-06-24 16:48:28 -04:00
.github Update bug_report.yml 2022-04-21 14:23:02 -04:00
.idea/copyright Clean copyright message and update all files (#1053) 2020-07-30 15:10:15 -05:00
ap Bump to 2.0.4-SNAPSHOT 2022-06-07 11:14:58 -04:00
api Bump to 2.0.4-SNAPSHOT 2022-06-07 11:14:58 -04:00
bootstrap Ensure old Paper builds can still use ping passthrough 2022-06-22 22:18:32 -04:00
common Bump to 2.0.4-SNAPSHOT 2022-06-07 11:14:58 -04:00
core Fix some item interactions (#3083) 2022-06-24 16:48:28 -04:00
.gitignore Allow language file overrides 2022-05-15 14:23:52 -04:00
.gitmodules The Great Refactor Part 1 - connector -> core 2021-11-20 13:56:40 -06:00
CONTRIBUTING.md Update grammar, links, deprecations, etc in various text files (#2000) 2021-04-10 00:34:29 -04:00
Jenkinsfile Changed back the Geyser version and use Cumulus 1.1 2022-06-07 00:19:59 +02:00
LICENSE We're in 2022 now 2022-01-01 20:03:05 +01:00
licenseheader.txt We're in 2022 now 2022-01-01 20:03:05 +01:00
pom.xml Bump to 2.0.4-SNAPSHOT 2022-06-07 11:14:58 -04:00
README.md Update README for supported versions 2022-05-26 20:05:29 -04:00

Geyser

forthebadge made-with-java

License: MIT Build Status 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 by CubeCraft Games.

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!

Currently supporting Minecraft Bedrock 1.19 and Minecraft Java 1.19.0.

Setting Up

Take a look here for how to set up Geyser.

YouTube Video

What's Left to be Added/Fixed

  • Near-perfect movement (to the point where anticheat on large servers is unlikely to ban you)
  • Resource pack conversion/CustomModelData
  • Some Entity Flags
  • Structure block UI

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

  1. Clone the repo to your computer
  2. Install Maven
  3. Navigate to the Geyser root directory and run git submodule update --init --recursive. This command downloads all the needed submodules for Geyser and is a crucial step in this process.
  4. Run mvn clean install and locate to the target folder.

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: