Skip to content

MultiLogin

MultiLogin 是一款服务端插件, 功能是让您的服务器支持正版与多种外置登录共存, 用来连接两个或多个外置验证服务器下的玩家,让他们能在一起玩。

外置登录给服务器提供了类似正版的管理和登录方式,但对于一个拥有 Minecraft 正版账号的玩家来说,正版登录是更加简单方便的选择。如果你是一名服务器管理员,可以考虑选用下面的插件实现这种效果。

此插件专为服务端设计。服务器管理员可参考此文档:GitHub / MultiLogin / wiki

单服务端

我们建议直接参考 MultiLogin 的 GitHub Wiki

若只需要使用 Mojang 和 HelloSkin,仅限创建以下两个文件。

yaml
# Below, only the most basic configuration is provided.
# You can refer to the template file to complete all configurations.

# Please edit before use.
id: 0

name: 'Official'
# Don't change it unless you really want to.
serviceType: OFFICIAL
yaml
# Below, only the most basic configuration is provided.
# You can refer to the template file to complete all configurations.

# Please edit before use.
id: 1

name: 'HelloSkin'
# Don't change it unless you really want to.
serviceType: BLESSING_SKIN
yggdrasilAuth:
  blessingSkin:
    apiRoot: 'https://helloskin.cn/api/yggdrasil'

Velocity Minecraft 1.13 +

1. 配置 Velocity 转发

Modern forwarding 是 Velocity 支持的一种独创格式。它以高效的二进制格式转发所有玩家信息。但是,它仅适用于 Minecraft 1.13 或更高版本。

提示

本文仅会对「为 Velocity modern forwarding 配置 HelloSkin 外置登录」做出说明。

本案例使用 Velocity + Paper + MultiLogin 作为示例。

具体的 Velocity 配置请结合参考 Velocity 文档

  • 对于 Velocity

    • 检查 velocity.toml 文件,确保 online-mode 项的值为 true 👈

      toml
      # Should we authenticate players with Mojang? By default, this is on.
      online-mode = true
  • 对于 Paper 子服

    • 检查子服务器的 server.properties 文件,确保 online-mode 项的值为 false 👈
      这会阻止子服务器对玩家进行身份验证,Velocity 将会承担起对玩家进行身份验证的职责。

    • 检查子服务器的 config/paper-global.yaml 中的 online-mode 项的值为 true 👈
      这个值在任何情况下都应该与 velocity.toml 中的 online-mode 项的值保持一致。

      对于 Paper 1.18.2 或更低版本,online-mode 将会位于 settings.velocity-support.online-mode

      properties
      online-mode=false
      yaml
        velocity:
          enabled: true
          online-mode: true
          secret: '************'

2. 配置 MultiLogin

  • 对于 Velocity

    安装 MultiLogin 插件,并按照 MultiLogin 的官方文档正确配置插件配置文件。

  • 对于子服务器

    仅需在 Velocity 正确配置 MultiLogin 插件即可,无需对子服进行修改。