# RohPlugin 插件文档
##

插件概述
**RohPlugin** 是一个功能丰富的 Minecraft Paper 1.21 服务器插件,集成了多种实用工具和玩家管理功能。插件设计简洁高效,权限系统完善,适合各种类型的服务器使用。
### 基本信息
- **插件名称**: RohPlugin
- **当前版本**: 1.2.0
- **作者**: RohDeveloper
- **支持版本**: Minecraft Paper 1.21
- **Java 要求**: Java 21+
##

安装指南
### 快速安装
1. 下载最新版本的 `roh-1.2.0.jar`
2. 将文件放入服务器的 `plugins/` 目录
3. 重启服务器或使用 `/reload confirm`
4. 验证安装:`/plugins`
### 文件结构
安装后会自动生成以下文件:
```
plugins/RohPlugin/
├── config.yml # 主配置文件
├── warps.yml # 传送点数据文件
├── nicks.yml # 玩家昵称数据文件
└── plugin.yml # 插件描述文件(只读)
```
##

配置说明
### config.yml 配置文件
```yaml
# 插件设置
settings:
teleport-delay: 3 # 传送延迟时间(秒)
teleport-cooldown: 10 # 传送冷却时间(秒)
enable-teleport-sound: true # 启用传送音效
enable-teleport-particles: true # 启用传送粒子效果
# 默认传送点
warps:
spawn:
world: world
x: 0.5
y: 64.0
z: 0.5
description: "主城出生点"
# 消息配置
messages:
success: "&a✓ &7%s" # 成功消息格式
error: "&c✗ &7%s" # 错误消息格式
info: "&eℹ &7%s" # 信息消息格式
```
### 配置文件修改
1. 停止服务器或使用 `save-all`
2. 编辑 `plugins/RohPlugin/config.yml`
3. 重启服务器或使用 `/reload confirm`
##

命令大全
### 玩家实用命令
| 命令 | 别名 | 权限节点 | 说明 | 示例 |
|------|------|----------|------|------|
| `/back` | `deathback`, `return` | `roh.vip.back` | 返回死亡位置 | `/back` |
| `/gzt` | `workbench`, `craft` | `roh.vip.gzt` | 打开工作台 | `/gzt` |
| `/tree` | `oaktree`, `spawnoak` | `roh.vip.tree` | 生成橡树 | `/tree` |
| `/mys` | `enderchest`, `ec` | `roh.vip.mys` | 打开末影箱 | `/mys` |
### 传送点系统
| 命令 | 别名 | 权限节点 | 说明 | 示例 |
|------|------|----------|------|------|
| `/warp [名称]` | `tpwarp`, `warpto` | `roh.vip.wt` | 查看/传送到传送点 | `/warp spawn` |
| `/setwarp <名称>` | `createwarp`, `addwarp` | `roh.vip.sw` | 创建传送点 | `/setwarp home 我的家` |
| `/delwarp <名称>` | `removewarp`, `deletewarp` | `roh.vip.dw` | 删除传送点 | `/delwarp old` |
### 新增功能命令
| 命令 | 别名 | 权限节点 | 说明 | 示例 |
|------|------|----------|------|------|
| `/nick <昵称>` | `nickname`, `昵称` | `roh.vip.nc` | 设置昵称 | `/nick 小明` |
| `/givehead <玩家>` | `head`, `skull` | `roh.admin.givehead` | 获取玩家头颅 | `/givehead Notch` |
| `/repair [all]` | `fix`, `修复` | `roh.vip.repair` | 修复物品 | `/repair all` |
| `/expbottle [数量]` | `exp`, `经验瓶` | `roh.vip.expbottle` | 获取经验瓶 | `/expbottle 5` |
### OP专用命令(仅限OP)
| 命令 | 别名 | 说明 | 示例 |
|------|------|------|------|
| `/day` | `白天`, `早上` | 设置为白天 | `/day` |
| `/night` | `黑夜`, `晚上` | 设置为黑夜 | `/night` |
| `/sun` | `clear`, `晴天` | 设置晴天 | `/sun` |
| `/rain` | `下雨` | 设置雨天 | `/rain` |
| `/storm` | `thunder`, `雷雨` | 设置雷雨 | `/storm` |
| `/fly [玩家]` | `飞行`, `flight` | 切换飞行模式 | `/fly` |
##

权限系统详解
### 权限节点总览
#### VIP权限组(默认给OP)
- `roh.vip.back` - 返回死亡位置
- `roh.vip.gzt` - 使用工作台
- `roh.vip.tree` - 生成树木
- `roh.vip.mys` - 使用末影箱
- `roh.vip.wt` - 使用传送点
- `roh.vip.sw` - 设置传送点
- `roh.vip.dw` - 删除传送点
- `roh.vip.nc` - 设置昵称
- `roh.vip.repair` - 修复物品
- `roh.vip.expbottle` - 获取经验瓶
- `roh.vip.*` - 所有VIP权限
#### OP权限组(仅限OP)
- `roh.op.time` - 控制时间
- `roh.op.weather` - 控制天气
- `roh.op.fly` - 控制飞行
- `roh.op.*` - 所有OP权限
#### 管理员权限
- `roh.admin.givehead` - 获取玩家头颅
- `roh.admin.*` - 所有管理员权限
### 权限设置示例
#### 使用 LuckPerms
```bash
# 创建VIP组并设置权限
/lp creategroup vip
/lp group vip permission set roh.vip.* true
# 创建管理员组
/lp creategroup admin
/lp group admin permission set roh.vip.* true
/lp group admin permission set roh.op.* true
/lp group admin permission set roh.admin.* true
# 给玩家分配组
/lp user 玩家名 parent add vip
/lp user 玩家名 parent add admin
```
#### 使用原生命令
```bash
# 给玩家OP权限(获得所有权限)
/op 玩家名
# 取消OP权限
/deop 玩家名
```
##

功能详解
### 1. 昵称系统
- **命令**: `/nick <昵称|reset>`
- **权限**: `roh.vip.nc`
- **功能**:
- 设置个性化昵称(支持中文)
- 其他玩家看到的是昵称而非用户名
- 在玩家列表和聊天中显示昵称
- 使用 `/nick reset` 重置为原名
**示例**:
```bash
# 设置昵称
/nick 小明的冒险
# 重置昵称
/nick reset
```
### 2. 头颅获取
- **命令**: `/givehead <正版玩家名>`
- **权限**: `roh.admin.givehead` (仅限OP)
- **功能**:
- 获取正版玩家的头颅
- 支持离线玩家和特殊头颅
- 头颅包含玩家信息和来源
**示例**:
```bash
# 获取Notch的头颅
/givehead Notch
# 获取在线玩家头颅
/givehead 玩家名
```
### 3. 时间控制(OP专用)
- **命令**: `/day`, `/night`
- **功能**: 立即改变世界时间
- **注意事项**: 仅影响执行者所在的世界
### 4. 天气控制(OP专用)
- **命令**: `/sun`, `/rain`, `/storm`
- **功能**: 控制天气变化
- **持续时间**: 每个天气持续5分钟
### 5. 飞行模式(OP专用)
- **命令**: `/fly [玩家名]`
- **功能**:
- 切换飞行模式
- OP可以为其他玩家设置飞行
- 双击空格起飞,Shift下降
### 6. 工具修复
- **命令**: `/repair [all]`
- **权限**: `roh.vip.repair`
- **功能**:
- 修复手中物品的耐久度
- 使用 `/repair all` 修复背包所有可修复物品
- 支持工具、武器、盔甲等
**支持修复的物品类型**:
- 工具: 镐、斧、锹、锄
- 武器: 剑、弓、弩、三叉戟
- 盔甲: 头盔、胸甲、护腿、靴子
- 其他: 钓鱼竿、剪刀、打火石、盾牌、鞘翅
### 7. 经验瓶获取
- **命令**: `/expbottle [数量]`
- **权限**: `roh.vip.expbottle`
- **功能**:
- 获取经验瓶(每瓶提供3-11点经验)
- 可指定数量(1-64)
- 右键投掷使用
### 8. 传送点系统
- **功能特点**:
- 3秒传送延迟(可配置)
- 移动自动取消传送
- 安全位置检测
- 传送粒子效果
- 数据持久化存储
**传送点管理**:
```bash
# 查看所有传送点
/warp
# 创建传送点(需要站到位置)
/setwarp market 主城市场
# 使用传送点
/warp market
# 删除传送点(只能删除自己创建的)
/delwarp market
```
##

数据库说明
### 数据文件
插件使用YAML文件存储数据,确保数据安全:
| 文件 | 存储内容 | 备份建议 |
|------|----------|----------|
| `warps.yml` | 所有传送点数据 | 每日备份 |
| `nicks.yml` | 玩家昵称数据 | 每日备份 |
| `config.yml` | 插件配置 | 修改时备份 |
### 数据迁移
如果需要迁移数据,直接复制对应文件即可。
##

故障排除
### 常见问题
#### 1. 插件不加载
**可能原因**:
- 服务器版本不是 Paper 1.21.6
- Java版本低于21
- 插件文件损坏
**解决方案**:
1. 检查服务器控制台错误信息
2. 验证Java版本:`java -version`
3. 重新下载插件
#### 2. 命令不工作
**可能原因**:
- 权限设置不正确
- 命令拼写错误
- 插件未正确加载
**解决方案**:
1. 检查权限:`/lp user 玩家名 permission info`
2. 验证命令别名
3. 重新加载插件
#### 3. 传送点问题
**可能原因**:
- 世界未加载
- 坐标无效
- 文件权限问题
**解决方案**:
1. 检查 `warps.yml` 文件格式
2. 确保世界已加载
3. 检查文件读写权限
### 错误代码
| 错误信息 | 可能原因 | 解决方案 |
|----------|----------|----------|
| "没有权限" | 权限节点未设置 | 检查权限设置 |
| "传送点不存在" | 传送点名称错误 | 使用 `/warp` 查看可用传送点 |
| "背包已满" | 背包空间不足 | 清理背包或使用地面掉落 |
| "无效的昵称" | 昵称不符合规则 | 昵称长度2-16字符,支持中文 |
##

更新日志
### v1.2.0 (当前版本)
**新增功能**:
1.

昵称系统 (`/nick`) - 权限: `roh.vip.nc`
2.

头颅获取 (`/givehead`) - 权限: `roh.admin.givehead` (OP专用)
3.

时间控制 (`/day`, `/night`) - OP专用
4.

天气控制 (`/sun`, `/rain`, `/storm`) - OP专用
5.

飞行模式 (`/fly`) - OP专用
6.

工具修复 (`/repair`) - 权限: `roh.vip.repair`
7.

经验瓶获取 (`/expbottle`) - 权限: `roh.vip.expbottle`
**优化改进**:
- 完善权限系统
- 增强错误处理
- 优化用户体验
### v1.1.0
-

新增传送点管理系统
-

添加 `/warp`, `/setwarp`, `/delwarp` 命令
-

支持传送延迟和移动检测
-

添加传送粒子效果和音效
### v1.0.0
-

基础功能实现
-

`/back` 死亡位置返回
-

`/gzt` 便携工作台
-

`/tree` 树木生成
-

`/mys` 末影箱访问
##

最佳实践
### 服务器管理建议
1. **权限分层**:
- 普通玩家: 基础VIP权限
- VIP玩家: 所有VIP权限
- 管理员: VIP + OP + 管理员权限
2. **传送点管理**:
- 设置公共传送点: spawn, market, farm 等
- 限制玩家创建传送点数量
- 定期清理无效传送点
3. **性能优化**:
- 适当调整传送延迟
- 限制昵称长度
- 定期备份数据文件
### 玩家使用指南
1. **新人指引**:
```bash
# 新人常用命令
/warp spawn # 前往主城
/gzt # 制作工具
/tree # 获取木材
/mys # 个人存储
```
2. **高级功能**:
```bash
# 设置个性化体验
/nick 你的昵称 # 设置昵称
/repair all # 修复所有工具
/expbottle 10 # 获取经验瓶
```
##

技术支持
### 获取帮助
1. **查看日志**: 服务器控制台输出
2. **检查配置**: 验证配置文件格式
3. **权限测试**: 使用权限插件检查权限设置
### 报告问题
提交问题报告时请提供:
1. 服务器版本和类型
2. 插件版本
3. 错误日志片段
4. 问题复现步骤
5. 相关配置信息
### 功能建议
欢迎提出功能改进建议,请详细描述:
1. 功能需求
2. 使用场景
3. 预期效果
##

许可证与使用条款
### 使用条款
1. 本插件免费使用,禁止商业出售
2. 可以修改插件代码用于个人服务器
3. 禁止去除作者信息和版权声明
4. 对使用插件造成的任何问题不承担责任
### 开源协议
基于 MIT 许可证开源,允许:
- 商业使用
- 修改
- 分发
- 私人使用
### 免责声明
作者不对以下情况负责:
- 插件使用造成的服务器问题
- 数据丢失或损坏
- 与其他插件的兼容性问题
---
##

快速参考表
### 常用命令速查
| 场景 | 命令 |
|------|------|
| 死亡返回 | `/back` |
| 制作工具 | `/gzt` |
| 获取木材 | `/tree` |
| 个人存储 | `/mys` |
| 设置昵称 | `/nick 昵称` |
| 修复工具 | `/repair` |
| 获取经验 | `/expbottle` |
| 传送地点 | `/warp 地点名` |
### 权限速查
| 用户类型 | 权限组 |
|----------|--------|
| 普通玩家 | `roh.vip.back`, `roh.vip.gzt`, `roh.vip.tree` |
| VIP玩家 | `roh.vip.*` |
| 管理员 | `roh.vip.*` + `roh.op.*` |
| OP玩家 | 所有权限 |
---
**文档版本**: 1.2.0
**最后更新**: 2024年1月
**插件版本**: 1.2.0
>

提示: 本文档会随插件更新而更新,请定期查看最新版本。如有问题,请参考服务器日志或联系技术支持。