说一下对于pcr作弊检查机制的个人理解
最近的脚本瓜好像闹得挺大?
由于是个人理解,可能有误,请评论区指正
在pcr里边,有一个叫做battlelog的东西,这玩意望词生意,就是战斗日志
这个战斗日志里面包含的信息包括每一动的情况(但不包含伤害,会有个总伤害在最后面),里面有一个值,我管它叫渲染帧
这个值就是指你这action是什么时候进行的
pcr的防作弊系统是完美的,但是他设计的初衷没有吧脚本这个考虑进去,cy根本就不知道打个工会战还有开脚本的。如果你有玩摸轴器就知道了,你将UB固定好,用同样的seed,是可以做到每一次打出的分数都相同的,pcr作弊机制应该也是利用了这一个特性,去后台快速跑,然后与你battlelog给出最后的伤害去进行比较,如果分数不同(注意是不同,这个值不会有误差),比如你上报上去是1919810伤害,但实际他那边运算过来是114514伤害,那就可以判定你作弊了,又比如你报2512伤害上去,对面运算是2513伤害,你也是作弊了。本地改数据,改的是本地的数据,你改不了服务器上的数据啊,运算是服务器运算的服务器又没修改,除非你能改服务器数据
而你肯定问了,暴击呢?随机点名的技能呢?pcr这个机制的话,只要服务器下发给你的seed不变,那么整个所有的暴击结果,随机点名结果都可以看似是已经定好了(要结合当时的情况),除非你手动去发UB更改了下一动seed判断值。举个最简单的例子,记得开服时开始战斗后的yly暴击吗?你可以完全把他看做是服务器定的结果,没发一个UB之前,该暴毙的还是暴毙
而关于seed的这个,你也可以简单理解为:比如狼下一动暴击,但是你断了这一动,开UB了,那UB就暴击了(这样理解是不够深入的,因为只是个大概的理解)
综上所述,在UB定了后,seed也定了,那么每一动的执行顺序,你每一次跑,都是一样的结果,不会变的