- 版权类型
- 原创
- 插件中文名称
- 存活时间
- 插件英文名称
- #
- 原帖地址
- #
- 支持的核心(服务端)
- Spigot
- Paper
- 语言支持
- 中文(简体)
- 前置组件
- PlaceholderAPI
- 适配版本(Java)
- 1.20
这个插件的想法来源于05以前的Alpha服务器
在05服务器这个是使用命令方块实现的,后来05退出了地球online之后就关掉了服务器
(本人也是除了管理员之外唯一去过05的指令房的好吧

我在前几天想起了这个机制,就把这个做成了插件,还完善了一下
给自己的服务器打个广告,QQ群975130355,想要体验我的插件的也可以进来看看
存活小时 = 存活点数 ÷ (20 × 3600)
2. 管理员专属水蓝色(权限自动生效)
3. 紫色等级玩家自定义选择颜色
4. 新人专属绿色(总时长不足10小时)
5. 系统自动匹配的时长等级颜色(紫色/粉色/金色/白色)
/st time add 玩家名 小时:增加玩家存活时长
/st time sub 玩家名 小时:扣除玩家存活时长
/st time set 玩家名 小时:自定义设定玩家存活时长
在05服务器这个是使用命令方块实现的,后来05退出了地球online之后就关掉了服务器
(本人也是除了管理员之外唯一去过05的指令房的好吧


我在前几天想起了这个机制,就把这个做成了插件,还完善了一下
给自己的服务器打个广告,QQ群975130355,想要体验我的插件的也可以进来看看
一、核心功能
1. 存活时间系统
- 实时统计:每1游戏刻(tick)增加1点存活时间,精准记录玩家在线时长
- 自动颜色:根据玩家累计存活时间等级,自动切换玩家名称显示颜色
- 保护机制:内置重生保护、下线衰减保护机制,避免玩家存活时间清零重置
- 排行榜系统:支持展示全体在线、离线玩家的存活时间排名数据
2. 全方位显示效果
- Tab列表展示:玩家Tab列表名称自带对应等级颜色与存活点数标识
- 头顶浮空字:通过盔甲架实现头顶实时悬浮文字,展示玩家名称与存活点数
- 发光轮廓效果:根据玩家颜色等级,匹配对应色系的实体发光轮廓
- 聊天消息渲染:玩家聊天发言时,名称自动携带对应等级彩色样式
3. 自定义颜色选择系统(新增功能)
- 自动弹窗提示:存活时间超360小时的玩家,首次上线将自动弹出颜色选择GUI界面
- 16种可选配色:提供白色、橙色、品红色、淡蓝色、黄色、黄绿色、粉色、灰色、淡灰色、青色、紫色、蓝色、棕色、绿色、红色、黑色共16种常规颜色
- 管理员专属配色:水蓝色为管理员专属颜色,普通玩家无法选择使用
- 配置开关控制:可通过配置文件config.yml中的prompt-color-selection参数,开启或关闭自动弹窗提示功能
4. TAB插件自动适配配置(新增功能)
- 配置自动同步:插件启动后自动修改TAB插件config.yml配置,无需手动调整
- 优先级排序修正:固定颜色排序优先级,保证显示顺序统一:管理员 > 360小时紫色 > 粉色 > 金色 > 白色 > 绿色
- 自动备份机制:修改TAB配置前自动生成备份文件(config.yml.backup),防止配置丢失
- 配置自动重载:修改完成后自动执行tab重载命令,无需手动重启服务器
5. 第三方插件集成
- TAB插件:自动同步Tab列表玩家颜色、适配排序规则、自动修改并重载配置
- AzuraBoard插件:计分板玩家名称颜色自动同步等级配色
6. 数据管理系统
- SQLite持久化数据库:所有玩家存活数据、配色设置、保护状态全部本地持久化存储
- 自动备份机制:定时自动备份数据库文件,有效防止数据丢失、损坏
- 平滑数据迁移:插件版本更新时,自动检测并补全新增数据字段,无需手动迁移数据
- 异步定时保存:每5分钟异步批量保存全部玩家数据,极低占用服务器性能
二、游戏核心规则
1. 存活时长计算规则
基础计算规则
每1游戏刻(tick)增加1点存活时间,标准换算:1秒 = 20游戏刻 = 20存活点数,最终以小时为单位展示统计数据。下线衰减规则
玩家离线后存活时间会自然衰减,固定衰减标准:每日减少2.5分钟(150秒、3000游戏刻)。例:离线3天,存活时间累计减少7.5分钟。计算公式
存活点数 = 累计游戏刻数 - 离线天数 × 3000刻/天存活小时 = 存活点数 ÷ (20 × 3600)
实例说明
玩家累计游戏时长120小时,离线2天;离线衰减共计5分钟,玩家实际有效存活时间为119小时55分钟。2. 颜色等级规则
等级划分标准
- 新人等级:总游玩时长<10小时,显示绿色,享有新人保护特权
- 普通等级:存活时间<100小时,显示白色,无专属特权
- 金色等级:存活时间≥100小时,显示金色,享有40小时重生保护
- 粉色等级:存活时间≥160小时,显示粉色,享有60小时重生保护
- 紫色等级:存活时间≥360小时,显示紫色,解锁16种自定义配色权限
- 管理员等级:拥有管理员权限,专属水蓝色,不受时长等级限制
颜色生效优先级(从高到低)
1. 管理员手动自定义颜色(最高优先级,指令强制覆盖)2. 管理员专属水蓝色(权限自动生效)
3. 紫色等级玩家自定义选择颜色
4. 新人专属绿色(总时长不足10小时)
5. 系统自动匹配的时长等级颜色(紫色/粉色/金色/白色)
特殊说明
水蓝色为管理员专属配色,普通玩家无法选择;管理员可通过指令强制修改任意玩家颜色;360小时以上紫色玩家可自由切换16种常规配色。3. 重生保护机制规则
保护触发标准
- 金色玩家(100-160小时):死亡重生后,存活时间保底恢复至40小时,保留金色配色,享有40小时保护时长
- 粉色玩家(160-360小时):死亡重生后,存活时间保底恢复至60小时,配色降级为金色,享有60小时保护时长
- 紫色玩家(360小时以上):死亡重生后,存活时间保底恢复至60小时,配色降级为金色,享有60小时保护时长
触发条件
玩家死亡重生时,若存活时间跌落对应等级阈值,自动触发保底保护,避免时长归零。保护限制规则
保护机制仅可连续触发1次;首次触发可保底恢复时长,二次触发则保护失效,存活时间直接归零。金名转正机制
触发保护后,玩家重新累计存活时长至100小时即可完成转正,保护触发计数清零,可再次享受保护机制。流程示例
玩家初始110小时金色等级 → 首次重生时长跌落至20小时 → 保护触发恢复至40小时 → 重新累计至100小时完成转正 → 二次重生时长跌落30小时 → 保护次数耗尽,时长直接归零。4. 颜色选择规则
解锁条件
仅存活时间≥360小时的紫色等级玩家,可解锁自定义颜色选择功能。可选16种配色(禁用管理员水蓝色)
白色、橙色、品红色、淡蓝色、黄色、黄绿色、粉色、灰色、淡灰色、青色、紫色、蓝色、棕色、绿色、红色、黑色选择流程
1. 玩家首次达标360小时上线,自动弹出颜色选择GUI;2. 点击对应羊毛方块即可选定配色;3. 系统自动保存玩家自定义颜色数据;4. 弹出确认提示并关闭界面。重新设置方式
玩家可随时输入/st color指令重新打开配色界面;管理员可通过/st setcolor指令强制修改任意玩家配色。5. 超级管理员权限规则
权限定义
超级管理员为配置文件单独绑定UUID的特殊权限,普通OP不默认拥有该权限,仅超级管理员可操作玩家存活时间相关敏感指令。配置方式
在config.yml的super-admins节点下,添加对应玩家UUID即可授权超级管理员权限。专属管理指令
/st reset 玩家名:重置玩家存活时间至归零/st time add 玩家名 小时:增加玩家存活时长
/st time sub 玩家名 小时:扣除玩家存活时长
/st time set 玩家名 小时:自定义设定玩家存活时长
安全验证机制
执行敏感指令时,系统严格校验操作者UUID,非配置内超级管理员(即使是OP)会被拒绝操作,并提示「只有超级管理员才能执行此命令!」。所有时长修改操作均会记录日志,防止作弊与误操作。UUID获取方式
1. 游戏内输入/st check查看个人UUID;2. 访问mcuuid.net网站查询玩家UUID;3. 查看服务器玩家登录日志获取UUID。三、全部指令列表
1. 玩家通用指令
- /st、/st help:查看插件帮助信息,权限:survivaltime.check
- /st check:查看个人当前存活时间,权限:survivaltime.check
- /st stats:打开详细数据统计面板,权限:survivaltime.check
2. 管理员专属指令
- /st check 玩家名:查询指定玩家存活数据,权限:survivaltime.admin
- /st reset 玩家名:重置指定玩家存活时间,权限:survivaltime.admin
- /st reload:重载插件配置文件,权限:survivaltime.admin
- /st setcolor 玩家名 颜色名:强制设置玩家自定义颜色,权限:survivaltime.admin
- /st clearcolor 玩家名:清除玩家自定义配色,恢复自动配色,权限:survivaltime.admin
- /st backup create:手动创建数据库备份,权限:survivaltime.admin
- /st backup list:查看全部数据库备份文件,权限:survivaltime.admin
- /st backup restore 备份名:恢复指定备份数据,权限:survivaltime.admin
四、PlaceholderAPI变量大全
1. 基础时间变量
- %survivaltime_time_hours%:玩家存活小时数
- %survivaltime_time_days%:玩家存活天数
- %survivaltime_time_ticks%:累计游戏刻数
- %survivaltime_time_points%:存活总点数(与刻数同步)
2. 等级颜色变量
- %survivaltime_level%:当前等级中文名称
- %survivaltime_color%:当前配色名称
- %survivaltime_color_code%:MC彩色代码
3. 排行榜变量
- %survivaltime_rank%:玩家个人当前排名
- %survivaltime_top_1%~%survivaltime_top_10%:存活时间第1-10名玩家信息
4. 状态检测变量
- %survivaltime_is_beginner%:是否为新人玩家
- %survivaltime_is_gold%:是否达到金色等级
- %survivaltime_is_pink%:是否达到粉色等级
- %survivaltime_is_protected%:是否处于保护状态
- %survivaltime_protection_count%:保护机制已触发次数
- %survivaltime_protection_status%:保护状态文字描述
五、配置文件说明(config.yml)
基础配置项
- async-save-interval:数据异步保存间隔,默认5分钟
- backup.enabled:是否开启数据库自动备份
- backup.interval:自动备份周期,默认1小时
- backup.keep-count:最大保留备份文件数量,默认10份
等级阈值配置(单位:小时)
- thresholds.gold:金色等级阈值,默认100小时
- thresholds.pink:粉色等级阈值,默认160小时
- thresholds.beginner:新人等级阈值,默认10小时
保护机制配置
- protection.gold-protection-time:金色等级保底保护时长,默认40小时
- protection.pink-protection-time:粉色等级保底保护时长,默认60小时
- protection.max-protection-count:最大保护触发次数,默认1次
颜色配置
- colors.default:普通玩家默认颜色(白色)
- colors.beginner:新人玩家颜色(绿色)
- colors.gold:金色等级颜色
- colors.pink:粉色等级颜色
- colors.admin:管理员专属颜色(水蓝色)
第三方插件集成开关
- integration.tab:是否启用TAB插件适配,默认开启
- integration.sweetchat:是否启用SweetChat配色同步,默认开启
- integration.azuraboard:是否启用AzuraBoard计分板同步,默认开启