专业咕咕咕
本贴会慢慢更新
综述
一座沟通Minecraft: Bedrock Edition和Minecraft: Java Edition 的桥梁
目前支持Bedrock v1.14.6(0) 和 MC Java v1.15.2 版本
Geyser的目标是通过允许基岩版客户端加入Java版服务器来桥接Minecraft基岩版和Minecraft Java版。 该项目仍在开发中,尚未完成,会有错误和各种BUG。
搭建
基岩版客户端将通过Geyser加入服务器,Geyser将处理所有数据包转换。 Geyser有四种不同的版本:Bukkit的Geyser插件版本(适用于Spigot和Paper等Bukkit的fork),BungeeCord的Geyser插件版本(也适用于Waterfall),Velocity的Geyser插件版本和Geyser独立版。 前三个版本作为插件运行,可以直接像安装插件一样安装到服务器上。 独立版本以类似方式使用,但是需要单独运行独立版的jar文件。
如果正在运行服务器,则强烈建议您使用插件版本的其中一个;如果要加入未安装Geyser的服务器,则需要运行独立版本。 如果您使用翼龙面板,我们有一个单独版本的EGG,请参阅此处了解更多信息。
如果您仍然遇到Geyser无法正常工作的问题,或者出现“无法连接世界”错误,请参阅“常见问题”页面。
有关更多信息,请查看“了解配置”页面和“常见问题”页面。
如果您还有疑问,请随时加入Discord。
插件版本
1. 从CI上下载Geyser的jar文件,下载版本具体取决于您的服务器。
2. 将Geyser的jar文件放在您的plugins文件夹中并启动服务器。
3. 在Geyser的配置文件中配置所有需要的选项。 在大多数情况下,除非打算使用Floodgate或在非25565的端口上运行Java,否则无需更改此文件。
4. 如果需要,请重新启动服务器。
完成后,打开Minecraft基岩版,然后在“朋友”标签中,Geyser的服务器应该出现在此处。 如果未显示,只需使用IP地址添加Geyser为外部服务器即可。
独立版本
请记住,您需要某种计算机或服务器才能运行Geyser Standalone。 Android上的Termux等应用程序虽然能够运行Geyser,但这很大程度上取决于Android设备的性能。 请您自行承担风险。 在Termux上运行Geyser的说明可以在下方找到。
1. 从CI上下载Geyser独立版的jar文件。
2. 为间歇泉创建一个新文件夹,然后将jar文件放到那里。
3. 创建一个新的bat脚本或bash脚本,类似于用于启动Bukkit服务器的脚本,然后查看下方关于创建启动脚本的内容(不翻译了,这都不会开什么服务器?)。
4. 运行bash脚本/bat脚本,这将自动创建所有的Geyser必需文件。
完成后,打开Minecraft基岩版,然后在“朋友”标签中,Geyser的服务器应该出现在此处。 如果未显示,只需使用IP地址添加Geyser为外部服务器即可。
强烈不建议使用Termux在安卓上运行Geyser,故此处不翻译Termux安装教程
常见问题
Geyser是怎么运行的?
Geyser充当一个翻译器,将传入和传出的数据包都进行转换,让客户端和服务器都可以正确的理解。它模拟了Java版的客户端,因此服务器实际上认为您正在使用Java版加入。 无论服务器是什么核心或服务器安装了什么插件,都可以将其与Geyser结合使用(只要服务器支持最新的Minecraft版本(这可以用ViaVersion来实现))。
Geyser不兼容的插件
1. ProtocolSupport有时会导致Floodgate出现问题,错误信息
2. JPremium更改了玩家的UUID,导致Floodgate无法从映射表获取基岩版客户端的数据。
如果还发现其他的插件无法使用,请在Discord进行汇报,或者汇报给我
使用Floodgate时如何将玩家添加到白名单中?
有两种方法可以达到这个目的。 一是使用
在使用Floodgate时,如何查看从来没有加入过服务器的玩家的UUID?
首先,您需要获取玩家的XUID。 有几个第三方网站可以找到该数据,例如,这个网站(与Geyser无关)。 您需要输入玩家的Xbox用户名,然后它就应该以
我可以在翼龙面板上使用Geyser吗?
是的,我们有一个官方的EGG,它支持自动更新,并且所有配置选项都可轻松编辑。 您可以在这里找到它,只需下载json egg并将其导入到面板中即可。
常见错误
通常,人们可能会遇到Geyser未出现在其服务器列表中或类似的问题。 以下内容包含一些您可能会遇到的常见错误,以及可能的修复方法。
Geyser未显示在服务器列表中
这是非常(我在discord解答这问题都烦死了)常见的情况,通常几乎是每次都被问的少数问题之一。
环回限制未解除
这只会影响尝试将Windows 10版本MC和Geyser托管在同一台计算机上的人。
这是由于未取消环回限制引起的问题。 默认情况下,Microsoft Apps在其所有尝试进行本地连接的应用程序上均具有此限制。 您可以通过在Windows PowerShell中以管理员模式键入以下内容来解除它:
在大多数情况下,Geyser应该自动解决此问题,但是在某些情况下您可能不是计算机管理员,因此Geyser无法自动解决此问题。
Geyser没有出现在“朋友”选项卡中
这也是一种常见的情况,Geyser不会总是显示在“朋友”选项卡中,您必须通过“服务器”选项卡手动添加它。 尝试使用
Geyser能在本地访问,但是其他人无法连接
检查您的防火墙设置,并确保防火墙中允许Java程序。
SRV记录无法正常工作
基岩版不支持SRV记录,因此SRV根本不起作用。
在DNS选项或端口转发中使用TCP而不是UDP
基岩版使用UDP而不是TCP,因此如果您之前设置的是TCP则必须更新DNS或端口转发程序。
托管在外部服务器上时只有Java玩家能够连接
这通常与您的服务器提供商有关。 最常见的是,它们没有给端口开放UDP协议,而Minecraft基岩版使用的是UDP协议,而Minecraft Java版本使用的是TCP协议。 解决此问题的一种方法(如果使用的是托管主机(大概是这么翻译))是关闭服务器,然后在选择服务器jar时,选择Nukkit(实际上不会切换到Nukkit)。 之后,打开您的FTP文件管理器并找到Nukkit.jar。 然后,用您正在使用的服务器软件替换此jar。 启动服务器后,它应该通过UDP打开端口,同时仍然允许您使用所需的服务器jar文件。
(简单来说,就是找你的服务商,他们不给开,就想办法骗他们)
请注意:如果服务器在启动时自动重新下载jar,例如使用自动更新系统,则此解决方法将不起作用。 如果这对您不起作用,请与您的服务器提供商联系,因为我们无能为力。
java.net.BindException: Address already in use: bind
这意味着您在配置中指定的端口上正在运行某些内容(可能是另一个Geyser)请确保关闭在此端口上运行的所有应用程序。 有时这是由于您双击了jar而不是使用启动脚本来运行它。 如果您不记得打开过任何东西,通常重新启动计算机即可解决此问题。
登陆失败
当Geyser处于离线模式时,服务器处于正版验证模式(
如果您这样设置配置,简单地说,它将无法正常工作。 如果将Java服务器的身份验证设置为正版验证,则应该以相同的方式配置Geyser。 该服务器需要一个有效的Minecraft Java版帐户,并且如果您没有使用Geyser登录,则将无法加入该服务器。 如果您的配置设置正确,但仍然遇到此问题,则可能是您的登录凭据无效。
Floodgate配置错误
查看下文来获取更多信息
Mojang重置帐户凭据
不幸的是,这是我们无法控制的,最有可能的情况是,您在服务器主机上将Geyser作为插件运行,或者加入了远离您的地理位置的朋友的服务器。 如果您在本地运行Geyser,则不应该遇到这种情况,但是我们建议为服务器使用我们制造的名为Floodgate的插件,该插件可让基岩版客户端无需Java版帐户即可加入您的服务器。 在下文查看更多信息。
Geyser在CraftBukkit上无法运行
Geyser未使用CraftBukkit进行测试,并且Floodgate不会在CraftBukkit上进行加载。 我们建议您使用Paper或Spigot作为服务器软件。
配置介绍
Bedrock部分
基岩端的Geyser配置。 为基岩版如何查看到服务器的配置。
Remote部分
远程(java)服务器的配置。
综述
一座沟通Minecraft: Bedrock Edition和Minecraft: Java Edition 的桥梁
目前支持Bedrock v1.14.6(0) 和 MC Java v1.15.2 版本
Geyser的目标是通过允许基岩版客户端加入Java版服务器来桥接Minecraft基岩版和Minecraft Java版。 该项目仍在开发中,尚未完成,会有错误和各种BUG。
搭建
基岩版客户端将通过Geyser加入服务器,Geyser将处理所有数据包转换。 Geyser有四种不同的版本:Bukkit的Geyser插件版本(适用于Spigot和Paper等Bukkit的fork),BungeeCord的Geyser插件版本(也适用于Waterfall),Velocity的Geyser插件版本和Geyser独立版。 前三个版本作为插件运行,可以直接像安装插件一样安装到服务器上。 独立版本以类似方式使用,但是需要单独运行独立版的jar文件。
如果正在运行服务器,则强烈建议您使用插件版本的其中一个;如果要加入未安装Geyser的服务器,则需要运行独立版本。 如果您使用翼龙面板,我们有一个单独版本的EGG,请参阅此处了解更多信息。
如果您仍然遇到Geyser无法正常工作的问题,或者出现“无法连接世界”错误,请参阅“常见问题”页面。
有关更多信息,请查看“了解配置”页面和“常见问题”页面。
如果您还有疑问,请随时加入Discord。
插件版本
1. 从CI上下载Geyser的jar文件,下载版本具体取决于您的服务器。
2. 将Geyser的jar文件放在您的plugins文件夹中并启动服务器。
3. 在Geyser的配置文件中配置所有需要的选项。 在大多数情况下,除非打算使用Floodgate或在非25565的端口上运行Java,否则无需更改此文件。
4. 如果需要,请重新启动服务器。
完成后,打开Minecraft基岩版,然后在“朋友”标签中,Geyser的服务器应该出现在此处。 如果未显示,只需使用IP地址添加Geyser为外部服务器即可。
独立版本
请记住,您需要某种计算机或服务器才能运行Geyser Standalone。 Android上的Termux等应用程序虽然能够运行Geyser,但这很大程度上取决于Android设备的性能。 请您自行承担风险。 在Termux上运行Geyser的说明可以在下方找到。
1. 从CI上下载Geyser独立版的jar文件。
2. 为间歇泉创建一个新文件夹,然后将jar文件放到那里。
3. 创建一个新的bat脚本或bash脚本,类似于用于启动Bukkit服务器的脚本,然后查看下方关于创建启动脚本的内容(不翻译了,这都不会开什么服务器?)。
4. 运行bash脚本/bat脚本,这将自动创建所有的Geyser必需文件。
完成后,打开Minecraft基岩版,然后在“朋友”标签中,Geyser的服务器应该出现在此处。 如果未显示,只需使用IP地址添加Geyser为外部服务器即可。
强烈不建议使用Termux在安卓上运行Geyser,故此处不翻译Termux安装教程
常见问题
Geyser是怎么运行的?
Geyser充当一个翻译器,将传入和传出的数据包都进行转换,让客户端和服务器都可以正确的理解。它模拟了Java版的客户端,因此服务器实际上认为您正在使用Java版加入。 无论服务器是什么核心或服务器安装了什么插件,都可以将其与Geyser结合使用(只要服务器支持最新的Minecraft版本(这可以用ViaVersion来实现))。
Geyser不兼容的插件
1. ProtocolSupport有时会导致Floodgate出现问题,错误信息
Invalid packet id: 27
,如果这种情况持续发生,建议改用ViaVersion。2. JPremium更改了玩家的UUID,导致Floodgate无法从映射表获取基岩版客户端的数据。
如果还发现其他的插件无法使用,请在Discord进行汇报,或者汇报给我
使用Floodgate时如何将玩家添加到白名单中?
有两种方法可以达到这个目的。 一是使用
/whitelist off
关闭白名单,然后让Geyser玩家加入,然后运行/whitelist add "username"
,然后使用/whitelist on
再次打开白名单。 二是将Floodgate提供的玩家UUID添加到whitelist.json文件,然后运行/whitelist reload
在使用Floodgate时,如何查看从来没有加入过服务器的玩家的UUID?
首先,您需要获取玩家的XUID。 有几个第三方网站可以找到该数据,例如,这个网站(与Geyser无关)。 您需要输入玩家的Xbox用户名,然后它就应该以
xxxxxxxxxxxxxxxx
的格式显示XUID。 为了将XUID转换为Java版可以识别的UUID,您只需要以以下格式放置XUID:00000000-0000-0000-xxxx-xxxxxxxxxxxx
如果格式正确,Java服务器应该接受其为UUID。我可以在翼龙面板上使用Geyser吗?
是的,我们有一个官方的EGG,它支持自动更新,并且所有配置选项都可轻松编辑。 您可以在这里找到它,只需下载json egg并将其导入到面板中即可。
常见错误
通常,人们可能会遇到Geyser未出现在其服务器列表中或类似的问题。 以下内容包含一些您可能会遇到的常见错误,以及可能的修复方法。
Geyser未显示在服务器列表中
这是非常(我在discord解答这问题都烦死了)常见的情况,通常几乎是每次都被问的少数问题之一。
环回限制未解除
这只会影响尝试将Windows 10版本MC和Geyser托管在同一台计算机上的人。
这是由于未取消环回限制引起的问题。 默认情况下,Microsoft Apps在其所有尝试进行本地连接的应用程序上均具有此限制。 您可以通过在Windows PowerShell中以管理员模式键入以下内容来解除它:
代码:
CheckNetIsolation LoopbackExempt -a -n="Microsoft.MinecraftUWP_8wekyb3d8bbwe"
Geyser没有出现在“朋友”选项卡中
这也是一种常见的情况,Geyser不会总是显示在“朋友”选项卡中,您必须通过“服务器”选项卡手动添加它。 尝试使用
localhost
或0.0.0.0
作为IP地址。 如果那不起作用,请使用您的本地IPv4地址。Geyser能在本地访问,但是其他人无法连接
检查您的防火墙设置,并确保防火墙中允许Java程序。
SRV记录无法正常工作
基岩版不支持SRV记录,因此SRV根本不起作用。
在DNS选项或端口转发中使用TCP而不是UDP
基岩版使用UDP而不是TCP,因此如果您之前设置的是TCP则必须更新DNS或端口转发程序。
托管在外部服务器上时只有Java玩家能够连接
这通常与您的服务器提供商有关。 最常见的是,它们没有给端口开放UDP协议,而Minecraft基岩版使用的是UDP协议,而Minecraft Java版本使用的是TCP协议。 解决此问题的一种方法(如果使用的是托管主机(大概是这么翻译))是关闭服务器,然后在选择服务器jar时,选择Nukkit(实际上不会切换到Nukkit)。 之后,打开您的FTP文件管理器并找到Nukkit.jar。 然后,用您正在使用的服务器软件替换此jar。 启动服务器后,它应该通过UDP打开端口,同时仍然允许您使用所需的服务器jar文件。
(简单来说,就是找你的服务商,他们不给开,就想办法骗他们)
请注意:如果服务器在启动时自动重新下载jar,例如使用自动更新系统,则此解决方法将不起作用。 如果这对您不起作用,请与您的服务器提供商联系,因为我们无能为力。
java.net.BindException: Address already in use: bind
这意味着您在配置中指定的端口上正在运行某些内容(可能是另一个Geyser)请确保关闭在此端口上运行的所有应用程序。 有时这是由于您双击了jar而不是使用启动脚本来运行它。 如果您不记得打开过任何东西,通常重新启动计算机即可解决此问题。
登陆失败
当Geyser处于离线模式时,服务器处于正版验证模式(
Access token can not be null or empty
)如果您这样设置配置,简单地说,它将无法正常工作。 如果将Java服务器的身份验证设置为正版验证,则应该以相同的方式配置Geyser。 该服务器需要一个有效的Minecraft Java版帐户,并且如果您没有使用Geyser登录,则将无法加入该服务器。 如果您的配置设置正确,但仍然遇到此问题,则可能是您的登录凭据无效。
Floodgate配置错误
查看下文来获取更多信息
Mojang重置帐户凭据
不幸的是,这是我们无法控制的,最有可能的情况是,您在服务器主机上将Geyser作为插件运行,或者加入了远离您的地理位置的朋友的服务器。 如果您在本地运行Geyser,则不应该遇到这种情况,但是我们建议为服务器使用我们制造的名为Floodgate的插件,该插件可让基岩版客户端无需Java版帐户即可加入您的服务器。 在下文查看更多信息。
Geyser在CraftBukkit上无法运行
Geyser未使用CraftBukkit进行测试,并且Floodgate不会在CraftBukkit上进行加载。 我们建议您使用Paper或Spigot作为服务器软件。
配置介绍
Bedrock部分
基岩端的Geyser配置。 为基岩版如何查看到服务器的配置。
address
:基岩端的Geyser地址。 在大多数情况下,不需要更改此设置。port
:Geyser的运行端口。 默认情况下,基岩版为19132。motd1
:Geyser的MOTD的第一行。motd2
:Geyser的MOTD的第二行。 请记住,只有在“朋友”标签中显示Geyser服务器时,此选项才有效!Remote部分
远程(java)服务器的配置。
address
:您要加入的Minecraft:Java版服务器的地址。port
:您在address部分中指定的Minecraft:Java版服务器的端口。auth-type
:Minecraft:Java版服务器的身份验证类型。 有效选项为online,offline和floodgate。
最后编辑: