- 版权类型
- 原创
- 版权链接
- #
- 前置组件
- legacy-script-engine-nodejs(lip install gitea.litebds.com/LiteLDev/legacy-script-engine-nodejs)
SchedTask
一个基于调度的任务管理工具,可以执行服务器命令系统命令可以配置任务是否需要在有玩家在线时才执行,避免对空服务器执行冗余任务。支持通过命令手动重载任务,无需重启服务器。可动态更新任务配置。
指令:
/schedtask reload 重载任务
有玩家在线执行任务——无玩家在线执行一次后不在执行———玩家在线执行任务
支持格式:
- s:5(每隔 5 秒)
- d:12:30(每天 12:30)
- h:3(每 3 小时)
- m:15(每 15 分钟)
- w:2-14:00(每周二 14:00)
- mon:10-08:30(每月 10 日 08:30)
- 标准 Cron 表达式(如 */5 * * * *)
配置 tasks.json 需要手动创建
JSON:
{
"Task1": { // 任务名称
"Schedule": "m:1", // 定时 m:1 每过一分钟执行一次
"PlayerStatus": { // 玩家状态
"Enabled": true, // 开关
"FakePlayer": false, // 假人检测 false 只有假人在线不执行
// true 只有假人在线时仍然执行
"Whitelist": ["bot_.*", "Steve"] // 白名单 在只有白名单玩家在线时不会执行
// 玩家或者假人id 开头的bot_
// 玩家 id Steve 的玩家
},
"Mode": { // 模式
"Type": "ServerCommand", // 服务器命令
"Command": "say Task1 is running!" // 执行的命令
}
},
"Task2": {
"Schedule": "0 12 * * *", // Cron 表达式
"PlayerStatus": {
"Enabled": false
},
"Mode": {
"Type": "SystemCommand", // 系统命令
"Command": "ls" // 执行的命令
}
}
}