GeyserMC/README.md

54 lines
3 KiB
Markdown
Raw Normal View History

2020-06-20 21:40:12 +02:00
<img src="https://geysermc.org/img/geyser-1760-860.png" alt="Geyser" width="600"/>
2019-07-24 22:08:28 +02:00
[![License: MIT](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)
2021-07-21 05:19:51 +02:00
[![Discord](https://img.shields.io/discord/613163671870242838.svg?color=%237289da&label=discord)](https://discord.gg/geysermc)
2024-04-08 11:05:48 +02:00
[![Crowdin](https://badges.crowdin.net/e/51361b7f8a01644a238d0fe8f3bddc62/localized.svg)](https://translate.geysermc.org/)
2019-07-24 22:08:28 +02:00
Geyser is a bridge between Minecraft: Bedrock Edition and Minecraft: Java Edition, closing the gap from those wanting to play true cross-platform.
2019-07-08 20:04:39 +02:00
2020-05-14 00:53:13 +02:00
Geyser is an open collaboration project by [CubeCraft Games](https://cubecraft.net).
2019-07-08 20:04:39 +02:00
## What is Geyser?
2019-08-10 19:22:12 +02:00
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!*
2019-07-08 20:04:39 +02:00
Special thanks to the DragonProxy project for being a trailblazer in protocol translation and for all the team members who have joined us here!
2020-05-14 00:53:13 +02:00
1.20.80 Support and Protocol Changes (#4561) * Make evil more harder Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Deregister more unused packets Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Add more unused packets Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Pin protocol to 68dc192 * Correction * Update Protocol * More kicking Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * stop reading when there is no item to read (#9) * Bump protocol Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * 1.20.80 Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Remove unused postinitchannel GeyserServerInitializer * Pull protocol jitpack from cloudburst again * Actually builds Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Bump protocol to fix BossEventPacket & EmotePacket Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Add remove before merge comment Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Bump protocol to fix BlockEntityDataPacket and ignore serverbound BossEventPacket Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Bump protocol & add more illegal/ignored packets Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Remove deprecated packet Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Ignore ClientCacheStatusPacket instead of disallow Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Define static serializers Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Less static class nonsense more correct order Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Remove unused import Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Bump protocol Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Move codec processing to CodecProcessor Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Falsify recipe symetry assumption Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> * Update Protocol for 2 wrong packet IDs & 5 wrong directions * Jitpack protocol from Geyser repo --------- Signed-off-by: Joshua Castle <26531652+Kas-tle@users.noreply.github.com> Co-authored-by: chris <github@onechris.mozmail.com>
2024-04-23 18:16:18 +02:00
### Currently supporting Minecraft Bedrock 1.20.40 - 1.20.80 and Minecraft Java 1.20.4
2019-07-08 20:04:39 +02:00
2019-09-26 05:11:31 +02:00
## Setting Up
2022-03-18 21:01:14 +01:00
Take a look [here](https://wiki.geysermc.org/geyser/setup/) for how to set up Geyser.
2019-12-22 17:09:23 +01:00
[![YouTube Video](https://img.youtube.com/vi/U7dZZ8w7Gi4/0.jpg)](https://www.youtube.com/watch?v=U7dZZ8w7Gi4)
2019-09-26 05:11:31 +02:00
2019-12-22 17:09:23 +01:00
## Links:
2019-08-01 00:48:16 +02:00
- Website: https://geysermc.org
2022-03-18 21:01:14 +01:00
- Docs: https://wiki.geysermc.org/geyser/
2023-03-19 21:24:52 +01:00
- Download: https://geysermc.org/download
- Discord: https://discord.gg/geysermc
- Donate: https://opencollective.com/geysermc
- Test Server: `test.geysermc.org` port `25565` for Java and `19132` for Bedrock
2019-07-08 20:04:39 +02:00
2019-12-22 17:09:23 +01:00
## What's Left to be Added/Fixed
2020-12-12 07:46:29 +01:00
- Near-perfect movement (to the point where anticheat on large servers is unlikely to ban you)
2019-12-22 17:09:23 +01:00
- Some Entity Flags
2019-07-17 20:16:30 +02:00
## What can't be fixed
2022-03-18 21:01:14 +01:00
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](https://wiki.geysermc.org/geyser/current-limitations/) page.
2019-07-08 20:04:39 +02:00
## Compiling
1. Clone the repo to your computer
2022-09-05 05:35:47 +02:00
2. 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.
3. Run `gradlew build` and locate to `bootstrap/build` folder.
2019-07-08 20:04:39 +02:00
## Contributing
2019-09-23 01:06:53 +02:00
Any contributions are appreciated. Please feel free to reach out to us on [Discord](http://discord.geysermc.org/) if
you're interested in helping out with Geyser.
2019-07-17 20:16:30 +02:00
## Libraries Used:
2021-06-01 21:51:01 +02:00
- [Adventure Text Library](https://github.com/KyoriPowered/adventure)
2019-07-17 20:16:30 +02:00
- [NukkitX Bedrock Protocol Library](https://github.com/NukkitX/Protocol)
- [Steveice10's Java Protocol Library](https://github.com/Steveice10/MCProtocolLib)
- [TerminalConsoleAppender](https://github.com/Minecrell/TerminalConsoleAppender)
- [Simple Logging Facade for Java (slf4j)](https://github.com/qos-ch/slf4j)