预防OP挂从管理员名单开始

最近(那不是好几十天前的事情了吗?),ICE服务器遭到了OP挂的袭击(好像是这么回事),具体的话我就不细说了,反正OP挂作为一个对普通中国版服务器有很大的威胁性。

由于目前为止,网易手机版普通服务器仍然不能装载插件,所以我们只能使用命令来进行预防。

为什么要用“预防”这个词呢?因为基岩版是无法真正自动化地发现OP挂、清除OP挂的。

Java版才行。

我们只能用指令来进行预防。

那么怎么个预防法呢?

很简单,检测一个玩家背包里是否有一些只能使用指令或在创造背包里得到的物品(比如基岩、命令方块)。

那么问题来了,怎么检测?

用/clear啊!

/clear a 要检测的物品 0 0

没错,这样子就可以了。

然后,我们就可以做一个OP挂警报装置——一个漏洞百出的装置

/clear a mand_block 0 0

然后如果写这个指令的命令方块成功,激活下一个命令方块:

/say 发现OP挂!

当然,为了防止误伤友军,你还需要再创建一个管理员名单:

/sreboard objectives add 管理员名单 dummy

然后每当新增一个管理员,就将他的管理员名单记为1。

似乎有些过于复杂了?

这个时候,其实我们不需要用繁琐的计分板,因为我们需要的是一个布尔值。

/tag指令,在这个时候是最好的选择。

比如,新增一个管理员,我们就:

/tag 〈管理员名称〉 add〈管理员〉

然后修改一下探测的指令:

/clear a[tag =!管理员] mand_block 0 0

这样子就不会误伤友军了。

当然,如果你真的误伤了友军.......

在误伤友军之后,给他披上敌军的衣服[滑稽]。

但是如果服务器有很多人呢?比如40个人?

(天呐!40多个人!附近有5G信号吗?卡死了!)

或许我们就可以尝试升级一下探测OP挂装置成:

OP挂探测装置v2.0版本

更新内容:

1.新增显示疑似使用OP挂玩家名显示

2.增加了一些C

(mand_Block_Byte)

那么这个装置怎么建造?

首先你需要一些mand_block。

然后在第一个mand_block里写上:

/tag

tag =!管理员] add 检测OP挂

为什么要这么做呢?

这样子可以保证既能准确地探测出疑似OP挂,又能探测全部玩家。

(r真是个好东西,不仅可以全服抽奖,还有如此大的用途)

当然这肯定是无限循环的。

这个命令方块输出,激活下一个命令方块:

/clear a[tag =检测OP挂] mand_block 0 0

(链,无条件,保持开启)

这个就不用多说了吧?

那么如果这个命令方块被激活了,你就得小心了!

这个命令方块被激活,输出信号,激活警报装置:

/say 发现疑似OP挂,玩家名:a[tag =检测OP挂

(链,有条件的,保持开启)

如果没有激活呢?

/tag a[tag =检测OP挂] remove 检测OP挂

(链,无条件,保持开启)

但是这样子发现OP挂的话,警报装置会霸占屏幕。

所以可以这样子做:

在/clear后面,say前面,添加一个命令方块:

/tag a[tag =检测OP挂] add 疑似OP挂

(链,有条件的,保持开启)

最后修改一下其他指令:

(最开始的指令)/tag

tag =!疑似OP挂,tag =!管理员] add 检测OP挂

(警报装置)/say 发现疑似OP挂,玩家名:a[tag =疑似OP挂

防止霸屏,影响其他玩家发滑稽。

但是,这样子又出现了一个问题:

如果管理员不在呢?

我们知道,添加了疑似OP挂的tag之后,目前并没有添加一个移除装置。

也就是说,不出意外的话,疑似OP挂的标签会一直挂着。

那么我们可以添加一个命令方块,查看疑似OP挂的名单:

/tell p[tag =管理员]现追踪到疑似OP挂:a[tag =疑似OP挂

但是这就有一个问题,如果那位疑似OP挂不在线呢?

就会显示这名OP挂的ID啦!

ID也是可以用的,只不过......

复制会比较麻烦。

OK这一章教程就到这里了,认为有用的话可以投几张推荐票,然后点一下加入书架。

反正就是要告诉你:不要白嫖!

(哎,万一OP挂在管理员不在的时候,警报装置没作用,还是在破坏呢?)

(不管他是不是创造,无限循环冒险nong死他[无限kill也行,防止他用指令搞破坏])

(如果伤害到无辜了呢?)

(I don't know,think for yourself.)

上一章目录+书架下一章