接上一篇文章,今天和大家具体聊一聊暴雪封号的三个机制。其实大部分游戏的封号原理都是大同小异。
第一:Warden检测
上一篇中我们提到过,暴雪的Warden运行于魔兽游戏客户端,接收服务器不定期发送过来的数据包,执行检测命令。简而言之,就是暴雪爸爸或者GM想要检测你在客户端上是不是干坏事了,就会发送一个数据包到你的魔兽客户端,通知Warden开始检测。
那么检测的内容是什么呢?对脚本工作室威胁最大的是下面三个方面的检测。
1. 窗口检测
窗口检测其实意义不大,几乎所有的脚本都可以轻松回避。我们要提防的是Warden很有可能会扫描窗口的控件标签。这个对网盘挂来说还是有一定的杀伤力的。
2. 敏感文件夹检测
对魔兽世界而言,最敏感的文件夹当然就是插件(interface)文件夹了。我们以毁誉参半的EWT为例,基于EWT开发的几乎所有的脚本都在插件文件夹里添加了自定义的插件。这些脚本都是面向市场公开发售的,所以暴雪可以轻松拿到样本,在检测interface文件夹时,如果发现了符合样本特征的插件,基本就可以认定你使用了未授权的第三方软件。
当然,EWT这个工具对这个文件夹里的脚本插件做了屏蔽处理,但技术对抗永无止境,时而是暴雪的检测技术压倒了EWT,这时就会发生大规模封号。
还有一点非常重要,你之前使用过EWT或者类似的脚本,对interface文件夹做了修改,之后你不用他们的时候,如果不及时清理interface文件夹,那么之后哪怕你是手动操作,当暴雪发送Warden过来检测你的时候,你一样会被封号。
重要的事情必须牢记:如果是脚本工作室,请保持interface文件夹的纯净,不要有任何插件。记住!是任何插件!任何插件!任何插件!原因比较复杂,大家记住即可。
3. 敏感函数检测
这完全属于技术对抗领域,比如说Lua基础C函数调用,LuaExcuteBuffer函数调用等都属于敏感函数检测的范畴,工作室的朋友们不必了解。而对技术人员来说,如果你没有强大的软件逆向功底,在没有彻底搞清这些函数的检测机制之前,最好不要碰这些敏感函数。
4. 内存特征码检测
这一方面的检测同样是针对网盘挂,因为网盘挂很容易被暴雪官方拿到进而取得内存特征码,纯粹的内存特征码定位会造成大面积误封,所以Warden更多的时候采用的是Hash特征码来定位市场脚本。
为什么网盘挂一开始的时候稳定性尚可,是因为它更新的比较勤,Hash特征码每次更新都会变化。什么时候更新的不频繁了,或者发售泛滥引起暴雪的重视了,就会发生大规模封号。
第二:玩家举报,GM现场查验
任何成功的游戏都有金农和忠实的玩家,魔兽也有净化游戏环境联盟,前一阵子还出了个悠悠卫士,自动举报,害惨了一大批工作室。
直截了当的说,脚本工作室不可能不被举报,而当你被举报的次数过多,就会触发Warden检测,如果你是内部脚本,经受住了Warden自动检测,大部分情况下可以活得久一些。但是,一旦你的历史数据在暴雪后台的预警阈值到了黄色,或者举报你的次数太多,这时就会有GM来观察你。
如果你使用的脚本很优秀,GM在十几秒内没有看出你是脚本,他很可能就会传送你然后看你的反应。当然,这种方式对玩家体验的伤害很大,一般不会频繁使用。一旦发生,那基本上就是无解,看运气吧。换句话说,GM每天看那么多的脚本,基本上看个十几秒也就真相大白了。我们在开发副本代码的时候,有时会在举报重灾区停留一个月甚至更久,经常会碰到传送,但是人在电脑旁,大部分情况下不会出问题。
举报导致的封号对工作室有一定的杀伤力,但是不会给工作室造成重大损失,算是正常损耗。至于GM严打和主动巡查,这个就和节假日查酒驾是一个道理,你非要顶风作案,那神仙也救不了你。一个合格的工作室,一定要具备敏锐的风向嗅觉,一旦发觉有严打巡查的迹象,停机保号一两天才是最明智的选择。这个其实和股市有些像,有能力不下牌桌,手中始终有弹药,稳定的收益压倒一切。
第三:暴雪杀手锏,大数据行为分析。
在上一篇文章里我就说过,大数据行为分析是无解的,除非你玩的是个单机游戏,只要你玩儿了网络游戏,你的数据就掌握在游戏厂商的手里。也就是说,暴雪理论上可以知道你在游戏中所作的一切。
但是,受限于目前计算机的算力以及综合考量误封的概率,这个大杀器暴雪也不能时时刻刻说用就用。否则也不会有20%的工作室仍然可以风调雨顺的活着了。
大数据行为分析,其实就是数学模型的建立,往深奥里说要涉及到机器学习乃至深度学习的范畴,但往简单里说其实就是根据你的数据,判断出你是一个玩家还是一个机器人。传统的数据分析一样可以做到,但在海量的数据面前,他要分析出来可能要一个月甚至更久,没什么太大的意义。采集数据一个月,分析数据一个月,暴雪如果是这种效率,工作室睡觉都能笑醒。
在这个方面,暴雪采用了二八法则,既然脚本不能彻底根除,但只要我愿意,我随时可以解决掉80%的脚本。事实上,如果暴雪的Warden、举报机制、GM巡查、大数据行为分析同时发难,80%的脚本工作室都会死掉。但是暴雪不会这样做,工作室的月卡也是月卡,就像我之前说的,恐惧来源于未知,来源于失控。暴雪只要做到80%的生杀大权握在自己手中,他就可以安然入睡。而剩余那20%的工作室能做进行业顶层,自然也明白这个道理,不会蓄意吵醒暴雪。这就是强者之间的微妙的平衡,王不见王,心照不宣。
当你在森林中碰到一头熊,你不必跑赢熊,你只要跑赢你的同伴就可以了!
下一篇文章中,我会和大家一起聊一聊,如何在暴雪的Warden、人工、大数据三重检测之下,长期稳定地生存。