GeyserMC / Geyser

A bridge/proxy allowing you to connect to Minecraft: Java Edition servers with Minecraft: Bedrock Edition.
https://geysermc.org
MIT License
4.76k stars 690 forks source link

Impossible to connect to Geyser without logging in an xbox account on client. #1171

Closed roroB20 closed 4 years ago

roroB20 commented 4 years ago

Since recent builds, it's impossible to connect on Geyser server without logging in an xbox account on bedrock client.

I get a message on client which ask me to log in xbox to be able to connect on the server and I get this error on the console: "CLOSED_BY_REMOTE_PEER"

Can you please get back the regular log in which doesn't require an xbox account ?

Java server version : Spigot 1.16.2

Bedrock client version : 1.16.20

Geyser version : Build #343 (Geyser version 1.1.0 (git-master-d6290cc))

Camotoy commented 4 years ago

Thanks for creating an issue. However, Geyser does not officially support offline mode usage. Xbox accounts are free, so there is no reason not to create an Xbox account.

lukebennett commented 4 years ago

There are reasons not to create an Xbox account - I'm trying to set up a LAN server for my kids to use via iPads which is entirely behind the firewall i.e. offline. They don't have Xbox accounts, neither am I prepared to let them have one as I do not want them accessing public servers etc. I have Paper + Geyser running on my Pi4 but am unable to connect to it without the Xbox account. It is interesting to see you say that offline mode usage is not supported, given it's listed as an option in the config file. Is there an unofficial way of setting it if not an official one?

I wholeheartedly support your anti-piracy stance (fully paid up here) but there is a non-piracy element to this and it would be great to find a solution to it.

j5155 commented 4 years ago

Geyser has offline mode in the configuration to let you join servers without access to Mojang's auth servers (i.e. no internet) If you want your kids to join a server with no Xbox account, it might be better to instead get them free ones and either read up on the filters used in the public servers, or use Microsoft parental controls to see if you can remove their access. You mention you have paper running on your pi, you may also want to look into using pihole to just block the domains of those public servers. But sadly, geyser probably will not work without xbox accounts now, or in the future.

lukebennett commented 4 years ago

I don't want them to have an Xbox account in the first place, so any workaround such as filtering is a non-starter unfortunately.

Don't worry though, I figured out the "unofficial" solution so it's all working without the need for an account now 👍🏻

mishailovic commented 4 years ago

I don't want them to have an Xbox account in the first place, so any workaround such as filtering is a non-starter unfortunately.

Don't worry though, I figured out the "unofficial" solution so it's all working without the need for an account now 👍🏻

Can you share the solution with us? I'am running a java pirate server for my friends, and using geyser as a proxy to play on the server while i am not at home. Unfortunately i used different username on my pc, and can't create xbox account with same username

rtm516 commented 4 years ago

Unfortunately i used different username on my pc, and can't create xbox account with same username

You don't need to use the same username, just use the account linking feature in floodgate.

You can use the /linkaccount command in game to link your accounts between Java and Bedrock. Run /linkaccount <Bedrock username> on Java and it will give you a command to run on Bedrock. Make sure to include the Floodgate prefix when using /linkaccount command. (a * if you did not change it) It is a Floodgate feature and more information about it can be found here: https://github.com/GeyserMC/Geyser/wiki/Floodgate

vnt-83 commented 1 year ago

I don't want them to have an Xbox account in the first place, so any workaround such as filtering is a non-starter unfortunately.

Don't worry though, I figured out the "unofficial" solution so it's all working without the need for an account now 👍🏻

Please share the solution.

skbeh commented 8 months ago

As an unofficial solution, setting enable-proxy-connections to true in config.yml disables enforcement of Xbox account and doesn't have any side effect at least on the current codebase.

yadegenn commented 6 months ago

Unfortunately i used different username on my pc, and can't create xbox account with same username

You don't need to use the same username, just use the account linking feature in floodgate.

You can use the /linkaccount command in game to link your accounts between Java and Bedrock. Run /linkaccount <Bedrock username> on Java and it will give you a command to run on Bedrock. Make sure to include the Floodgate prefix when using /linkaccount command. (a * if you did not change it) It is a Floodgate feature and more information about it can be found here: https://github.com/GeyserMC/Geyser/wiki/Floodgate

To make it work, you need to set enable_own_linking to true in the floodgate configuration and in the player-link block under type, you need to select the type of database (you can leave it as is) and set enable_global_linking to false. Next, follow the link to download the required file of the database type you selected like this: floodgate-*type*-database.jar and place this file in the floodgate folder in plugins (plugins/floodgate/this file). This way, you have activated the local mode; originally, it is set to global and for it, you need a license for both the Bedrock and Java versions of the game. Then, proceed according to the instructions I replied to.