PlayTimePulse

一个轻量级、精确的游戏时间追踪器,带有奖励、GUI、预配置和PlaceholderAPI支持。

资源图片
# ⏱️ PlayTimePulse 一个轻量级且准确的 Minecraft 插件,用于跟踪玩家游戏时间,无缝集成 PlaceholderAPI,并提供内置奖励系统,带有可认领的 GUI。 --- ## 🌟 主要功能 - ⏳ **实时游戏时间跟踪** - 准确跟踪每个玩家在你的服务器上的游戏时间 - 🎁 **24+ 游戏时间奖励** - 基于里程碑的奖励,玩家随着游戏时间的增加可以认领 - 📖 **分页奖励 GUI** - 易于浏览的界面,包含多个页面以显示所有奖励 - 🧾 **简单命令** - 用于玩家的 `/playtime` 命令和管理员工具 - 🔌 **PlaceholderAPI 支持** - 通过占位符与流行的插件集成 - 🛡️ **空闲保护** - 防止玩家通过空闲状态作弊 - 💾 **高效数据存储** - 轻量级扁平文件存储,并自动保存 - ⚡ **高性能** - 优化后的代码,不会降低服务器性能 - 🛡️ **奖励错误处理** - 即使命令失败也能防止奖励垃圾信息 - ⚙️ **灵活的配置** - 轻松自定义所有奖励、GUI 和设置 ## 📦 所有功能 - ⏳ 实时游戏时间跟踪(已保存 + 当前会话) - 🧾 `/playtime` 命令: - 显示格式化的游戏时间,例如 `Xd Yh Zm` - 打开 GUI 以认领基于游戏时间的奖励 - 🎁 奖励系统: - 基于里程碑的奖励 (当前配置文件中包含 24 个奖励,未来还会增加更多) - 支持命令 (因为大多数内容都是通过命令给出的) - 通过跟踪保存来阻止重复认领 - GUI 图标支持玩家头颅 (例如,自定义头颅,玩家骷髅头) - 认领奖励时的自定义音效 - 失败命令的错误处理,以防止奖励垃圾信息 - 📖 分页奖励 GUI: - 支持大量奖励的分页 - 可自定义的每页插槽 - 用于在页面之间移动的导航按钮 - 🧭 导航系统: - 前一页/下一页按钮 - 关闭按钮退出 GUI - 可自定义的导航按钮材质和名称 - 可选的导航按钮自定义头颅纹理 - 🛡️ 空闲保护: - 防止空闲农游戏时间 - 可配置的交互阈值和时间窗口 - 跟踪有意义的玩家交互以验证活动 - 🔌 完全支持 PlaceholderAPI - 📊 bStats 集成用于匿名使用统计数据 - 📁 具有自动保存功能的扁平文件存储 - ⚙️ 性能优化且易于配置 --- ## 🔧 命令 | 命令 | 描述 | 权限 | |------------------------------------------------|---------------------------------------------|----------------| | `/playtime` | 显示游戏时间和奖励 GUI | playtime.use | | `/playtime add h [m]` | 向玩家添加游戏时间 | playtime.admin | | `/playtime reset ` | 重置玩家的游戏时间和已认领奖励 | playtime.admin | --- ## 🧩 PlaceholderAPI 支持 | 占位符 | 描述 | |--------------------------------|----------------------------------------------------------| | `%playtime_overall_formatted%` | 总时间(已保存 + 当前会话),格式为 `2d 4h 30m` | | `%playtime_formatted%` | 当前会话仅限,格式化 | | `%playtime_overall%` | 总时间(已保存 + 当前会话),以秒为单位 | | `%playtime_saved%` | 仅保存的游戏时间(以秒为单位) | | `%playtime_current%` | 当前在线会话(以秒为单位) | --- ## 🧪 未来计划 - 🎨 格式化文本的渐变色彩支持 - 🌟 奖励认领的粒子效果 - 🐛 调试模式以方便故障排除 - ➕ 更多功能即将推出 --- ## 📁 配置 - `config.yml`: 定义游戏时间里程碑、奖励(命令)、要求、奖励图标/lore 和音效。 - 每个奖励在认领时可以使用 `claimSound` 参数自定义音效 - 从超过 400 种 Minecraft 音效中选择(例如,`entity.player.levelup`,`block.note_block.pling`) - 所有音效以标准音量 (1.0) 和音调 (1.0) 播放 - 可以使用 `headId` 并带有 Base64 纹理值添加自定义头颅 - 使用 `page` 参数指定奖励应出现在哪个页面上(从 0 开始) - 导航按钮可以使用 `headId` 参数使用自定义玩家头颅 - 可配置 GUI 插槽和每页插槽 - 空闲保护设置: - `interaction-threshold`: 在时间窗口中所需的最小交互次数 - `time-window-minutes`: 用于检查交互的时间窗口(分钟) --- ## 📥 安装 1. 下载最新版本 2. 将 `.jar` 文件放入您的 `/plugins` 文件夹 3. 重启服务器 4. 配置 `config.yml` 以定义奖励/要求。 5. (可选) 安装 [PlaceholderAPI](https://www.spigotmc.org/resources/placeholderapi.6245/) 以使用占位符 --- ## ✅ 要求 - Minecraft: `1.21 up to 1.21.8` - Java: `21+` - 服务器: Paper / Pufferfish / Purpur (其他需要测试) - (可选) PlaceholderAPI --- ## 📊 统计数据 PlayTimePulse 通过 bStats 收集匿名使用统计数据。 这有助于我们了解插件的使用情况,并指导未来的开发。 您可以在 [bStats](https://bstats.org/plugin/bukkit/PlayTimePulse/26638) 上查看插件统计数据。 要选择退出统计数据收集,请在 `/plugins/bStats/config.yml` 文件中将 `enabled` 设置为 `false`。 --- ## 💬 支持 - 📬 [打开一个问题](https://github.com/Souldevhub/PlayTimePulse/issues) - 💻 [Discord](https://discord.gg/6SCAZfENjw)