首页 技术 正文
技术 2022年11月14日
0 收藏 471 点赞 3,414 浏览 1505 个字

PS:语言只是载体。思维逻辑才是王道

  前天看见了个python的脚本。于是装python。配置环境变量。装pip。折腾了一上午,最终装逼失败。

于是进入博客园,顶部有篇文章吸引了我 .NET开发一个微信跳一跳辅助程序。于是download下来测试一把。

  

  不过博主的是半自动外挂。需要左键点击小人,右键点击需要跳的点。点了几十次之后不耐烦了。

  那又怎样?又不开车?又不会装逼?食屎啦你!

  手动玩到了2018。。。

  

 发现

    原来还可以通过C#连接安卓发送shell命令进行操控。新姿势!新姿势!

    通过42楼发现,从图片中搜索小人。咦?这怎么实现呢?

    百度百度百度。。好吧很少用google。。可能我是菜鸟程序员吧

    喜出望外。

    “图片像素遍历”

    

 实现思路

    一、找到小人坐标

    二、找到要跳的坐标

    哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈。。。。。没毛病

  

   如何找到小人坐标?

      –  小人颜色固定,取底部rgb扫描像素对比

       —  没毛病

    代码:

    

    效果:

    

    完美?完美!!

    弱水三千只取一瓢。我要最底下那个!!

    

    到此,小人底部坐标取到。是不是很简单粗暴??

   如何找到要跳的坐标?

        

      

      – 取到要跳的顶点和最右边。取顶点的 x 和右边点的 y 作为要跳的点

      – 怎么取顶点?

      – 从上到下,从左到右,与背景对比,第一个碰到的颜色不一样的为顶点

      – 不行 背景是渐变的

      – 噗。。。  那把r g b 设置相差10 以上为准吧

        if (bpixel.R – pixel.R > 10 || bpixel.R – pixel.R < -10 || bpixel.G – pixel.G > 10 || bpixel.G – pixel.G < -10 || bpixel.B – pixel.B > 10 || bpixel.B – pixel.B < -10)

      – 第一点是右上角那个 

      – 像素遍历从高度*30%的坐标点开始

      – 行是行,有时候与背景色相近识别不到

      – 把 bpixel 设置成当前像素的 y-1 位置的像素  bpixel = MyBitmap.GetPixel(x, y – 1);

      – 嗯 上下对比,背景渐变差异不大,第一个差异大的点就是要跳的顶部,完美

      – 怎么取右边点呢?

      – 遍历到顶部以后像素的时候与顶部颜色对比,颜色一致设置红色,取 x 最大的为最右边

        

        

      – 成功啦  有时候会有bug,多个块颜色一致的时候,最右边不是最后要跳的块

        

      –  对比右坐标的时候,如果大于150像素 就放弃。

        

      –  顶部也会有bug,有时候小人头超过要跳的小方块,导致计算顶部位置会是小人头

      –  那就在小人坐标 x 左右30不计入顶部识别

        

      –  哇塞  !好像没有什么bug了 ,再加上定时器,或者死循环,或者递归就可以实现自动跳转啦。一会儿就两千多分啦!

        

      –   其实取到顶点之后,扫描 y 值相等 颜色一样的。然后取中间值,会更精准

        

      –  艹 ! 刚才想啥去了?

      –  慢慢试嘛 。其实别人还有更好的算法。颜色相似的,点集合取平均坐标值, 没经历过,总要经历笨方法。起码源于自己的思维

    

      祝大家新年快乐

      2018  888 !!!

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,086
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,561
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,410
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,183
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,820
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,903