活动日程表

活动日程表

一个灵活的事件调度器,可在特定时间或间隔自动分发奖励并执行命令。

杂项

事件调度器

一个强大而灵活的 Hytale 服务器事件调度插件,可在指定时间或间隔自动分发奖励并执行命令。

功能特性

🕐 双调度系统

  • 间隔事件:每隔 X 秒执行命令(例如:每小时奖励)
  • 定时事件:每天在特定时间触发事件(例如:09:00、12:00、18:00)

⚙️ 高度可配置

  • 基于 JSON 的配置系统
  • 启用/禁用单个事件
  • 可自定义时区(默认:GMT/伦敦)
  • 带自定义前缀的广播消息
  • 每个事件可配置多条命令

🎁 奖励分发

  • 自动向所有在线玩家发放物品
  • 向玩家发送自定义消息
  • 支持所有 Hytale 物品(武器、工具、护甲等)

🛠️ 管理命令

  • /events - 列出所有已配置的事件及其状态
  • /eventstrigger --eventName <名称> - 手动触发任意事件
  • /eventsreload - 无需重启服务器即可重新加载配置

🔧 高级选项

  • 事件触发所需的最低玩家数量
  • 连续事件之间的冷却时间
  • 调试模式(用于故障排查)
  • 手动触发事件(用于测试)

配置示例

{
    "broadcastPrefix": "[Events] ",
    
    "intervalEvents": [
        {
            "name": "hourly_reward",
            "enabled": true,
            "interval": 3600,
            "commands": [
                "give Weapon_Sword_Cobalt"
            ],
            "broadcastMessage": "每小时奖励!钴剑已分发给所有玩家!"
        },
        {
            "name": "bonus_tools",
            "enabled": false,
            "interval": 7200,
            "commands": [
                "give Tool_Pickaxe_Crude",
                "give Tool_Hatchet_Crude"
            ],
            "broadcastMessage": "额外奖励!已分发镐和斧头!"
        }
    ],
    
    "scheduledEvents": [
        {
            "name": "morning_reward",
            "enabled": true,
            "times": ["09:00", "12:00", "18:00", "21:00"],
            "commands": [
                "give Weapon_Sword_Crude",
                "give Tool_Pickaxe_Crude"
            ],
            "broadcastMessage": "每日奖励时间!已分发剑和镐!"
        },
        {
            "name": "midnight_bonus",
            "enabled": true,
            "times": ["00:00"],
            "commands": [
                "give Weapon_Staff_Cobalt",
                "message 你获得了午夜奖励!"
            ],
            "broadcastMessage": "午夜奖励!你获得了一把钴法杖!"
        }
    ],
    
    "settings": {
        "timezone": "Europe/London",
        "debugMode": false,
        "minPlayersRequired": 0,
        "cooldownBetweenEvents": 0
    }
}

支持的命令

  • give <物品ID> - 向所有玩家发放一个物品
  • message <文本> - 向所有玩家发送一条消息

安装方法

  1. 下载最新的 .jar 文件
  2. 将其放入服务器的 mods 文件夹
  3. 启动/重启服务器
  4. mods/EventScheduler/events.json 中配置事件
  5. 使用 /eventsreload 应用更改

权限

默认情况下,所有命令需要 OP 权限。

环境要求

  • Hytale 服务器(Early Access 或更新版本)
  • Java 17+

支持

发现 Bug 或有建议?请在项目页面提交 Issue!


作者:Crefax
许可证:MIT