Command Block Spy

[开源] 监控/拦截服务器命令方块

资源图片
# 🕵️‍♂️ CommandBlockSpy [简体中文](https://github.com/GoldenEggs-Workshop/command-block-spy/blob/master/README.md) [![Java Version](https://img.shields.io/badge/Java-17-blue.svg)](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) [![Minecraft Version](https://img.shields.io/badge/Minecraft-1.21.4-brightgreen.svg)](https://www.minecraft.net/en-us/article/minecraft-java-edition-1-21-4) [![Paper Version](https://img.shields.io/badge/Paper-1.21.4-blue.svg)](https://papermc.io/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Command Block Spy on Modrinth](https://img.shields.io/badge/Modrinth-Command%20Block%20Spy-brightgreen?logo=modrinth&logoColor=white)](https://modrinth.com/plugin/command-block-spy) [![GitHub - command-block-spy](https://img.shields.io/badge/GitHub-Repository-0969da?logo=github&logoColor=white)](https://github.com/GoldenEggs-Workshop/command-block-spy) 📌 **CommandBlockSpy (CBS)** 是一款专为具有高自由度(已启用命令方块)的创意Minecraft服务器设计的插件。它通过记录命令方块执行数据并提供命令控制和安全监控,帮助服务器管理员管理命令方块活动。 ✅ 已在 **Minecraft 1.21.4** 上测试,基于 **Paper** 构建。 ## ✨ 插件功能 📝 **基于SQLite的执行日志记录** 自动将每个命令方块的执行计数、命令内容、上次执行时间和坐标记录到数据库中。 🔔 **实时监控** 可切换的实时命令监控系统,适用于控制台和玩家。 🚫 **危险命令拦截** 支持基于正则表达式的自定义拦截规则,并在阻止时提供可自定义的消息。 🔁 **循环命令方块拦截** 可以选择拦截始终开启(`auto=true`)的循环命令方块,拦截后将自动设置为红石控制。 ⚠️ **禁用命令方块矿车** 可以选择防止玩家放置命令方块矿车。 ## 🧪 可用命令 | 命令 | 描述 | 权限 | |--------------------------------|---------------------------------------------------|----------------| | `/cbspy` | 切换聊天监控提示 | `cbspy.use` | | `/cbspy reload` | 重新加载插件配置 | `cbspy.reload` | | `/cbspy query loc ` | 查询特定位置的执行历史 | `cbspy.query` | | `/cbspy query recent ` | 查询最近的 `` 条执行记录 | `cbspy.query` | --- ## ⚙️ 配置示例 > 注意:所有功能默认 **禁用**。请根据需要启用它们。 ```yaml # CBS插件配置文件 # CBS Plugin Configuration # 插件语言,支持中文(zh_CN)和英文(en_US) # Plugin language, supports Chinese (zh_CN) and English (en_US) language: zh_CN # 是否启用数据库功能 # Enable database logging database-logging-enabled: false # 是否开启后台命令执行日志监控,开启后控制台会打印命令方块执行记录 # Enable backend monitoring (logs to console) backend-monitor-enabled: false # 是否拦截循环命令方块保持开启(auto=true)的命令,拦截后会自动设置为红石控制 # Intercept always-on repeating command blocks (auto=true) intercept-repeating-auto: false # 是否禁止命令方块矿车,开启后玩家会无法放置命令方块矿车 # Disable command block minecarts ban-command-minecart: false # 是否启用基于正则表达式的命令拦截功能,拦截匹配规则的指令并提示原因 # Enable regex-based command interception regex-intercept-enabled: false # 正则表达式拦截列表,格式:正则表达式: 拦截提示信息 # Regex interception list # 支持常见正则表达式语法,例如: # Format: regex pattern : block message regex-block-list: - pattern: ^say message: 禁止使用 say 命令! # The 'say' command is not allowed! ``` ## 🚀 快速安装 1. **下载插件**: * [Modrinth 下载](https://modrinth.com/plugin/command-block-spy) * [GitHub 发布](https://github.com/GoldenEggs-Workshop/command-block-spy/releases) 2. **安装到您的服务器**: * 将 JAR 文件放入您的 `plugins/` 文件夹 * 重新启动服务器 ## 📦 从源代码构建和安装 克隆项目: ```bash git clone https://github.com/GoldenEggs-Workshop/command-block-spy cd command-block-spy ``` 构建插件: ```bash ./gradlew build ``` 将 `build/libs/commandblockspy-xxx.jar` 复制到您的服务器的 `plugins/` 文件夹,然后重新启动服务器。 ## 🔐 权限节点 | 权限节点 | 描述 | |-----------------|-----------------------------| | `cbspy.use` | 切换聊天提示 | | `cbspy.reload` | 重新加载插件配置 | | `cbspy.query` | 使用查询相关功能 | ## 💡 TODO 路线图 * 全面支持命令方块矿车(日志记录/拦截/禁用) * 自定义数据库配置 * 多平台通知集成 (Feishu / DingTalk / Discord) * 可视化查询界面 * √ i18n (国际化) 支持 ## 📄 **许可证** 本项目采用 **MIT 许可证**。您有权修改和使用该插件。对于商业部署,请注明原始来源。