脚本封挂的一个实现思路

文字教程2周前更新 半瓢水
567 0

对于大部分白嫖GM来说,封挂主要是依靠G63网关或者翎风发布的免费网关。但我个人对网关进行了一些实际应用之后发现,有的时候似乎不是那么准确,最麻烦的一点在于,你开启检测容易误伤网络波动大的玩家,但不开启又会让挂逼逍遥法外。

之前在翎风群里讨论过之后,有位兄弟提出了一个不错的想法,我觉得这个方式是可行的,于是就把这个想法给实现了,但我本人没有实际测试过,只能说逻辑上行得通,但具体还是看情况。

思路:
根据客户端的攻速设置来进行计算,算出人物每10秒能出多少刀,每隔10秒钟赋值,将允许出刀的数量重置,攻击触发时刀数-1,为0时则将伤害清零,无法造成任何伤害,直到下次定时器重新赋值出刀数量。
这样做的好处在于,就算玩家网络波动大也不会实际造成影响,就算玩家开挂了,也不会对游戏有什么实质性的伤害。比如我设置的他10秒内最多砍20刀,普通玩家刚好10秒砍完,而开挂玩家3秒砍完,但剩下的7秒,他也无法对敌方造成任何伤害了。

脚本示例如下:

通用触发段.txt:

[@_@获取人物允许攻击次数]
#IF
#ACT
MUL N$防加速人物攻速加成 <$ATTACKSPEED> 5
MOV N$防加速人物实际攻速间隔 1100
DEC N$防加速人物实际攻速间隔 <$STR(N$防加速人物攻速加成)>
DIV N$防加速允许人物10秒攻击次数 10000 <$STR(N$防加速人物实际攻速间隔)>
INC N$防加速允许人物10秒攻击次数 1   ;这里加1次是留给定时器的容错率
SendCenterMsg 180 70 你获得了{[<$STR(N$防加速允许人物10秒攻击次数)>]|253}次攻击次数! 0 2

;这个算式对应本人M2的速度设置

脚本封挂的一个实现思路

 

QM:
[@LOGIN]
#IF
#ACT
SETONTIMER 1 10
#CALL [通用触发段.txt] @_@获取人物允许攻击次数    ;定时器要10秒后生效,所以登录时先计算一次

[@ONTIMER4]
#CALL [通用触发段.txt] @_@获取人物允许攻击次数

QF:
[@Attack]

#IF
LARGE N$防加速允许人物10秒攻击次数 0
#ACT
DEC N$防加速允许人物10秒攻击次数 1

#IF
SMALL N$防加速允许人物10秒攻击次数 1
#ACT
SendCenterMsg 180 70 你的攻击次数已耗尽,请等待刷新! 0 2
BREAK

;写在ATTACK的最前面,防止切割脚本生效

[@ATTACKDAMAGE]
#IF
SMALL N$防加速允许人物10秒攻击次数 1
#ACT
SendCenterMsg 180 70 你的攻击次数已耗尽,请等待刷新! 0 2
ChangeDamageValue 1 – 100   ;伤害清零
BREAK

 

© 版权声明

相关文章