ScriptIrc 是专为 Bukkit/Spigot
设计的 Agent 开发引擎。
集成 AI 辅助构建、即时编译与动态热加载技术。
我们不仅仅是在提供工具,而是在重塑 Minecraft 服务器的运维体验。
你好!想做个禁言插件,这个需求很常见。不过禁言功能其实有很多种实现方式,我得先跟你确认几个关键点,这样我才能帮你设计出最合适的插件。
好的,我明白了。你选择了:
- 玩家禁言(针对特定玩家)
- 支持永久禁言和临时禁言
- 需要记录禁言理由
- 支持手动解禁、自动解禁和查看禁言列表
- 使用YAML文件存储
- 命令前缀用 “mute”
现在我需要你确认一下插件的名称和版本信息,然后我们就可以开始开发了。
好的,那我就用默认值来初始化项目了。现在开始创建禁言插件项目。
现在设置插件需要的命令。根据我们的功能设计,需要以下命令:
现在设置权限节点:
好的,项目基础信息已经设置好了。现在我来创建完整的插件项目结构。首先看看当前的项目结构:
现在开始创建完整的插件代码。首先创建数据模型类:
创建数据管理器类:
创建事件监听器:
创建命令执行器:
创建命令补全器:
现在创建配置文件:
创建数据文件模板:
现在需要更新主类文件,因为刚才创建了同名的MuteManager类,需要重命名原来的主类:
删除原来的主类文件,因为我们已经有了完整的MuteManager类:
现在创建README.md文件:
现在检查一下项目结构是否完整:
很好!现在检查一下plugin.yml文件是否正确:
需要修改plugin.yml中的主类路径,因为我们删除了原来的Mutemanager.java文件,现在的主类是MuteManager:
还需要添加mutemanager.admin权限:
现在项目已经完成了!让我总结一下我们创建的禁言插件:
项目完成总结
我们已经成功创建了一个功能完善的禁言插件,包含以下特性:
核心功能
- 玩家禁言 - 针对特定玩家进行禁言
- 时长支持 - 永久禁言和临时禁言(支持多种时间单位)
- 禁言理由 - 记录每次禁言的原因
- 自动解禁 - 时间到自动解除禁言
- 手动解禁 - 管理员可随时手动解禁
管理功能
- 禁言列表 - 查看所有被禁言的玩家(分页显示)
- 禁言信息 - 查看特定玩家的禁言详情
- 配置重载 - 无需重启即可重载配置
- 数据持久化 - 使用YAML文件存储数据
用户体验
- 智能命令补全 - 自动补全玩家名、时长、原因
- 权限系统 - 完整的权限控制
- 消息提示 - 被禁言玩家会收到提示
- 广播通知 - 可配置是否广播禁言/解禁消息
技术实现
- 事件监听 - 监听玩家聊天和登录事件
- 定时任务 - 自动检查并解禁过期禁言
- 数据模型 - 清晰的MuteData数据模型
- 配置管理 - 完整的config.yml配置
文件结构
/src/main/java/io/Sriptirc_wp_1/mutemanager/
├── MuteManager.java # 主类,管理插件生命周期和数据
├── MuteData.java # 禁言数据模型
├── MuteListener.java # 事件监听器
├── MuteCommand.java # 命令执行器
└── MuteTabCompleter.java # 命令补全器
/src/main/resources/
├── plugin.yml # 插件描述文件
├── config.yml # 配置文件
└── data.yml # 数据文件模板
/README.md # 详细使用说明
现在可以测试了!
这个项目已经可以导出编译了。你可以:
- 点击左侧「导出项目」获取
.sirc文件 - 将该文件放入:
plugins/ScriptIrc/scripts/src/ - 在服务器或控制台执行:
/scriptirc compiler MuteManager
编译成功后,插件就会出现在 plugins/ 目录中,重启服务器即可使用。
使用示例
# 禁言玩家30分钟
/mute Steve 30m 刷屏
# 永久禁言
/mute Alex 辱骂其他玩家
# 查看禁言列表
/mutelist
# 解禁玩家
/unmute Steve
# 查看禁言信息
/muteinfo Alex
# 重载配置
/mutereload
插件会自动生成配置文件,你可以根据需要调整消息内容和广播设置。
Current Test Model
Engine Capabilities
描述需求,AI 自动生成符合 Bukkit 规范的 Java 源代码或 Sirc 项目。
为每个脚本插件创建独立的数据目录,确保配置与数据互不干扰。
基于ScriptIrc编译的是标准 Bukkit 插件 不依赖 ScriptIrc 运行,直接编译结果 JAR 丢进 plugins 目录使用。
* 正在模拟 ScriptIrc 实时重构 Minecraft 插件逻辑的过程。
虚拟文件系统
支持完整的虚拟文件系统,AI模型会在文件系统内进行编辑开发。
结构化开发
开发的过程中设定合理的项目结构需模块化开发。
工程与性能原则
技术正确性优先,智能考虑服务器性能与事件开销
开发逻辑确认
当需求设计存在明显不合理或风险时,则提示用户确认
Compilation Workflow
插件编译逻辑
请注意:.sirc 是 ScriptIrc 的源码项目包,并非已加载的插件。 插件只有在 /compiler 命令成功执行后才会正式生效。
导出源码项目包
点击左侧「导出项目」按钮获取 .sirc 文件,将其下载至本地。
存入指定目录
将文件放入:
plugins/ScriptIrc/scripts/src/
执行编译器命令
在控制台执行指令完成即时构建:
/scriptirc compiler <插件名>
跳过繁琐的环境配置,让 Agent 帮助您进行开发。
加入 ScriptIrc 早期测试计划!
从即时编译到动态重构,