SyExtract

SyExtract

一款Minecraft红包插件
Paper/Purpur 作者 Shiyuan 支持版本 1.21 - 1.21.11
服务器使用量
未统计
服务玩家数
未统计
下载量
未统计
插件详细介绍

SyExtract

一个适用于 Minecraft Paper/Purpur 1.21 的红包插件,支持 Vault 经济系统。

功能特性

  • 创建红包(设置名称、金额、数量)
  • 每个红包拥有从1开始的唯一数字ID(如1、2、3)
  • GUI界面查看和领取红包
  • GUI中新增"创建红包"按钮,点击后在聊天框依次输入名称、金额、个数即可创建
  • 创建红包后在屏幕上方显示BossBar进度条,实时显示剩余个数
  • 有人领取红包时,自动通知红包发放者(包含领取者名称、红包名称、金额、货币名称)
  • 可配置免税界限:红包总额小于10000免税,大于等于10000收2%税
  • 红包创建1分钟后若未领完,自动给未领取的在线玩家发送可点击的提醒消息
  • 广播消息和提醒消息中的领取按钮可点击直接领取
  • 多语言支持(简体中文/English)
  • Vault经济系统支持
  • 可配置的手续费系统
  • 玩家封禁系统(限制发放/领取红包)
  • 红包过期设置
  • 过期未领取的红包金额自动退还给发放者
  • 服务器重启后红包数据完整保留(包括金额分配和领取记录)
  • 高度可配置

运行要求

  • Minecraft服务端:Paper/Purpur 1.21
  • Java:17或更高版本
  • 依赖:Vault + 任意经济插件(如EssentialsX)

命令

| 命令 | 权限 | 说明 |

| ------------------------------------- | ------------------ | -------------------------- |

| /sye create <名称> <金额> <数量> | syextract.create | 创建红包 |

| /sye open | syextract.open | 打开红包GUI |

| /sye broadcast <红包ID> | syextract.broadcast| 广播红包给所有在线玩家 |

| /sye claim <红包ID> | syextract.claim | 领取指定ID的红包 |

| /sye ban <玩家> <时间> | syextract.ban | 封禁玩家 |

| /sye unban <玩家> | syextract.unban | 解封玩家 |

| /sye reload | syextract.reload | 重载配置 |

命令别名

  • createc
  • openo
  • broadcastbr
  • claimcl
  • banb
  • unbanu
  • reloadr

时间格式

封禁时长支持以下格式

  • 1h - 1小时
  • 1d - 1天
  • 1w - 1周
  • 30d - 30天

权限

| 权限 | 默认 | 说明 |

| ------------------ | ----- | ------------------ |

| syextract.use | true | 基本使用权限 |

| syextract.create | true | 创建红包权限 |

| syextract.open | true | 打开GUI权限 |

| syextract.claim | true | 领取红包权限 |

| syextract.broadcast| true | 广播红包权限 |

| syextract.ban | op | 封禁玩家权限 |

| syextract.unban | op | 解封玩家权限 |

| syextract.reload | op | 重载配置权限 |

| syextract.admin | op | 所有管理权限 |

配置文件

config.yml

# 语言设置
# 可选值: zh (简体中文), en (English)
language: zh

# 红包设置
red-envelope:
  # 红包默认可领取时间(小时)
  default-expire-hours: 24
  # 最小红包金额
  min-amount: 1.0
  # 最小红包数量
  min-count: 1
  # 最大红包数量
  max-count: 100

# 手续费设置(创建红包时收取)
fee:
  enabled: true
  percentage: 0.05
  min-fee: 1.0

# 税收设置(领取红包时收取)
tax:
  # 免税界限:红包总额小于此值则免税
  threshold: 10000
  # 税率:红包总额大于等于免税界限时按此比例收税
  percentage: 0.02

# 经济设置
economy:
  # 货币名称(当Vault未提供时使用)
  currency-name: "金币"

# 提醒设置
reminder:
  # 红包创建后多少秒发送未领取提醒(默认60秒)
  delay-seconds: 60

# GUI设置
gui:
  item-material: "SUNFLOWER"

# 广播消息设置
broadcast:
  envelope-completed: "&6&l🎉 红包通知 &r&7标题为 &e{name} &7的红包被领完了..."

语言文件

插件支持多语言,语言文件位于 plugins/SyExtract/lang/ 目录:

  • zh.yml - 简体中文(默认)
  • en.yml - English

你可以在这些文件中自定义所有消息。切换语言请修改 config.yml 中的 language 选项。

数据存储

插件在 plugins/SyExtract/ 目录下生成以下数据文件:

  • envelopes.yml - 红包数据(包含金额分配和领取记录)
  • bans.yml - 封禁数据
  • lang/ - 语言文件(自动生成)

使用示例

  • 通过命令创建红包
   /sye create 新年红包 1000 10

创建一个名为"新年红包"的红包,总金额1000,分为10份。创建成功后会显示红包ID。

  • 通过GUI创建红包
   /sye open

打开GUI后,点击下方的"创建红包"按钮(下界之星图标),然后在聊天框依次输入名称、金额、个数。

  • 打开GUI领取红包
   /sye open

即使当前没有可领取的红包也可以打开GUI。

  • 广播红包
   /sye broadcast 1

将ID为"1"的红包广播给所有在线玩家,玩家可以点击聊天中的"[立即领取]"按钮领取。

  • 领取指定红包
   /sye claim 1

直接领取ID为"1"的红包。

  • 封禁玩家
   /sye ban 玩家名 7d

封禁玩家7天,期间无法发放和领取红包。

注意事项

  • 创建红包会扣除红包金额 + 手续费
  • 红包采用"切线法"随机分配算法,每个人获得金额的概率完全相同,不存在先领多后领少的问题
  • 过期未领取的红包金额会自动退还给发放者
  • 每个玩家只能领取同一个红包一次
  • 每个红包拥有唯一的数字ID,方便分享和领取
  • 红包总额达到免税界限(默认10000)时,领取金额会被收取税费
  • 服务器重启后红包数据完整保留,包括各份金额和领取记录
  • 红包创建1分钟后若未领完,系统会自动提醒未领取的在线玩家

更新日志

v1.5.0

  • 修复红包金额分配算法:改用"切线法"确保每个人获得金额的概率完全相同,不再出现第一个领取者金额最大的问题
  • 修复服务器重启后红包金额重新生成导致分配错乱的bug(现在会保存和加载金额列表)
  • GUI新增"创建红包"按钮,点击后在聊天框依次输入名称、金额、个数即可创建
  • 创建红包后在屏幕上方显示BossBar进度条,实时显示剩余个数
  • 有人领取红包时自动通知发放者(含领取者名称、红包名称、金额、货币名称)
  • 新增税收系统:可在config.yml中设置免税界限(默认10000)和税率(默认2%)
  • 红包创建1分钟后若未领完,自动给未领取的在线玩家发送可点击的提醒消息
  • 广播消息和提醒消息中的领取按钮现在可以真正点击领取
  • 修复GUI多玩家同时打开时槽位映射冲突的bug
  • 修复领取最后一个红包时发送者名称显示为"Unknown"的bug
  • 新增定期清理过期红包的自动任务
  • 货币名称现在从Vault自动获取,支持在config.yml中配置备用名称

v1.4.0

  • 新增多语言支持(简体中文/English)
  • 语言文件存放在 lang/ 目录
  • 所有消息均可通过语言文件自定义
  • config.yml新增 language 选项

v1.3.0

  • 新增红包领完通知
  • 显示手气王(获得最高金额的玩家)
  • 新增 broadcast.envelope-completed 消息配置

v1.2.0

  • 修复广播消息找不到的问题(success.broadcast)
  • 修复广播消息中领取按钮不可点击的问题
  • 红包ID从随机6字符改为从1开始的顺序数字ID

v1.1.0

  • 为每个红包添加唯一ID
  • 过期未领取的红包自动退款
  • 新增 /sye broadcast 命令广播红包
  • 新增 /sye claim 命令按ID领取
  • 即使没有红包也可以打开GUI
  • 更新至Java 17兼容

v1.0.0

  • 初始版本

作者

测试支持版本
1.21 1.21.11
版本分布
基本信息
插件名称 SyExtract
作者 Shiyuan
平台 Paper/Purpur
支持版本 1.21 - 1.21.11
点赞数 未统计
最近版本
暂无数据 -