RptFlightEnergy —— 飞行能量 · 每日赠送+货币购买 · 金币/经验双货币 · 防卡飞 [1.21 ~ 26.3]

付费 工具 娱乐 RptFlightEnergy —— 飞行能量 · 每日赠送+货币购买 · 金币/经验双货币 · 防卡飞 [1.21 ~ 26.3] 1.0.0

请登录后获取
版权类型
原创
插件中文名称
RPT飞行
插件英文名称
RptFlightEnergy
原帖地址
#
支持的核心(服务端)
  1. Paper
  2. Folia
语言支持
中文(简体)
适配版本(Java)
  1. 26.x
  2. 1.21

关于这个插件​

RptFlightEnergy 给服务器装一套飞行能量的账。
规则很简单:可用飞行时长 = 每日基础赠送 + 玩家额外购买。

​
  • 每日基础:每天到你配的时刻,自动刷成一份新的基础时长(比如 30 分钟)。
  • 额外购买:玩家在界面里花金币或经验等级买时长,买到的永久留存、永不清零。
  • 飞行时实时扣减,扣到 0 就立刻关闭飞行、把飞行能力收回。扣减顺序是先扣每日基础、再扣购买时长(对玩家最有利)。

它只对你放进白名单的玩家生效(权限 rptfe.use)—— 没这个权限的玩家,插件一点都不碰。所以你可以把它当成"VIP 专属飞行"用,也可以给全服开。
cc6f762b-87b5-4bcf-8d90-ac4a065f6441.webp

功能说明​

1. 能量怎么算、怎么扣​


项规则
可用时长每日基础 + 额外购买
每日基础每天到 reset.daily-at 刷成 flight.daily-base-minutes;当天没用完的作废
额外购买永久留存,永不清零
扣减顺序先扣每日基础,再扣购买时长
扣减频率飞行中每 flight.tick-seconds(默认 1 秒)扣 1 秒
  • 剩余时长低于 flight.warn-seconds(默认 60 秒)时会提示一次「快用完了」。
  • 扣到 0:立刻关闭飞行 + 收回飞行能力,并提示玩家。

2. 飞行中显示剩余时间(Boss 条)​

  • 只要玩家在飞,屏幕上方就会出现一条 Boss 条,实时显示剩余飞行时间,进度条随剩余量缩短,快见底时一眼就知道该落地了。
  • 落地、飞到一半关掉飞行、时长耗尽 —— 条都会自动收起,不占着屏幕。
  • 颜色、分段样式、文字都能在 bossbar 段配(默认蓝色、分段式)。
  • 与聊天提示互补:Boss 条负责"随时可见",聊天栏负责"到点提醒"。

3. 界面:查看与购买​

  • /rptfe menu 打开界面(5 行),排布是金币在左、经验在右、开关居中:
YAML:
■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■
■ 金币档1                经验档1 ■
■ 金币档2   飞行功能开关  经验档2 ■
■ 金币档3                经验档3 ■
■ ■ ■ ■ 返回 ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■

  • 左列三个金币档位(橙色玻璃板)、右列三个经验档位(青色玻璃板),玻璃板上的数字就是该档的分钟数。
  • 中间一格是飞行功能总开关按钮(绿色玻璃 = 已启用 / 灰色玻璃 = 已禁用),点一下就能把"飞行功能"整体禁用或启用;悬停能看到当前状态、可用时长与每日基础/额外购买的明细。禁用后即使还有时长也不能飞(正在飞的话立刻落地),时长不会被扣;这个状态会持久保存,重启服务端后仍然有效。
  • ★ 飞行中屏幕上方有一条 Boss 条,实时显示剩余飞行时间,还会随剩余量缩短 —— 不用打指令、不用开菜单,抬头就能看到还剩多久。落地、禁用飞行、时长耗尽都会自动收起。
  • 底部中间是**「返回 / 关闭」**(箭矢),点一下关掉界面。
  • 鼠标悬停档位看时长与价格,点一下即购买;买完界面会自动刷新,余额立刻更新。
  • 界面里所有点击与拖拽都被拦下,图标拿不走。
  • ★ 界面的全部配置都在独立文件 gui.yml 里(不与运行规则混在一起):用字符矩阵(layout)画格子 —— 空格留空、# 填充、A B C… 按 gui-items 顺序对应各档位,decorations 放固定装饰格(标题 / 开关按钮 / 返回)。档位图标按货币自动配色(金币橙 / 经验青),也能在每条 gui-items 里写 icon 覆盖。想换布局改字符串就行,不用碰代码。
    ★ 注意:字母是按下单顺序排的 —— gui-items 前 3 条是金币档,所以 A B C = 金币 1/2/3、D E F = 经验 1/2/3;要调整哪一档在哪个格子,改 layout 里字母的位置即可。

4. 双货币:金币 / 经验​

  • 每个档位在配置里自己声明用哪种货币:
currency含义
money金币,走 Vault 经济
exp经验等级(就是经验条上的数字,不是经验点)
  • 想两种货币都能买?同一档配两条即可(默认配置里就是这么示范的)。
  • 没装 Vault 时:金币档位会直接拒绝购买并提示;经验档位不受影响,照常可用。

5. 权限白名单​

  • 只有拥有 rptfe.use 的玩家进入这套系统:会按他的剩余时长授予 / 收回飞行能力。
  • 没有 rptfe.use 的玩家,插件完全不碰 —— 不会给他飞行能力,也不会干扰别人给他的飞行。
  • 拥有 rptfe.unlimited 的玩家永远能飞、不扣时长(适合管理组)。

6. 防卡飞行漏洞​

这是本插件最花心思的地方。以下做法都会被自动拉回:

想钻的空子为什么不行
退出游戏时正在飞,重进继续飞每秒都在校正;重进后按其真实剩余时长决定能不能飞
用别的插件 / 指令给自己开飞行每秒校正;只要剩余为 0,飞行能力就会被收回
切创造模式飞,再切回生存切回生存时立即重新按其剩余时长校正
跨世界保留飞行状态换世界后立即重新下发飞行能力
没能量时双击空格起飞PlayerToggleFlightEvent 直接拦掉
死亡重生后白飞重生后立即重新校正

实现上就是每秒对每个受管玩家重新算一遍:飞行就扣、为 0 就收、有剩余就重新下发。另外 join / quit / 切游戏模式 / 换世界 / 死亡重生 / 双击起飞都挂了立即校正,不用等下一秒。
创造模式与旁观模式不受管(本来就允许飞),插件不插手。

支持版本与环境​


项目说明
Minecraft 版本1.21 ~ 26.3(同一个 jar 跨版本,字节码目标 Java 21)
服务端核心Paper、Folia(已声明 folia-supported: true)
Java 运行环境Java 21 及以上
前置插件无必装项。Vault 可选 —— 装了才能用金币买,不装则只有经验档位可用
数据库无外部依赖,使用内嵌 SQLite,不需要 MySQL
编译基线dev.folia:folia-api:26.2.build.1-beta

目标用户​

  • 想给飞行做经济化的服主 —— 飞行不再是免费特权,而是一种可以赠送、可以购买的资源。
  • 想给 VIP 加一项权益的服主 —— 白名单机制天然适合做等级特权。
  • 被"玩家偷飞"烦过的服主 —— 每秒校正,外部给飞行也会被收回。
  • 正在用 Folia 核心的服主 —— 飞行状态读写全部排在玩家自己的区域线程,不会踩线程归属问题。

是否付费​

付费插件。 具体定价与授权方式以资源页「售价」项为准。
  • 插件不含任何联网校验、授权服务器或机器绑定,购买后安装即用,离线环境照常运行。
  • 不区分免费版 / 高级版,买到的就是完整功能(双货币 + 每日基础 + 防卡飞)。
  • 插件未做任何混淆,欢迎安全审查。

获取作者帮助​

途径内容
交流群QQ 群 1124248111
作者 QQ2221899680
游戏内输入 /rptfe help 查看全部指令与说明

使用教程​

安装​

  1. (可选)想支持金币购买就装好 Vault + 一个经济插件;只用经验购买则不需要。
  2. 把 RptFlightEnergy-1.0.0.jar 放进服务端 plugins/ 目录。
  3. 重启服务端(换 jar / 新装插件不支持热加载)。
  4. 首次启动会生成 plugins/RptFlightEnergy/ 下的 config.yml(运行规则)+ gui.yml(界面)+ flight.db(数据)。
  5. 改完 config.yml 或 gui.yml 执行 /rptfe reload 生效,不需要重启服务端。
  6. 记得把要享受飞行的玩家放进白名单:给他们 rptfe.use 权限。
玩家最快的上手方式:/rptfe menu。

指令列表​

指令权限说明
/rptfe menurptfe.use打开飞行能量界面 / 购买时长
/rptfe timerptfe.use查看自己的剩余飞行时长(基础 / 购买 / 合计)
/rptfe time <玩家>rptfe.admin查看某人的剩余飞行时长
/rptfe give <玩家> <分钟>rptfe.admin给某人赠送飞行时长(永久留存)
/rptfe help免权限显示指令帮助
/rptfe reloadrptfe.admin重载 config.yml 与 gui.yml

主指令为 /rptfe,别名 /flightenergy。

权限节点​

默认口径:普通玩家默认没有任何功能权限(避免白嫖),OP 默认全部拥有(服主开箱即用)。
要给普通玩家开放,用权限插件授予即可,例如 LuckPerms:
/lp user <玩家> permission set rptfe.use true
权限默认值说明
rptfe.use仅 OP白名单:受飞行能量管理的玩家(有它才会被授予飞行能力并消耗时长)
rptfe.unlimited仅 OP无限飞行(不消耗时长,也不会被强制关闭)
rptfe.admin仅 OP给他人赠送时长 / 查看他人时长 / 重载

主要配置项​

运行规则看 config.yml,界面看 gui.yml —— 两个文件分开,互不混淆。
config.yml(运行规则)

配置项默认值
说明​
storage.database-fileflight.dbSQLite 数据文件名
flight.daily-base-minutes30每日基础赠送时长(分钟);当天没用完作废
flight.tick-seconds1每秒检测一次飞行并扣减(不建议改大)
flight.warn-seconds60剩余低于多少秒时提示「快用完了」;0 = 不提示
flight.notify-cooldown-seconds10提示冷却,避免刷屏
reset.daily-at"00:00"每日基础刷新时刻(支持非 0 点,如 04:00)

gui.yml(界面)

配置项默认值说明
title / rows见默认文件 / 5界面标题 / 行数 1~6
layout见默认文件界面排布(字符矩阵):空格留空 / # 填充 / A B C… 对应 gui-items 第 1/2/3… 档;不写则按每个档位自己的 slot 摆放
decorations.<键>见默认文件固定装饰格(分类标题 / 飞行功能开关 / 返回):用 symbol(对应 layout 字符)或 slot 定位;action: close 点击即关闭,action: toggle 点击禁用/启用飞行功能
filler白玻璃板填充物(enabled / material / name)
info见默认文件旧版信息牌配置(写了 layout 时以 decorations.state 为准,此段作兜底)
item-lore见默认文件购买档位的说明模板(<minutes>``<price>``<currency>)
bossbar.enabledtrue飞行中是否在屏幕上方显示剩余时长 Boss 条
bossbar.title见默认文件条上的文字(<time> = 剩余时长)
bossbar.colorBLUE条的颜色(PINK/BLUE/RED/GREEN/YELLOW/PURPLE/WHITE)
bossbar.overlayPROGRESS条的分段样式(PROGRESS/NOTCHED_6/NOTCHED_10/NOTCHED_12/NOTCHED_20)
bossbar.capacity-seconds0进度条"满格"参照秒数;0 = 用每日基础时长
gui-items6 个示例档位可购买的档位列表(前 3 个金币、后 3 个经验)

档位字段(gui.yml 的 gui-items 列表里每一项):

字段说明
minutes购买的飞行时长(分钟,必填)
currencymoney(金币,走 Vault)或 exp(经验等级),必填
price价格(金币是金额,经验是等级数),必填
icon图标材质(可选)。不写则按货币自动选玻璃板:money → 橙色玻璃板、exp → 青色玻璃板
name条目名称(MiniMessage)
slot可选:只在没写 layout 时生效(按格号摆放)。写了 layout 就按 layout 里 A B C… 的顺序排

配置写错(时长/价格 ≤ 0、图标名无效)时,只跳过那一条并在控制台告警,其余档位照常工作。
layout 里写了没有对应档位的字母,同样只告警跳过。

常见问题​

  • 玩家飞不起来? 先确认他有 rptfe.use(白名单),并且剩余时长 > 0。
  • 玩家能飞但时长不掉? 三种可能:他是创造/旁观模式(本插件不管)、他有 rptfe.unlimited、或者他不在白名单里(本插件不碰)。
  • 每日基础没用完会攒到明天吗? 不会,当天没用完就作废(这正是"每日赠送"的含义)。但购买时长不清零,会一直留着。
  • 经验扣的是等级还是经验点? 等级(经验条上方那个数字)。想改成按点数扣,需要自己二次开发。
  • 扣减顺序是什么? 先扣每日基础,再扣购买时长 —— 对玩家最有利。
  • 为什么是每秒扣?能更细吗? flight.tick-seconds 可配,但默认 1 秒已经很细,不建议再小。
  • 玩家退游戏能保住飞行状态吗? 不能,重进会按真实剩余时长重新判定 —— 这是防漏洞的一部分。
  • Boss 条什么时候显示? 只在玩家真正飞行中显示;落地、禁用飞行、时长耗尽都会自动收起。不想要就把 gui.yml 里的 bossbar.enabled 设 false。
  • Boss 条满了/一直是满的? 进度条长度按 gui.yml 的 bossbar.capacity-seconds 算,0 = 用每日基础时长。想让它一直满格就写个很大的数(例如 86400)。
  • 菜单中心那个按钮是干什么的? 是飞行功能总开关:点一下把"飞行功能"整体禁用 / 启用(绿玻璃 = 已启用、灰玻璃 = 已禁用)。禁用后即使还有剩余时长也不能飞(正在飞的话立刻落地),时长不会被扣;这个状态会持久保存,重启服务端后仍然有效。
  • 为什么要禁用飞行功能? 比如玩家自己想省着用、或者只想在特定时段飞 —— 关掉就不会误触发扣时长,随时点回来即可。
  • 禁用了会不会掉时长? 不会。禁用期间时长原封不动,重新启用后接着用。
  • 和别的飞行插件冲突吗? 只对 rptfe.use 白名单内的玩家生效,白名单外的玩家本插件一点不碰。
  • 数据在哪、怎么备份? plugins/RptFlightEnergy/flight.db,复制该文件即可备份全部剩余时长与飞行功能开关状态。

声明​

  • 本插件为原创作品,保留所有权利,默认不允许转载与整合。如需转载或整合进服务端整合包,请先通过上方交流群或作者 QQ 联系获取授权。
  • 本插件未使用任何混淆手段,欢迎安全审查。
  • 本插件不含任何后门、病毒或远程控制代码,不含任何联网校验,所有数据仅保存在服务器本地 plugins/RptFlightEnergy/ 目录中。
作者
RPT
查看
108
首次发布
最后更新

评分

0.00 星 0 次评分

RPT 的其他资源

最新更新

  1. 1.0.1版本

    修复&和§老格式码问题!
后退
顶部 底部