GeyserMC / Floodgate

Hybrid mode plugin to allow for connections from Geyser to join online mode servers.
https://geysermc.org
MIT License
563 stars 168 forks source link

Minestom support #271

Open nicolasvac opened 2 years ago

nicolasvac commented 2 years ago

As minestom is rising in popularity for building custom minigame servers, it would be great to have floodgate support built in.

For reference, minestom website: https://minestom.net/

YHDiamond commented 2 years ago

Yea that would kind of require rewriting a stupidly large amount of code... It's not like you can just change a word in a file and it'll just magically work, the way floodgate interacts with the server's auth is made to work with Mojang code (afaik) and minestom says they have zero of mojang's code.

Konicai commented 2 years ago

Minestom still does authentication though. And floodgate on minestom might be cleaner due to a more open API

nicolasvac commented 2 years ago

Minestom does support Mojang Auth, and i see it as an advantage to have completely bloat free and decompiled code from Mojang.

Also in Minestom you have the ability to choose what to implement, so it definetely the could would look much cleaner for the minestom implementation.

Codestech1 commented 1 year ago

Yes, we need it!

Codestech1 commented 1 year ago

We need only floodgate that receives proxy floodgate data, not geyser addon.

tbvns1 commented 1 year ago

I want it too. But I think it would take to rewrite the entire code of floodgate to make it work. So I won't be sad if I learn you don't want to make it.

Camotoy commented 1 year ago

It seems like the primary difference is that Floodgate currently relies heavily on Netty being present in the server, which Minestom does not use. That wouldn't stop anyone from creating something that reads our injected data in the handshake and parsing it properly, though. I don't think it's viable for us to maintain another platform that we aren't familiar with, anyway.

Codestech1 commented 1 year ago

I know, it's hard. But minestom is better for optimization and it's time to move to better server software. You're made floodgate-fabroc then you can make floodgate-minestom too.

Konicai commented 1 year ago

Just because "we can", doesn't mean we should. You've just been told that most of us are not familiar with it, and as a result, it wouldn't be maintained well. The Fabric ports of Geyser and Fabric already suffer more issues because they are lower priority.

Arguing about the priority of this and sounding entitled while doing so isn't going to move this forward anywhere.

Codestech1 commented 1 year ago

I have idea how to make it. It will need be on Proxy and Minestom and will have custom api. It will create custom Form object that can be send in plugin messaging channel via ObjectOutputStream. When proxy reveive custom form object via ObjectInputStream it will be converted to cumulus form and sent to player. If it's possible i will make it. Comming soon! (Sorry for bad English btw)

Codestech1 commented 1 year ago

I made basic floodgate for minestom. https://github.com/HEROOSTECH/Floodgate-Minestom