C#又能出来装个B了。一步一步微信跳一跳自动外挂
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 !!!
C#又能出来装个B了。一步一步微信跳一跳自动外挂的更多相关文章
- python 微信跳一跳和源码解读
刚好周末,想研究一下前阵子很火的微信跳一跳 下面进入正文. 本文适用对象为WIN10系统,安卓用户.目的在于让丝毫没有接触过Python的小伙伴都能成功运行,如果你恰好是这样的对象,那么跟着我开始操作 ...
- Three.js - 走进3D的奇妙世界
本文将通过Three.js的介绍及示例带我们走进3D的奇妙世界. 文章来源:宜信技术学院 & 宜信支付结算团队技术分享第6期-支付结算部支付研发团队前端研发高级工程师-刘琳<three. ...
- 一行能装逼的JavaScript代码
一行能装逼的JavaScript代码 2016-06-28 野狗 一行神奇的JS代码,当时我就震 惊了,这不就是传说中的ZB神奇么… … 哈哈. 写本篇文章的缘由是之前看到了一段js代码,如下: (! ...
- 教你如何使用U盘装系统
首先,你必须有一个4G以上U菜,然后,U光盘制作软件(这里我们使用url=KRVS0FUdaNAMKPUXUxjEijxBMalUjaJHph-tL-x4gXGSwVNUW3fj6RfuZtrMg1Y ...
- 这可能是史上最全的windows10装ubuntu双系统教程
一. 先搞清楚自己电脑的类型: A MBR传统bios+单硬盘 B MBR传统bios+双硬盘(SSD固态硬盘+机械硬盘) C UEFI新式bios+单硬盘 D UEFI新式bios+双硬盘( ...
- redis---安装和开启和关闭
转redis---安装和开启和关闭 http://blog.csdn.net/xing_____/article/details/38457463 系统:centos6.4 redis下载:http: ...
- 系统出现bootmgr is missing解决方式,戴尔dellserver装系统须要特别注意的问题
系统出现bootmgr is missing解决方式,戴尔dellserver装系统须要特别注意的问题 欢迎关注http://blog.csdn.net/aaa123524457 转载请注明出处: h ...
- apple iMac一体机 装双系统 实战! (Apple +Win 7 64bit)Good
原帖:http://group.zol.com.cn/1/641_485.html 需要准备工具:一个8GU盘X1 (或Win7 安装版系统盘) Windows 7 pro 64bit 位 ISO 文 ...
- vmware 装 puppy
说做就做了,但是开始怎么试都没装成功,后来在网上查了些资料,再结合自己的实践,终于成功了.下面我就把如何让Puppy Linux安装到VMware 硬盘上一步一步奉献给大家. 一.准备 1.1 安装好 ...
随机推荐
- jquery.uploadify+spring mvc实现上传图片
一.前端页面 1.下载jquery.uploadify 去uploadify官网(http://www.uploadify.com/download/)下载压缩包,解压后放在如下路径: 2.html结 ...
- JAVA基础5——与String相关的系列(2)
差异点比较 String使用+直接拼接 这种情况需要分两种情况来讨论: 1. 都是确定的字符串常量之间进行的+号拼接的时候,由于在编译器就可以确定其具体值了,所以编译器在编译期的时候就会把这些常量拼接 ...
- Winform控件Tag使用规范
背景 Tag在WinForm控件中经常被用来存储临时数据,类型为object,但是当程序中多个地方使用到Tag时,容易造成Tag使用的混乱,Tag是如此重要的一个属性,应该要好好考虑下如何有效的使用T ...
- 【架构篇】OCP和依赖注入
描述 本篇文章主要讲解 : (1)OO设计OCP原则: (2)依赖注入引入 (3)依赖注入分析 (4)依赖注入种类 1 内容区 1.1 IOC背景 (1)Ralph E. Johnson &a ...
- c# AutoMapper 使用方式
安装方式:使用vs自带的nuget管理工具,搜索AutoMapper ,选择第一个安装到你的项目即可. 我从网上找了一些资料,下载了个demo,然后自己又写了一遍,我把AutoMapper 的使用分为 ...
- .meta和模型贴图丢失
一些策划的工程里经常出现模型贴图丢失,同样的工程,其他人没有问题.就算全部还原,也无法解决,最后只要美术在它的工程里重新关联贴图.一次偶然的机会,我发现把模型和贴图的.meta文件删除,让unity重 ...
- 蓝桥杯 密码脱落 LCS
9. 密码脱落(后来题目说是有问题,测试用例不会有E出现) X星球的考古学家发现了一批古代留下来的密码. 这些密码是由A.B.C.D 四种植物的种子串成的序列. 仔细分析发现,这些密码串当初应该是前后 ...
- SQL Server学习之路(八):扩展SQL语句
0.目录 1.问题描述 2.第一种方法 通过GROUP BY子句解决 3.第二种方法 通过聚合函数解决 4.第三种方法 在select...from...中的from后面嵌套一个表 5.第四种方法 在 ...
- springboot学习(三)——http序列化/反序列化之HttpMessageConverter
以下内容,如有问题,烦请指出,谢谢! 上一篇说掉了点内容,这里补上,那就是springmvc的http的序列化/反序列化,这里简单说下如何在springboot中使用这个功能. 使用过原生netty ...
- 如何配置 Health Check?- 每天5分钟玩转 Docker 容器技术(107)
容器状态是 UP 的,应用就是健康的吗? 还真不一定!Docker 只能从容器启动进程的返回代码判断其状态,而对于容器内部应用的运行情况基本没有了解. 执行 docker run 命令时,通常会根据 ...
