Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove Geyser Version Dependency #25

Closed
bundabrg opened this issue Dec 9, 2020 · 6 comments
Closed

Remove Geyser Version Dependency #25

bundabrg opened this issue Dec 9, 2020 · 6 comments

Comments

@bundabrg
Copy link
Owner

bundabrg commented Dec 9, 2020

Ideally one should be able to drop GeyserReversion into any version of Geyser and it should just "work". However presently some changes in Geyser will break GeyserReversion as seen in GeyserMC/Geyser#1640 with a simple fix in #24

A fix is:

  • Create submodules for each breaking change from Geyser based upon its commit hash
  • Abstract away from the current way of interfacing with Geyser and instead pass to the appropriate submodule as required
@Hellohi3654
Copy link

Not sure if this has anything to do with this but i'll put it here anyway
Hellohi3654/Geyser#233

@Hellohi3654
Copy link

I believe this is an issue because geyserreversion needs to support bedrock v422

@bundabrg
Copy link
Owner Author

This was resolved through reflection but I'll have a look at the link tonight to see what the issue may be.

@bundabrg
Copy link
Owner Author

I might leave this open as even today I had to make a breaking change with GeyserCommand changing syntax. I'm not sure how important it is that this supports multiple versions of Geyser but I can see future issues when people are running multiple forks of Geyser where some forks have future features OR when GeyserReversion does not yet support the latest Geyser.

May need to think about how to abstract this out in a module system but since Geyser doesn't use versions we'll need reflection to autodetect when to do what.

@jimbt
Copy link

jimbt commented Apr 10, 2021

Wouldn't it be easier and more universally useful to write to the protocol version and not to a Geyser commit? Geyser is undergoing rapid development, but the common goal is support for a (or a few) protocol versions.
I see the ViaVersion and ProtocolSupport are plugins as well so there must be a benefit to that design, but it really would be nice to have a protocol proxy for Bedrock since many (but not all) clients are updated very quickly and it seems the servers are always playing catch up. Just supporting a few recent protocol version would help with client/server compatibility.

@bundabrg
Copy link
Owner Author

Closing this but just a note that I am indeed going to start a new project just dealing with protocol conversion likely as a proxy that sits in front of Geyser (or indeed bedrock itself).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants