
随时间
一个功能强大且灵活的Minecraft计时器模组。创建自定义计时器,具有屏幕显示和命令执行功能——非常适合小游戏、活动以及服务器自动化任务。
OnTime ⏱️
一个强大且灵活的 Minecraft 计时器模组。创建带有屏幕显示、动态时间表达式、事件触发器和内置 Web 管理面板的自定义计时器——非常适合小游戏、活动、整合包和自动化服务器任务。
 

✨ 功能特性
🕐 计时器系统
- 创建和管理多个命名计时器
- 倒计时和正计时模式
- 随时启动、暂停、恢复、停止、重置和移除计时器
- 在运行中的计时器上添加或覆盖时间
- 计时器在服务器重启后仍然保留,并自动从上次暂停处恢复
- 重复模式 — 将计时器循环固定次数或无限循环,并可选在重复之间设置冷却时间
- 计时器序列 — 链式连接计时器,使当前计时器结束时下一个自动启动,并可选在步骤之间设置冷却时间
- 单计时器独立文件 — 每个计时器存在于独立的
config/ontime/timers/<名称>.json文件中,便于备份和版本控制 - 导出 / 导入 / 克隆 — 使用
/timer export、/timer import、/timer clone在世界或实例之间共享计时器
🧮 动态时间表达式
- 使用数学表达式定义计时器时长,命令执行时即时求值
- 支持
+ - * / %、括号和实时变量:players_online、score(<计分板目标>, <持有者>)、ftb_quest_completed(<ID>)、ftb_reward_claimed(<ID>) - 可用于
/timer expr create、/timer expr set、/timer expr add
🎯 条件与触发器
- 计分板条件 — 当计分板目标达到目标值时结束(或启动)计时器
- 条件表达式 — 完整的布尔 DSL,支持
&&、||、!、>、<、>=、<=、==、!=,以及诸如time_remaining、time_elapsed、players_online、score(...)等值 - 原版事件触发器 — 在
player_death(玩家死亡)、dimension_change(维度切换,任意或特定维度)、advancement(进度,特定ID)时触发计时器 - FTB Quests 触发器 — 通过十六进制 ID 在任务完成或奖励领取时触发
- 每个条件/触发器均可配置为启动或结束相关计时器
🖥️ 服务器控制的显示
- 实时屏幕覆盖层,同步至所有已连接的玩家
- 平滑、抗抖动的客户端渲染 — 计数器像真实挂钟一样更新,无视觉不同步
- 10 个位置预设:Boss 血条、快捷栏上方信息、顶部/居中/底部变体,以及自定义
- 逐玩家可见性控制 — 管理员可为特定玩家显示或隐藏计时器
- 可调节缩放(0.1倍 至 5.0倍)
- 基于剩余时间的动态颜色渐变(可配置阈值和颜色)
- 所有显示设置均由服务器端管理并自动推送给客户端
- 计时器标题 — 计数器上方、下方、左侧或右侧的装饰性文本,支持纯文本或 tellraw 风格的 JSON,按计时器单独设置(
/timer title) - 活动计时器同步至计分板 —
ontime_active目标每秒更新,可与/execute if score配合使用 - Jade 兼容性 — 当计时器与 Jade 的覆盖层重叠时,Jade 会被轻微推开;自动恢复
🔊 音效
- 通过
/timer sound配置滴答音效、音量和音调 - 管理员通过
/timer silent管理每个玩家的音效开关
⚡ 命令执行
- 将任意服务器命令附加到计时器上,在完成时自动执行
- 计划命令 — 在中间时间点触发命令,并可在每个时间点链式执行多条命令,同时保留经典的完成命令功能(
/timer commands) - 命令延迟 — 在按顺序执行的命令之间可配置可选停顿
- 占位符系统:可在命令中使用
{name}、{time}、{seconds}、{ticks}、{target}、{mode}
🌍 Web 管理面板
- 模组自带的 HTTP+SSE 内置仪表板 — 无需额外服务器
- 实时查看所有计时器,启动/暂停/停止/重置,编辑名称/时长/命令/条件,浏览历史记录,更改显示配置
- 闲置 5 分钟后自动关闭(提前 1 分钟向管理员警告);服务器停止时干净关闭
- 按需启停:
/timer webpanel start [端口]、/timer webpanel stop、/timer webpanel info - 默认端口:25580
📋 历史记录
- 每次计时器完成都会记录到
config/ontime/history.json中,包含名称、时长、模式、命令和时间戳 - 可从 Web 面板浏览
⚙️ 配置
- 通过 Cloth Config(Fabric 上还有 ModMenu)提供游戏内配置界面
- JSON 配置文件位于
config/ontime/目录下 - 可选的 WebSocket 服务器,用于外部集成(面板、Discord 机器人)— 在
config.json中启用。默认端口:25581
🔌 API 与集成
- OnTime API — 创建、查询、控制计时器并注册事件回调(
onStart、onFinish、onPause、onResume、onTick) - 外部完成条件 — 注册自定义
Supplier<Boolean>,可从其他模组停止计时器 - 自定义渲染器 API — 从客户端模组完全替换计时器 HUD 渲染器
- LuckPerms 支持 — 每个子命令的按节点权限控制,并为 OP 提供回退
- 入口点系统 — Fabric 入口点和 NeoForge/Forge IMC
- Placeholder API 集成(Fabric)
- FTB Quests 集成(编译期可选,运行时自动检测)
- Jade 集成(运行时自动检测)
🎮 快速命令参考
# 生命周期
/timer create <名称> <时> <分> <秒> [countUp] [命令]
/timer set <名称> <时> <分> <秒>
/timer add <名称> <时> <分> <秒>
/timer start <名称>
/timer pause
/timer stop
/timer reset [名称]
/timer remove <名称>
# 动态表达式(高级)
/timer expr create <名称> <表达式>
/timer expr set <名称> <表达式>
/timer expr add <名称> <表达式>
# 行为
/timer command <名称> [命令]
/timer commands <名称> add <时> <分> <秒> <命令>
/timer commands <名称> add finish <命令>
/timer commands <名称> list | remove <索引> | clear
/timer title <名称> <above|below|left|right> <文本|clear>
/timer title <名称> [clear]
/timer repeat <名称> [次数] [冷却秒数]
/timer sequence <名称> [下一名称|clear] [冷却秒数]
/timer condition <名称> <计分板目标> <分数> [目标] | clear | if <表达式> | if_start <表达式>
/timer trigger <名称> <player_death|dimension_change|advancement|ftb_quest|ftb_reward> [...] [start|finish] | clear
# 共享
/timer export <名称>
/timer import <文件名> [新名称]
/timer clone <源名称> <目标名称>
# Web 面板
/timer webpanel start [端口]
/timer webpanel stop
/timer webpanel info
# 显示
/timer position <预设>
/timer sound <音效ID> [音量] [音调]
/timer scale <数值>
/timer hide [目标]
/timer silent [目标]
# 其他
/timer list
/timer help [页数|命令]
🌐 本地化
支持英语、西班牙语(阿根廷 / 西班牙 / 墨西哥)。
💬 链接
由 MateoF24 创建 — 基于 MIT 许可发布
正在加载版本记录…
正在加载评论…
评论在新手盒子客户端中发表,这里同步展示。