MythicUpdateLibao ¥30
一个基于 GUI 的多服邮件礼包与附件投递插件,适合补偿、福利、活动奖励和定向发放。
插件介绍
展示名和插件内部名不是同一套
当前目录名是 MythicUpdateLibao,但源码里的插件名、Jar 名、权限节点和命令体系实际都是 MythicMail。也就是说,官网页可以叫 MythicUpdateLibao,但服务器里实际操作请按 /mmail 来。
从源码来看,这个插件的核心功能不是“礼包码”或“普通礼包菜单”,而是一套完整的 多服邮件投递系统。管理员通过 GUI 编写邮件,选择发送给全体玩家、指定玩家、某权限组玩家,或者“发送当时在线的玩家”,并附带物品、Vault 金币、PlayerPoints 点券等奖励。
玩家只需要输入 /mmail 打开收件箱,查看待领取邮件,预览附件与奖励,然后一键领取。管理员则可以进入后台面板发送新邮件、查看历史邮件,并把历史邮件中的附件直接复制回背包里复用。
说人话:这是“服主后台发福利邮件”的系统,不是一次性兑换礼包页面。更适合补偿邮件、节日福利、赞助组奖励、活动补发和跨服统一发放。
适合拿来做什么
开服补偿 / 活动补发
回档补偿、维护补偿、节日福利、活动返奖,都可以直接发到邮件里,不用在线一个个手动给。
权限组定向福利
可以按权限节点发放,例如 VIP、赞助组、测试组、内测组,做分层福利和运营活动很顺手。
在线玩家即时奖励
发送模式里有“在线玩家”快照,发送瞬间在线的人会被记录下来,之后离线了也还能回来领取。
跨服共用邮件箱
所有邮件数据走 MySQL,适合多个子服共用一套邮件奖励数据,不用每个服重复维护。
主要功能
- 多服共享邮件数据,所有邮件、附件、目标玩家和领取记录都保存在 MySQL 中。
- 完整 GUI 操作链路,包括收件箱、写信界面、附件编辑器、历史邮件列表和邮件详情页。
- 四种发送模式:全体玩家、指定玩家、权限组玩家、发送时在线玩家。
- 支持邮件过期,界面内可切换为永久、1 天、3 天、7 天、14 天、30 天。
- 奖励类型完整,一封邮件可以同时附带物品、Vault 金币、PlayerPoints 点券。
- 附件编辑器固定 36 格,管理员可直接拖放物品编辑邮件附件。
- 历史邮件可回溯,管理员能分页查看历史邮件,并把历史附件复制出来复用。
- 登录提醒,玩家进服 2 秒后会自动提示未领取邮件数量。
- 异步数据库流程,发送、读取、统计、领取尽量异步执行,减轻主线程压力。
命令列表
主命令:/mmail,别名:/mythicmail、/mail
| 命令 | 说明 | 权限 |
|---|---|---|
/mmail | 打开玩家自己的收件箱 | mythicmail.use |
/mmail admin | 打开管理员面板 | mythicmail.admin |
/mmail send | 直接打开写信 / 发送邮件 GUI | mythicmail.send |
/mmail history | 查看历史已发送邮件 | mythicmail.history |
/mmail reload | 重载配置文件 | mythicmail.reload |
玩家无参数输入 /mmail 会直接进入收件箱;管理员也可以走 /mmail admin 进入后台,而不是靠复杂子命令切换。
权限节点
| 权限 | 说明 | 默认 |
|---|---|---|
mythicmail.use | 允许玩家打开自己的收件箱 | 所有人 |
mythicmail.admin | 管理员面板入口 | OP |
mythicmail.send | 允许编写并发送邮件 | OP |
mythicmail.history | 查看历史邮件并复制附件 | OP |
mythicmail.reload | 重载配置 | OP |
发送模式
| 模式 | 说明 | 源码行为 |
|---|---|---|
ALL | 全体玩家均可领取 | 每个玩家各自领取一次,未过期且未领取就会出现在收件箱里 |
PLAYER | 指定单个玩家 | 发送时解析玩家名或 UUID,并写入目标玩家表 |
PERMISSION | 指定权限节点 | 不是快照,玩家打开收件箱时按当前生效权限判断是否可见 |
ONLINE | 仅发送瞬间在线的玩家 | 发送时先抓取在线玩家 UUID 快照,之后下线也仍然能回来领取 |
这个区别要写清楚
ONLINE 是“发送时在线的人”,PERMISSION 是“领取时仍满足该权限的人”。两者都像定向发放,但实际触发时机完全不同。
使用教程
安装插件
把 target/mythicmail-1.0.jar 放进服务端 plugins/ 目录,首次启动后会生成 plugins/MythicMail/config.yml。
配置数据库
编辑 config.yml 中的 MySQL 地址、库名、账号密码。插件启动时会自动建表。
打开后台面板
管理员输入 /mmail admin,可以看到“发送新邮件”“历史邮件”“重载配置”三个核心入口。
编写邮件
在 GUI 中依次设置标题、发送模式、目标、过期时间、金币、点券,并进入附件编辑器拖放物品,最后确认发送。
玩家领取
玩家输入 /mmail 打开收件箱,点开邮件详情,预览附件后点击“领取全部”即可。
一个典型流程
例如要给 VIP 玩家发活动礼包:管理员切换到 PERMISSION 模式,目标填 group.vip 或你实际使用的权限节点,放入物品和奖励,设置 7 天过期后发送。符合权限的玩家进服后会收到未领取提示。
GUI 结构
管理员面板
27 格面板,核心按钮只有三个:发送新邮件、历史邮件、重载配置。入口简洁,适合服主直接操作。
写信界面
54 格 GUI,标题、目标、金币、点券通过聊天输入,发送模式与过期时间在 GUI 内循环切换。
附件编辑器
上方固定 36 格可自由拖放附件,下方是保存、清空、返回按钮。保存后附件会写回当前草稿。
玩家收件箱
每页展示 36 封可领取邮件,支持分页,Lore 会显示发送者、模式、剩余时间和附带奖励。
邮件详情页
可预览附件区、邮件信息和奖励信息,并提供“领取全部”和“返回收件箱”按钮。
历史邮件页
管理员可分页查看全部历史邮件,点击后可把该邮件附件副本直接放回背包,用来复用模板或核对内容。
配置文件
配置文件路径:plugins/MythicMail/config.yml
数据库配置
database:
host: 127.0.0.1
port: 3306
database: mythicmail
username: root
password: your_password
pool:
maximum-pool-size: 10
minimum-idle: 2
max-lifetime: 1800000
connection-timeout: 5000
idle-timeout: 600000
基础设置
settings:
login-notify: true
messages:
prefix: '&7[&6邮件系统&7] &r'
new-mail-notify: '&a你有 &e%count% &a封未领取的邮件!使用 &e/mmail &a查看。'
mail-claimed: '&a邮件领取成功!'
inventory-full: '&c你的背包已满,请先清理后再领取。'
按当前源码实际行为来看,附件编辑区固定为 36 格,过期时间由 GUI 内置选项循环切换;因此页面说明以实际界面行为为准,而不是完全按配置模板字段名理解。
数据表
| 数据表 | 作用 |
|---|---|
mythicmail_mails | 邮件主表,记录发送者、标题、模式、奖励、过期时间、创建时间 |
mythicmail_mail_items | 邮件附件表,按槽位保存 Base64 序列化物品 |
mythicmail_mail_targets | 定向目标表,用于指定玩家和在线玩家快照 |
mythicmail_claims | 领取记录表,防止同一玩家重复领取同一封邮件 |
关于 table-prefix
配置模板里虽然出现了 database.table-prefix 字段,但当前 1.0 源码里的建表和查询 SQL 仍然固定使用 mythicmail_*。部署时建议按固定表名理解,不要预期前缀会自动生效。
依赖插件
| 依赖 | 是否必须 | 说明 |
|---|---|---|
| Paper 1.20.1+ | 必须 | 插件基于 Paper API 开发 |
| MySQL 5.7+ | 必须 | 所有邮件与领取记录都依赖数据库存储 |
| Vault | 可选 | 需要发放金币奖励时才有意义 |
| PlayerPoints | 可选 | 需要发放点券奖励时才有意义 |
如果你在邮件里配置了 Vault 金币或 PlayerPoints 点券,但服务器没有装对应依赖,源码里这部分奖励不会真正发放,正式上服前最好先联调一次。
技术信息
| 项目 | 信息 |
|---|---|
| 页面展示名 | MythicUpdateLibao |
| 插件内部名称 | MythicMail |
| 版本 | 1.0 |
| Jar 文件 | target/mythicmail-1.0.jar |
| 服务端 | Paper 1.20.1 |
| Java 版本 | 17+ |
| API 版本 | 1.20 |
| 连接池 | HikariCP 5.1.0 |
| MySQL 驱动 | mysql-connector-java 8.0.33 |
| Vault API | 1.7.1 |
| PlayerPoints | 3.2.7 |
常见问题
plugin.yml、主类、Jar 包、权限节点都统一使用 MythicMail 体系,所以服内实际操作请按 /mmail 来。