守望先锋吧 关注:4,513,356贴子:35,746,961

外挂这么泛滥,简单做个找色外挂原理解读

取消只看楼主收藏回复

身为一个996的社畜,毕业后基本不怎么玩ow了,最近几天有空,上线和以前的老朋友打一打快速,遇到一场非常恐怖的对狙,第一回合我家起了一杆狙,堵在对面门口打,第二回合对面又起了一杆狙,开始神仙打架,两位全是头,看到这个场景我直接退了,后面看了看论坛,发现外挂确实泛滥,而且很多主播也是敢怒不敢言,综合国内外论坛,发现目前ow的外挂有两种,一种是内存挂,读取内存偏移地址找地方位置,另一种就是找色自瞄,这个就很好理解了,找色就是找到地方血条轮廓的颜色,然后实现定位,今天讲解的原理就是第二种。


IP属地:北京1楼2020-01-16 19:44回复
    有人会说,找色早就不能用了,暴雪改了这么多次画面,早就废了云云,其实不然,道高一尺,魔高一丈,不论暴雪怎么更新,都有各种办法去找到正确的目标颜色


    IP属地:北京2楼2020-01-16 19:45
    回复
      2025-08-13 18:48:26
      广告
      不感兴趣
      开通SVIP免广告
      我今天给予的方法很简单,HSV色域,对于了解图像处理算法的小伙伴们而言,这是个很简单也是很方便的找色方法,为了方便,我用python简单做了个demo程序


      IP属地:北京3楼2020-01-16 19:47
      回复


        IP属地:北京4楼2020-01-16 19:48
        回复
          可以看见,原理很简单,转换下hsv色域,提取颜色,做一下腐蚀,就可以提出位置信息,至于什么仿人类操作等等,github上有很多开源工程,我就不在这详细说明了


          IP属地:北京6楼2020-01-16 19:49
          回复
            这次实验,将游戏中色盲选项里所有敌方颜色都测试了一遍,最后发现,紫色再hsv色域中最容易寻找,所以emmmm,我不多说什么了


            IP属地:北京7楼2020-01-16 19:51
            收起回复
              下面分步处理下,首先,得到一张游戏截图,我这里就读取图片了,游戏中获取的方法也有,但是我不会开放出来的,讲讲原理就可以了。


              IP属地:北京8楼2020-01-16 19:53
              回复
                读取图片,然后转换成HSV色域


                IP属地:北京10楼2020-01-16 19:54
                回复
                  2025-08-13 18:42:26
                  广告
                  不感兴趣
                  开通SVIP免广告
                  然后就可以进行剔除不必要的颜色和二值化操作了


                  IP属地:北京11楼2020-01-16 19:55
                  回复
                    上一步我们得到了敌方轮廓,然后做膨胀处理,明确目标范围,根据简单的cv方法获得确切的目标位置,定位,为了结果直观,我用方框框出来


                    IP属地:北京12楼2020-01-16 19:58
                    回复
                      到这里就可以进行下一步操作了,简单的跟踪方法即可,更暴力的一帧拉枪就将鼠标直接定位就好了


                      IP属地:北京13楼2020-01-16 20:00
                      回复
                        跟踪方法很多,不一一列举了,拿最常见的kcf来说,调整下参数,可以做到很平滑的跟枪操作,根据kcf方法返回的跟踪链,进行轨迹预测,经典方法可以用卡尔曼滤波,比如楼上说的半藏预判,很容易可以实现,当然,这些都需要去调整参数,我这里只做了简单的原理介绍,参数调试没去做,有兴趣的可以自行了解


                        IP属地:北京14楼2020-01-16 20:03
                        收起回复
                          至此可以看得出来,目前的找色方法都相当的粗糙,这些cv方法都很简单,甚至于,一个熟练的程序员可以在3个小时内完成整个项目的制作(不包括调参),我希望暴雪后面可以改进渲染方式,比如去掉轮廓,更换渲染接口,或者直接对窗口化或者全屏无边框窗口的玩家进行单独检测,做一个简单的数据曲线,只要分析每次更新后命中数据即可


                          IP属地:北京16楼2020-01-16 20:09
                          收起回复
                            刚刚翻了下国内外各大论坛,发现了另一种外挂方式,AI+HACK的方法,这种更可怕,脱离了找色的方式,用图像识别的算法去做外挂,但是据我了解,国内制作外挂的无论是工作室还是个人,都没这个能力


                            IP属地:北京17楼2020-01-16 20:13
                            收起回复
                              2025-08-13 18:36:26
                              广告
                              不感兴趣
                              开通SVIP免广告
                              看下配置要求,大致可以推断出这个确实是使用了DL的方法,这种被称为“主播定制挂”也毫不为过


                              IP属地:北京19楼2020-01-16 20:15
                              回复