[MD]
# KProtect —— 轻量级世界保护插件
> 一个专注于「按世界」精细管控的 Minecraft 保护插件。
> 方块、耕地、农作物、展示框、PVP、各类容器,全部可独立开关,OP 自动绕过。
---
## 插件信息
| 项目 | 内容 |
| --- | --- |
| 插件名称 | KProtect |
| 最新版本 | 1.0.0 |
| 适用服务端 | Spigot / Paper(及所有 Bukkit 系核心) |
| 适配版本 | 1.12.2(编译目标,可尝试用于 1.8 ~ 1.12) |
| 前置插件 | 无 |
| 开源协议 | 见文末 |
---
## 功能特性
- ✅ **按世界独立配置**:每个世界拥有独立的保护开关,互不影响
- ✅ **精细到 17 种保护项**:从方块破坏到单个容器都能单独控制
- ✅ **OP 自动绕过**:开启后 OP 不受任何保护限制,普通玩家需权限节点
- ✅ **支持中文/英文命令**:保护类型既可用英文节点,也可用中文别名
- ✅ **可自定义提示语**:所有提示消息均可在配置中修改,颜色代码支持 `&`
- ✅ **防刷屏**:提示消息自带冷却,避免被恶意刷屏
- ✅ **即时生效**:所有配置均可通过命令实时修改并自动保存
---
## 保护类型一览(17 种)
### 基础保护
| 节点 | 说明 |
| --- | --- |
| `block-break` | 禁止破坏方块(含用桶装走液体) |
| `block-place` | 禁止放置方块(含倒出液体) |
| `explosion` | 禁止爆炸摧毁方块 |
| `farmland` | 耕地不被踩踏 / 变干 / 被实体踩坏 |
| `crops` | 农作物不被破坏 |
| `item-frame` | 展示框不被破坏(含取下框内物品) |
| `pvp` | 禁止玩家之间的 PVP(含弓箭、药水等投射物) |
### 容器保护(禁止交互打开 / 使用)
| 节点 | 说明 |
| --- | --- |
| `chest` | 箱子 / 陷阱箱 |
| `ender-chest` | 末影箱 |
| `crafting-table` | 工作台 |
| `anvil` | 铁砧 |
| `enchanting-table` | 附魔台 |
| `furnace` | 熔炉(含燃烧中的熔炉) |
| `brewing-stand` | 酿造台 |
| `hopper` | 漏斗 |
| `dispenser` | 发射器 / 投掷器 |
| `shulker-box` | 潜影盒(含全部染色变体) |
---
## 指令与权限
### 指令
主命令:`/kprotect`(别名:`/kp`、`/kpro`)
| 指令 | 说明 |
| --- | --- |
| `/kp help` | 查看帮助 |
| `/kp list` | 查看所有世界的保护状态 |
| `/kp info <世界>` | 查看指定世界的保护状态 |
| `/kp set <世界> <类型\|all> <on\|off>` | 设置指定世界某项保护 |
| `/kp reload` | 重载配置文件 |
> 类型支持英文节点或中文别名,例如:
> `/kp set hub 箱子 on` 与 `/kp set hub chest on` 等价。
### 权限
| 权限节点 | 说明 | 默认 |
| --- | --- | --- |
| `kprotect.admin` | 允许使用 `/kprotect` 管理命令 | OP |
| `kprotect.bypass` | 允许绕过所有保护 | OP |
| `kprotect.*` | 以上全部权限 | OP |
---
## 配置文件
插件首次启动后会在 `plugins/KProtect/config.yml` 生成配置:
```yaml
settings:
op-bypass: true # OP 是否自动绕过所有保护
bypass-permission: kprotect.bypass # 绕过保护所需权限节点
message-cooldown: 3 # 提示消息冷却时间(秒)
worlds:
world:
block-break: false
block-place: false
explosion: false
farmland: false
crops: false
item-frame: false
pvp: false
chest: false
ender-chest: false
crafting-table: false
anvil: false
enchanting-table: false
furnace: false
brewing-stand: false
hopper: false
dispenser: false
shulker-box: false
messages:
prefix: '&8[&6KProtect&8] &7'
denied-block-break: '&c该世界已开启方块保护,你无法破坏方块!'
denied-chest: '&c该世界的箱子受到保护,无法打开!'
# ... 更多提示语可在配置中自定义
```
> 所有 `messages` 下的提示语均支持 `&` 颜色代码,可自由修改。
---
## 绕过机制
- 当 `settings.op-bypass` 为 `true` 时,**所有 OP 自动绕过全部保护**。
- 普通玩家默认无法绕过;如需授予,请给对应玩家 `kprotect.bypass` 权限。
- PVP 场景下,**攻击方或受击方任一可绕过,即放行**。
---
## 安装方法
1. 下载 `KProtect-x.x.x.jar` 放入服务端 `plugins` 目录。
2. 重启服务端(或使用插件管理器加载)。
3. 编辑 `plugins/KProtect/config.yml` 配置各世界开关,或直接使用 `/kp set` 命令。
4. 使用 `/kp reload` 让配置生效。
---
## 更新日志
### v1.0.0
- 首发版本
- 支持方块破坏 / 放置 / 爆炸 / 耕地 / 农作物 / 展示框 / PVP 保护
- 支持 10 种容器独立管控
- 支持 OP 与权限绕过
- 支持命令实时配置与 Tab 补全
---
## 免责声明
本插件为免费开源软件,使用前请自行测试,因使用本插件造成的一切后果由使用者自行承担。
交流群:417944166 进群可免费下载使用
[/MD]