命令列表
WorldGuard 的命令一般有下列几类:
- 与游戏相关的命令(
/god
、/heal
等); - 与区域管理有关的命令;
- 临时的紧急措施;
- 排除问题;
- WorldGuard 本身相关的功能(版本信息、重载信息等) 见“权限列表”章节来获取有关的权限节点。部分命令自带别称,会在同一行列出。
提示
当一个参数(例如 <玩家名称>
是一个参数)被 方括号"[]"
所包括,表示这个参数可输可不输,另外输入命令的时候不需要带上 尖角括号"<>"
或 方括号"[]"
。
游戏相关命令
命令名称 | 额外参数 | 命令描述 |
---|---|---|
/god | [-s] [<玩家名称>] | 为自己或其他玩家开启无敌模式。-s 表示操作时不发送消息提醒。 |
/ungod | [-s] [<玩家名称>] | 为自己或其他玩家关闭无敌模式。-s 表示操作时不发送消息提醒。 |
/heal | [-s] [<玩家名称>] | 治疗自己或其他玩家。-s 表示操作时不发送消息提醒。 |
/slay | [-s] [<玩家名称>] | 斩杀自己或其他玩家。-s 表示操作时不发送消息提醒。 |
/locate | [<玩家名称>] | 将你的指南针指向其他玩家(如果指定玩家名称的话),若不提供玩家参数则指向主城的位置。 |
/stack /; | 自动堆叠分散的同种物品。 |
选择器
命令中用作玩家参数的部分支持选择过滤器,但它们和原版三年前加入的的选择过滤器略有不同。
玩家参数可以通过下列选择过滤符进行匹配:
- 默认情况下,如果填入正常名称,以该名称开头的玩家将会被选中。 (译者注:例如,player_ 填入时,可能会选中 player_、player_155 或 player_666。)
*
匹配所有玩家。#<世界名称>
来匹配指定世界中的所有玩家。#near
匹配命令执行者附近的玩家。@<名称>
来完全匹配某个玩家的名称。 (译者注:与上面不同,@player_ 只会匹配 player_ 这一个玩家。)
区域相关命令
命令名称 | 额外参数 | 命令描述 |
---|---|---|
/wg flushstates /wg clearstates | [玩家名称] | 调试命令,用于清除区域标志相关的玩家信息。例如,为了让 entry 标志生效,玩家每次移动踩着的“方块”都会被记录,以用于判断玩家是否处在区域内。该命令在玩家在区域内外因 entry 或 exit 卡住的时候很有用,尤其是在成员权限或权限组变更后造成的卡死。可选的玩家参数可以指定玩家将相关信息清除,如果没有提供玩家参数,那么所有玩家的标志状态都会被重置。 |
/rg bypass /rg toggle-bypass | [on/off] | 切换区域绕过模式,开启时允许无视(除 PVP 标志外的)所有保护。 |
紧急命令
命令名称 | 额外参数 | 命令示例 |
---|---|---|
/stopfire | [<世界名称>] | 立即停止指定世界的火焰传播。 |
/allowfire | [<世界名称>] | 允许指定世界的火焰传播。 |
/stoplag /halt-activity /haltactivity | [-s] | 删除所有实体,并停止接下来一切的物理活动或流体流动。额外地,当一个新区块载入时,其中包含的所有实体都将会被清除。该命令一般用于解决物品或实体过多造成的问题。尽管,在该命令加入后的时间中,驯服的动物和实体丢失的问题已不常出现,因此除非迫不得已,否则不建议使用此命令。-s 参数添加后不会将消息发送至聊天栏。 |
/stoplag /halt-activity /haltactivity | -c [-s] | 关闭“停止卡顿”模式。-s 参数添加后不会将消息发送至聊天栏。 |
/stoplag /halt-activity /haltactivity | -i | 显示“停止卡顿”模式的有关状态。 |
问题排查命令
命令名称 | 额外参数 | 命令示例 |
---|---|---|
/wg report | [-p] | 生成一份报告文件(可在 plugins/WorldGuard/report.txt 下找到该文件)这里会存有一些服务器的信息(安装的插件及其版本,世界的相关设置)以及 WorldGuard 的配置。报告文件不会包含任何敏感数据。使用参数 -p 将数据自动上传至剪贴板网站并返回一个链接,可将该链接发送给其他人。 |
/wg profile | [-p] [-i <毫秒数>] [-t <名称>] [<分钟数>] | 开始计算服务器当前的 CPU 用量,并在指定时长内启用分析器(在不指定时间的情况下默认为五分钟)。检测器功能是基于 WarmRoast 的。 默认情况下,检测结果只收集在主线程参与“刻”计算的世界,但 -t 参数允许你指定另外一个线程进行分析(大小写敏感)。星号(* )可以用于匹配所有的线程(例如:-t * )。默认情况下,分析器的采样间隔为 20 毫秒,但你可以使用 -i 参数指定一个处于 1 与 100 且单位为毫秒的间隔。间隔越小采样更精确,但性能开销也会增加,反之亦然。使用参数 -p 一并提交分析器结果至剪贴板网站,并向你提供相关链接。非常推荐这么做,因为分析器提供的结果会被剪贴板网站格式化以使其便于阅读。 |
/wg stopprofile | 停止正在运行的性能分析器。 | |
/wg debug testbreak | [-t] [-s] <玩家名称> | 模拟一次“方块破坏”事件。具体会在下文解释。 |
/wg debug testplace | [-t] [-s] <玩家名称> | 模拟一次“方块放置”事件。具体会在下文解释。 |
/wg debug testinteract | [-t] [-s] <玩家名称> | 模拟一次“交互阻止”事件。具体会在下文解释。 |
/wg debug testdamage | [-t] [-s] <玩家名称> | 模拟一次“实体攻击”事件 (用于测试 PVP 和 PVE)。具体会在下文解释。 |
事件模拟
事件模拟命令在一些情况下很有用。例如,玩家出于某些原因无法破坏方块且你无法找出是哪个插件导致的(没有其他的措施情况下)。使用 /wg debug testbreak
命令将会模拟一次方块放置事件并记录任何试图拦截该事件的插件。
若要使用命令,你必须提供玩家参数。玩家是触发该事件的来源。事件的目标(例如,“被破坏”的方块,或是“被攻击”的实体)。也就是从执行命令的玩家角度所发送的这一事件。但是,如果指定了 -t
参数,则目标来自于来源玩家视角中十字准星所选中的实体或方块。
在测试命令的输出中可能包含多个插件,一般情况下是第一个插件所引起的。这是因为,如果插件 A 阻止了事件的发生,随后的插件 B 也“阻止”了事件,那么插件 A 的效果将没有作用。WorldGuard 会为你列出最后一个阻止该事件的插件,其中列表中的第一个就是最后阻止该事件的插件。
示例
如果你想要查看为什么 PVP 被禁用的话,让另一个(无法进行 PVP 的)玩家看着你,并输入下列命令:
/wg debug testdamage -t other_player_name
请注意测试并没有完全完成。这是因为 Bukkit 在进行某些操作时会抛出其他的事件。例如,当装满一个桶的时候,Bukkit 首先会发起一个桶被装满的事件,而这个事件是 WorldGuard 所无法模拟的。直到现在,一些 Minecraft 的特性(例如冒险模式和内置的出生点保护)可能还在发挥作用。
使用 -s
可以在控制台输入关于堆栈的额外信息。
警告
虽然测试命令只会对插件发出测试事件,但基于 Minecraft 本身不会允许任何不正确的方块被放置或破坏,不会发生任何除测试目的之外的事件。例如,其他插件可能允许你点击告示牌进行传送并模拟一次传送事件,但这也可能导致其他玩家被传送。
其他命令
命令名称 | 额外参数 | 命令示例 |
---|---|---|
/wg version | 显示 WorldGuard 的当前版本。 | |
/wg reload | 重载 WorldGuard 的配置文件,黑名单以及区域数据。 | |
/wg running /wg queue | 显示 WorldGuard 正在执行的任务。比如出现在背景中查询玩家 UUID 的任务。 |