本帖最后由 ustc_zzzz 于 2018-8-30 14:15 编辑

Command Blocking Manager
命令屏蔽检查器


命令屏蔽检查器是一个基于Java7编写的服务端插件,可以同时作用于Sponge 1.10-1.12的服务端,也可当作BungeeCord插件使用。

为什么这不是一个Bukkit插件?原因很简单,因为我不会写x

事情起因

有一天我在Hypixel国际服玩的时候,突发奇想,想输入几个常见命令, 不过很快我就发现Hypixel把绝大多数命令屏蔽了,但是我在尝试输入/w,然后按下Tab键时,Hypixel哗啦啦地为我提供了一大堆命令提示:


通过不断地触发这种提示,我甚至可以猜测出来Hypixel装了哪些插件。这对服务器的安全不得不说是一种影响。一个念头就在我脑袋里渐渐成型了——我要做一个屏蔽命令的插件,这个插件不止能屏蔽命令的使用,还可以屏蔽命令提示,而且配置还要足够简单。

然后这个插件诞生了。

使用方法

扔BC端的plugins/目录底下,或者Sponge端的mods/目录底下。

启动后会在配置文件目录底下出现一个commandblockingmanager.conf的文件。这个文件既不是BC常用的YAML格式,也不是Sponge常用的HOCON格式,是一个我自己写的插件自己负责解析的文本格式。

默认的BC端配置文件格式长这样:

  1. - \?
  2. - help
复制代码

这代表禁止玩家使用/?/help两个命令。

默认的Sponge端配置文件格式长这样:

  1. - \?
  2. - help
  3. - sp
  4. - sponge
  5. - sponge:\?
  6. - sponge:help
  7. - sponge:sp
  8. - sponge:sponge
复制代码

这代表禁止玩家使用上面出现的八个命令。

功能配置

这插件用不着权限也没命令,只有一个配置文件需要修改。

配置文件中所有“#”开头的行为注释,暂时不支持为其他行加注释。

配置文件中所有“-”开头的行代表玩家被禁止使用其后的命令。  

支持子命令,比如说可以这么写:

  1. - time add
  2. - time set
复制代码

这将禁用这两个子命令。

支持?*作为通配符,比如说“- time *”代表禁用/time命令的所有子命令,而- t???将同时禁用/tell/time所有命令。

配置文件中所有“+”开头的行代表玩家被允许使用其后的命令。这可以用于白名单模式,比如:

  1. - *
  2. + home
  3. + back
复制代码

这将禁用所有除/home/back之外的命令。再比如:

  1. - weather
  2. + weather clear
复制代码

这将禁用所有/weather的子命令,但/weather clear除外。

使用诸如\?\*这样的转义方式表示这两个字符,比如说- \?表示禁用/?这一命令(通常是/help的简写),而- ?这样的写法就禁用了所有一个字符的命令,一些诸如/w(和/tell等价)的命令就也被禁用了。

当配置文件为空时,默认玩家可以使用所有命令。

此外,可以根据不同的权限分配不同的命令,比如:

  1. - *
  2. + home

  3. [nucleus.back.base]
  4. + back
复制代码

上面的配置文件的意思是默认情况下所有玩家只看得到/home指令,但是如果玩家拥有nucleus.back.base权限,那么他还可以看得到/back指令。

插件截图

这真没啥好截图的。。。我放个BC控制台的截图好了:


下载链接

帖子的开头有。

更新日志

暂时没有。

原创声明

本插件所用所有代码均为原创,不存在借用/抄袭等行为

Markdown备份

整个主题帖使用Markdown编写,并使用相关工具转换为BBCode。该部分内容为备份,和主题正文无关。



[groupid=534]InfinityStudio[/groupid]