489 lines
8.8 KiB
Markdown
489 lines
8.8 KiB
Markdown
|
||
## 概述
|
||
|
||
模组提供统一的 `/edg` 命令系统,同时支持别名 `/eroticdungeongame`、`/eroticdungeon`、`/dungeongame`。
|
||
|
||
命令体系分为四大模块:
|
||
|
||
| 模块 | 命令 | 权限 | 说明 |
|
||
|------|------|------|------|
|
||
| NORP | `/edg norp` | 所有人 | 触发 NORP 交互 |
|
||
| NPC | `/edg npc <name>` | 权限等级 3 | 创建 NPC |
|
||
| 设备管理 | `/edg device` | 权限等级 2 | 绑定/解绑/锁定/解锁设备 |
|
||
| 钥匙管理 | `/edg key` | 所有人 / 部分权限 2 | 查看/设置/清除钥匙密码 |
|
||
| 过滤器 | `/edg filter` | 所有人 | 配置车万女仆抓人过滤器 |
|
||
|
||
---
|
||
|
||
## 一、NORP 交互
|
||
|
||
### `/edg norp`
|
||
|
||
触发 NORP(No Role Play)交互请求。
|
||
|
||
- **权限**:所有人
|
||
- **前置条件**:配置文件中 `enableNorp = true`
|
||
- **行为**:发送 NORP 请求,等待冷却后再次确认即可完成交互
|
||
|
||
```
|
||
/edg norp
|
||
```
|
||
|
||
如果 NORP 模式被禁用,会提示 "eroticdungeongame.message.norp.disabled"。
|
||
|
||
---
|
||
|
||
## 二、NPC 管理
|
||
|
||
### `/edg npc <name>`
|
||
|
||
创建一个 NPC 玩家实体。需要权限等级 3(管理员)。
|
||
|
||
- **权限**:3 级以上
|
||
- **参数**:
|
||
- `<name>` — NPC 名称(最多 16 个字符)
|
||
|
||
```
|
||
/edg npc Guard
|
||
/edg npc Prisoner_01
|
||
```
|
||
|
||
NPC 会以生存模式生成在命令执行者的位置,面朝相同方向。
|
||
|
||
---
|
||
|
||
## 三、设备管理
|
||
|
||
所有设备子命令需要权限等级 2 以上。
|
||
|
||
### 3.1 绑定玩家到设备
|
||
|
||
#### `/edg device bind <pos>`
|
||
|
||
将命令执行者自身绑定到指定位置的设备上。
|
||
|
||
```
|
||
/edg device bind 100 64 200
|
||
```
|
||
|
||
#### `/edg device bind <pos> <player>`
|
||
|
||
将指定玩家绑定到指定位置的设备上。
|
||
|
||
```
|
||
/edg device bind 100 64 200 Steve
|
||
```
|
||
|
||
#### `/edg device bind <pos> <player> <code>`
|
||
|
||
绑定玩家并同时给设备上锁(指定密码)。如 `code` 传 `-1` 则随机生成密码。
|
||
|
||
```
|
||
/edg device bind 100 64 200 Steve -1
|
||
/edg device bind 100 64 200 Alex 123456789
|
||
```
|
||
|
||
#### `/edg device bind <pos> <code>`
|
||
|
||
绑定自身并同时给设备上锁(不指定目标玩家时的简写形式)。
|
||
|
||
```
|
||
/edg device bind 100 64 200 -1
|
||
```
|
||
|
||
**失败情况**:
|
||
|
||
| 错误原因 | 错误码 |
|
||
|----------|--------|
|
||
| 设备已有玩家占用 | -1 |
|
||
| 目标位置不是设备方块 | -2 |
|
||
| 未知原因 | -3 |
|
||
| 目标玩家已在其他设备上 | -4 |
|
||
|
||
---
|
||
|
||
### 3.2 解绑玩家
|
||
|
||
#### `/edg device unbind`
|
||
|
||
解绑命令执行者自身的当前设备。
|
||
|
||
```
|
||
/edg device unbind
|
||
```
|
||
|
||
#### `/edg device unbind <pos>`
|
||
|
||
解绑指定位置的设备。
|
||
|
||
```
|
||
/edg device unbind 100 64 200
|
||
```
|
||
|
||
#### `/edg device unbind <player>`
|
||
|
||
解绑指定玩家所处的设备。
|
||
|
||
```
|
||
/edg device unbind Steve
|
||
```
|
||
|
||
---
|
||
|
||
### 3.3 锁定设备
|
||
|
||
#### `/edg device lock`
|
||
|
||
为命令执行者当前所处的设备上锁(随机生成密码)。
|
||
|
||
```
|
||
/edg device lock
|
||
```
|
||
|
||
#### `/edg device lock <pos>`
|
||
|
||
为指定位置的设备上锁(随机生成密码)。
|
||
|
||
```
|
||
/edg device lock 100 64 200
|
||
```
|
||
|
||
#### `/edg device lock <pos> <code>`
|
||
|
||
为指定位置的设备上锁(指定密码)。
|
||
|
||
```
|
||
/edg device lock 100 64 200 123456789
|
||
```
|
||
|
||
#### `/edg device lock <player>`
|
||
|
||
为指定玩家当前所处的设备上锁(随机生成密码)。
|
||
|
||
```
|
||
/edg device lock Steve
|
||
```
|
||
|
||
#### `/edg device lock <player> <code>`
|
||
|
||
为指定玩家当前所处的设备上锁(指定密码)。
|
||
|
||
```
|
||
/edg device lock Steve 123456789
|
||
```
|
||
|
||
---
|
||
|
||
### 3.4 解锁设备
|
||
|
||
#### `/edg device unlock`
|
||
|
||
为命令执行者当前所处的设备解锁(同时清除主锁标记)。
|
||
|
||
```
|
||
/edg device unlock
|
||
```
|
||
|
||
#### `/edg device unlock <pos>`
|
||
|
||
为指定位置的设备解锁。
|
||
|
||
```
|
||
/edg device unlock 100 64 200
|
||
```
|
||
|
||
#### `/edg device unlock <player>`
|
||
|
||
为指定玩家当前所处的设备解锁。
|
||
|
||
```
|
||
/edg device unlock Steve
|
||
```
|
||
|
||
> **注意**:`unlock` 命令会同时清除普通锁 (`lockCode = -1`) 和主锁 (`isMasterLocked = false`),且**不检查密码**。
|
||
|
||
---
|
||
|
||
## 四、钥匙管理
|
||
|
||
### 4.1 设置钥匙密码
|
||
|
||
#### `/edg key lock set`
|
||
|
||
为主手持有的钥匙随机生成一个密码,需要权限等级 2。
|
||
|
||
```
|
||
/edg key lock set
|
||
```
|
||
|
||
#### `/edg key lock set <code>`
|
||
|
||
为主手持有的钥匙设置指定密码,需要权限等级 2。
|
||
|
||
```
|
||
/edg key lock set 123456789
|
||
```
|
||
|
||
---
|
||
|
||
### 4.2 查看钥匙密码
|
||
|
||
#### `/edg key lock get`
|
||
|
||
查看主手持有的钥匙的当前密码(所有人可用)。
|
||
|
||
```
|
||
/edg key lock get
|
||
```
|
||
|
||
- 有密码:显示密码值及颜色符号表示
|
||
- 无密码:提示钥匙为空(`key.lock.get.empty`)
|
||
|
||
---
|
||
|
||
### 4.3 清除钥匙密码
|
||
|
||
#### `/edg key lock clear`
|
||
|
||
清除主手持有的钥匙密码,恢复为空白钥匙(所有人可用)。
|
||
|
||
```
|
||
/edg key lock clear
|
||
```
|
||
|
||
---
|
||
|
||
## 五、过滤器管理
|
||
|
||
过滤器命令用于配置车万女仆抓人任务的筛选条件。**所有操作都需要主手持有过滤器物品**。
|
||
|
||
### 5.1 模式设置
|
||
|
||
#### `/edg filter mode [mode]`
|
||
|
||
设置过滤器模式。缺省为 `whitelist`。
|
||
|
||
```
|
||
/edg filter mode # 设为白名单模式(缺省)
|
||
/edg filter mode whitelist # 设为白名单模式
|
||
/edg filter mode blacklist # 设为黑名单模式
|
||
```
|
||
|
||
| 模式 | 行为 |
|
||
|------|------|
|
||
| `whitelist` | 只抓**符合条件**的玩家 |
|
||
| `blacklist` | 只抓**不符合条件**的玩家 |
|
||
|
||
---
|
||
|
||
### 5.2 游戏模式过滤
|
||
|
||
#### `/edg filter gamemode add <gamemode>`
|
||
|
||
添加游戏模式到过滤条件。可选值:`survival`、`creative`、`adventure`。
|
||
|
||
```
|
||
/edg filter gamemode add survival
|
||
/edg filter gamemode add creative
|
||
```
|
||
|
||
#### `/edg filter gamemode remove [gamemode]`
|
||
|
||
移除指定游戏模式,不指定则清除全部。
|
||
|
||
```
|
||
/edg filter gamemode remove survival
|
||
/edg filter gamemode remove
|
||
```
|
||
|
||
---
|
||
|
||
### 5.3 标签过滤
|
||
|
||
#### `/edg filter tag add <tag>`
|
||
|
||
添加标签到过滤条件。
|
||
|
||
```
|
||
/edg filter tag add vip
|
||
/edg filter tag add prisoner
|
||
```
|
||
|
||
#### `/edg filter tag remove [tag]`
|
||
|
||
移除指定标签,不指定则清除全部。
|
||
|
||
```
|
||
/edg filter tag remove vip
|
||
/edg filter tag remove
|
||
```
|
||
|
||
---
|
||
|
||
### 5.4 队伍过滤
|
||
|
||
#### `/edg filter team add <team>`
|
||
|
||
添加队伍到过滤条件。
|
||
|
||
```
|
||
/edg filter team add red
|
||
/edg filter team add guards
|
||
```
|
||
|
||
#### `/edg filter team remove [team]`
|
||
|
||
移除指定队伍,不指定则清除全部。
|
||
|
||
```
|
||
/edg filter team remove red
|
||
/edg filter team remove
|
||
```
|
||
|
||
---
|
||
|
||
### 5.5 工作点设置
|
||
|
||
工作点是女仆执行任务的活动范围中心点。
|
||
|
||
#### `/edg filter workpos set [pos]`
|
||
|
||
设置工作点。不指定坐标则设为玩家当前位置。
|
||
|
||
```
|
||
/edg filter workpos set # 当前位置
|
||
/edg filter workpos set 0 -32 0 # 指定坐标
|
||
```
|
||
|
||
#### `/edg filter workpos remove`
|
||
|
||
移除工作点。
|
||
|
||
```
|
||
/edg filter workpos remove
|
||
```
|
||
|
||
---
|
||
|
||
### 5.6 白名单/黑名单玩家
|
||
|
||
白名单和黑名单具有**最高优先级**:白名单玩家必被抓,黑名单玩家必不抓。
|
||
|
||
#### `/edg filter whitelist add <player>`
|
||
|
||
添加白名单玩家。
|
||
|
||
```
|
||
/edg filter whitelist add Steve
|
||
/edg filter whitelist add @p
|
||
```
|
||
|
||
#### `/edg filter whitelist remove [player]`
|
||
|
||
移除指定白名单玩家,不指定则清除全部。
|
||
|
||
```
|
||
/edg filter whitelist remove Steve
|
||
/edg filter whitelist remove
|
||
```
|
||
|
||
#### `/edg filter blacklist add <player>`
|
||
|
||
添加黑名单玩家。
|
||
|
||
```
|
||
/edg filter blacklist add Alex
|
||
/edg filter blacklist add @s
|
||
```
|
||
|
||
#### `/edg filter blacklist remove [player]`
|
||
|
||
移除指定黑名单玩家,不指定则清除全部。
|
||
|
||
```
|
||
/edg filter blacklist remove Alex
|
||
/edg filter blacklist remove
|
||
```
|
||
|
||
---
|
||
|
||
### 5.7 查看与重置
|
||
|
||
#### `/edg filter info`
|
||
|
||
查看当前过滤器的所有设置,包括:模式、游戏模式、标签、队伍、工作点、白名单、黑名单。
|
||
|
||
```
|
||
/edg filter info
|
||
```
|
||
|
||
#### `/edg filter reset`
|
||
|
||
重置过滤器为全新的空白白名单过滤器。
|
||
|
||
```
|
||
/edg filter reset
|
||
```
|
||
|
||
---
|
||
|
||
## 六、使用示例
|
||
|
||
### 示例 1:完整管理员工作流
|
||
|
||
管理员将玩家 Steve 绑到枷锁上并上锁:
|
||
|
||
```
|
||
# 1. 绑定 Steve
|
||
/edg device bind 100 64 200 Steve -1
|
||
|
||
# 系统返回:设备钥匙: ╔╗╚╝╠╣╦╩
|
||
|
||
# 2. 查看 Steve 是否在设备上(手持钥匙查看)
|
||
/edg key lock get
|
||
|
||
# 3. 释放 Steve(权限命令,不检查钥匙密码)
|
||
/edg device unbind Steve
|
||
```
|
||
|
||
### 示例 2:女仆抓人配置
|
||
|
||
让女仆在坐标 (0, -32, 0) 附近只抓生存模式的玩家,但不抓自己:
|
||
|
||
```
|
||
# 手持空白过滤器
|
||
/edg filter workpos set 0 -32 0
|
||
/edg filter mode whitelist
|
||
/edg filter gamemode add survival
|
||
/edg filter blacklist add @s
|
||
/edg filter info
|
||
```
|
||
|
||
### 示例 3:女仆只抓不在 red 队伍中的玩家
|
||
|
||
```
|
||
# 手持空白过滤器
|
||
/edg filter workpos set 2 -64 0
|
||
/edg filter mode blacklist
|
||
/edg filter team add red
|
||
/edg filter info
|
||
```
|
||
|
||
---
|
||
|
||
## 七、权限速查表
|
||
|
||
| 命令路径 | 最低权限等级 |
|
||
|----------|-------------|
|
||
| `/edg` (帮助) | 0 |
|
||
| `/edg norp` | 0 |
|
||
| `/edg npc <name>` | 3 |
|
||
| `/edg device bind ...` | 2 |
|
||
| `/edg device unbind ...` | 2 |
|
||
| `/edg device lock ...` | 2 |
|
||
| `/edg device unlock ...` | 2 |
|
||
| `/edg key lock set` | 2 |
|
||
| `/edg key lock get` | 0 |
|
||
| `/edg key lock clear` | 0 |
|
||
| `/edg filter ...` | 0 |
|