XYLogin —— 一款简单但功能强大的新起之秀的登录插件 [正版离线混存]  [Folia支持]

原创 闭源 XYLogin —— 一款简单但功能强大的新起之秀的登录插件 [正版离线混存] [Folia支持] 1.0.4 beta-1

请登录后获取
版权类型
原创
插件中文名称
小雨登录
插件英文名称
XYLogin
原帖地址
#
支持的核心(服务端)
  1. Spigot
  2. Paper
  3. Folia
  4. Purpur
  5. PufferFish
  6. Leaves
  7. 其他核心
语言支持
中文(简体)
前置组件
[packetevents] https://modrinth.com/plugin/packetevents/versions
适配版本(Java)
  1. 1.21
  2. 1.20
  3. 1.19
  4. 1.18
  5. 1.17
  6. 1.16
XYLogin
新起之秀的异步高性能登录插件
Minecraft-1.13+-brightgreen
Database-SQLite%20%7C%20MySQL-blue
Async-✓-success
Folia-%E2%9C%93-success



插件简介

XYLogin 是一款基于新版本 Minecraft 制作的异步高性能登录插件,拥有登录插件所需的全部基础功能。

本插件原为作者私用,现分享给社区!



核心特性

安全加密
  • 支持 SHA256 和 BCRYPT 双加密算法
  • BCRYPT 提供更高安全性(自动加盐)
  • SHA256 提供更快的加密速度
  • 密码长度自定义限制(默认 6-30 位)
  • 登录失败次数限制,防止暴力破解
异步性能
  • 完全异步的数据库操作
  • 玩家数据智能缓存
  • HikariCP 高性能数据库连接池
玩家保护
  • 未登录玩家移动限制
  • 聊天和命令限制
  • 物品栏保护(防止掉落/拾取)
  • 伤害保护(防止受伤/攻击)
  • 方块交互保护
  • 饥饿值冻结
  • 可自定义白名单命令
数据库支持
  • 支持 SQLite
  • 支持 MySQL
  • 一键数据迁移工具(SQLite ↔ MySQL)
游戏体验
  • 登录超时自动踢出
  • 登录后传送到上次位置
  • 未登录玩家隐藏其他玩家
  • 安全出生点检测
管理功能
  • 管理员强制注册/注销账号
  • 管理员修改玩家密码
  • 查看玩家详细信息
正版登录
  • 自动为正版玩家登录/注册
  • 已注册可手动转正版状态


指令与权限

玩家命令
命令别名权限说明用法
/login/l无登录账号/login <密码>
/register/reg无注册账号/register <密码> <确认密码>
/changepassword/cp无修改密码/cp <旧密码> <新密码>
/zhengban/premium无切换正版/zhengban <code>

管理员命令
命令权限说明
/xylogin helpxylogin.admin显示帮助信息
/xylogin reloadxylogin.admin重载配置文件
/xylogin info <玩家>xylogin.admin查看玩家信息
/xylogin register <玩家> <密码>xylogin.admin强制注册玩家
/xylogin unregister <玩家>xylogin.admin注销玩家账号
/xylogin changepassword <玩家> <新密码>xylogin.admin修改玩家密码
/xylogin forcelogin <玩家>xylogin.admin强制玩家登录

数据库迁移命令
命令权限说明
/xymigrate sqlite2mysqlxylogin.admin从 SQLite 迁移到 MySQL
/xymigrate mysql2sqlitexylogin.admin从 MySQL 迁移到 SQLite



功能展示

插件截图




配置文件详解

YAML:
debug:
  # 如果你不知道该设置,请勿修改
  enabled: true
database:
  # 数据库类型: sqlite 或 mysql
  type: sqlite
  # SQLite 设置
  filename: userdata.db
  # MySQL 设置 (当 type 为 mysql 时生效)
  mysql:
    host: localhost
    port: 3306
    database: xylogin
    username: root
    password: ""
    use-ssl: false
  # 连接池设置
  pool:
    max-connections: 10
    connection-timeout: 5000
security:
  # 密码长度限制
  min-password-length: 6
  max-password-length: 30
  # 密码加密算法: SHA256 或 BCRYPT
  # BCRYPT 更安全但性能稍差
  hash-algorithm: SHA256
  # 登录安全
  max-login-attempts: 3 # 最大登录尝试次数
  login-timeout: 60 # 登录超时时间(秒)
  # 会话过期时间(分钟)
  # 525600 = 1年,超时后需要重新登录
  session-timeout: 525600
settings:
  # 未登录玩家限制
  allow-movement: false
  allow-chat: false
  allow-commands: false
  # 白名单命令(未登录也可使用)
  whitelisted-commands:
    - /login
    - /l
    - /register
    - /reg
  # 密码错误踢出
  kick-on-wrong-password: true
  # 未登录玩家,隐藏其他玩家可见
  hide-players-on-join: true
  # 登录后传送到最后位置
  teleport-to-last-location: true
performance:
  # 使用异步数据库操作
  async-database: true
  # 缓存玩家数据
  cache-player-data: true
  # 缓存过期时间(分钟)
  cache-expire-time: 10
world:
  # 默认出生点坐标
  # 格式: 世界名,x,y,z[,yaw,pitch]
  # 示例: world,0,63,0,0,0
  default-spawn: world,0,63,0
# 正版验证设置
# !! 警告: 除非你知道自己在做什么,否则不要修改这些设置 !!
premium:
  # 是否启用正版自动登录
  enabled: true
  # Mojang 验证 API 地址
  # 默认: https://sessionserver.mojang.com/session/minecraft/hasJoined
  # !! 警告: 修改此项可能导致正版验证失败或 "安全问题",不要相信任何公益中转API !!
  api-url: "https://sessionserver.mojang.com/session/minecraft/hasJoined"
  # API 超时时间(毫秒)
  timeout: 5000
  # /zhengban 命令确认超时时间(秒)
  confirm-timeout: 20



安装教程

步骤 1:环境准备
代码:
1. Minecraft 服务端版本:1.16+(建议 1.19.4+)
2. Java 版本:Java 17+
3. 服务端类型:Spigot / Paper / Purpur / Folia

步骤 2:安装插件
代码:
1. 下载 XYLogin.jar
2. 将插件放入服务器的 plugins 文件夹
3. 重启服务器
4. 插件会自动生成配置文件

[/SPOILER]

常见问题 FAQ

Q1: 玩家登录后还是无法移动/聊天?
代码:
A: 可能原因:
   1. 检查控制台是否有错误信息
   2. 确认玩家已成功登录(查看提示消息)
   3. 尝试使用 /xylogin forcelogin <玩家> 强制登录
   4. 重启服务器并重新测试

Q2: 忘记密码怎么办?
代码:
A: 管理员可以:
   1. 使用 /xylogin changepassword <玩家> <新密码> 重置密码
   2. 或者使用 /xylogin unregister <玩家> 注销账号,让玩家重新注册

Q3: 如何从其他登录插件迁移?
代码:
A: 目前支持:
   1. AuthMe 迁移(计划中)
   2. 手动迁移:导出用户数据,转换密码格式后导入
   3. 或者让玩家重新注册

5: BCRYPT 和 SHA256 如何选择?
代码:
A:
   SHA256:
   - 速度快,适合玩家多的服务器
   - 安全性足够应对大部分场景
   - 推荐用于大型服务器

   BCRYPT:
   - 更高的安全性(自动加盐、抗暴力破解)
   - 速度稍慢,但对用户体验影响很小
   - 推荐用于对安全性要求高的服务器



开发计划

  1. ✓ 完成基岩版登录支持(需额外附属插件 XYLogin-BedrockGUI)
  2. ✓ 正版登录支持(Premium/在线模式玩家)
  3. ○ AuthMe 数据迁移工具
  4. ○ 邮箱验证与密码重置功能
  5. ○ 登录日志记录系统
  6. ○ 扩展qq登录/gui登录
BUG
  1. ○ 正版玩家无法看到皮肤(其他玩家视角可见)。
说明:✓ = 已完成 ○ = 开发中 × = 计划中



性能测试

测试环境:
代码:
- 服务器:Paper 1.20.1
- CPU:Intel i7-12700K
- 内存:16GB DDR4
- 数据库:MySQL 8.0
- 测试玩家数:100 个并发登录

测试结果:
操作平均耗时TPS 影响
注册(BCRYPT)~150ms< 0.1
注册(SHA256)~8ms< 0.01
登录验证~10ms< 0.01
会话检查< 1ms几乎无影响



扩展插件

XYLogin-BedrockGUI
  • 为 XYLogin 提供基岩版表单登录界面
  • 支持 Floodgate 和 Geyser
  • 原生表单 GUI,告别聊天栏输入
  • 点击查看详情


作者
Thexiaoyu
价格
80.00金粒
下载
94
查看
1,497
首次发布
最后更新

评分

0.00 星 0 次评分

最新更新

  1. 1.0.4 beta-1

    修复一些线程问题 如果你使用Folia那这个更新务必要更新
  2. 1.0.4

    1. 密码安全性加强 2. 优化了一些问题 3. 修复上次下线点出现丢失的问题 4. 修复正版登录,离线混存问题。
  3. 1.0.3-beta

    1. 新增正版自动登录 2. 新增Folia支持
后退
顶部 底部