自动收取蚂蚁森林能量雨

博主分享了如何利用按键精灵和大漠插件自动化收取支付宝蚂蚁森林的能量雨。通过在PC上控制越狱的iPhone,经过一系列软件和脚本的配置,最终实现了通过脚本自动识别和点击能量球,提高了效率,减少了手动操作的繁琐。
摘要由CSDN通过智能技术生成

        首先,说明一下。这是一个非常迂回且效果不佳的方法,小弟不才,安卓以及苹果手机上的脚本没啥研究,PC的按键精灵略懂,因此才有一下脚本。觉得有用拿去参考,大佬勿喷。

        我一直都是有玩蚂蚁森林的,一开始也只是普通的收下能量。后来换了台iPhone 11,把闲置出来的iPhone 7越狱后发现 AlipaySteps 插件可以直接改支付宝步数(10W步一下)然后就开始每天7点准时收296克的步数能量。后来出了能量雨玩法,每天3次能量雨,第一次最多120,二、三次最多70,直接就把每天上限翻倍,于是我天天能量雨。一段时间后按的有点累,用iPhone 11去能量雨把,屏幕大,手指顾不上;用小7去能量雨吧,屏幕小,容易点不着。结果不理想又在15秒前返回冲进,一天3次机会通常要点4、5次。。。后来想着能不能用按键精灵解决这问题哇,毕竟这点点点无脑操作,按键精灵图色功能就很好解决 ,说干就干!

        前面也说到我对手机脚本没啥研究,与其重新弄一门脚本语言还不如直接用按键精灵(实际上是苹果手机的按键精灵或触控精灵都要付费,不舍得)。首先想到的就是直接安卓模拟器进入蚂蚁森林,按键精灵脚本模拟器;但结果要不是模拟器不能能量登录支付宝,要不无法加载蚂蚁森林以及能量雨画面,只能直接放弃。后来想到华为手机与华为电脑的多屏互联,把手机投到PC,PC脚本控制。然而我的笔记本是联想,并不是华为;手机是iPhone并不是华为。只能寻找多屏互联软件来达到效果。通过各种百度,我找到了 Dell Mobile Connect 以及 虫洞Pro 两款软件。 Dell Mobile Connect 是戴尔推出的免费软件,通过无线局域网、蓝牙以及蓝牙连接,那个延迟,我找到破解后试了三秒就放弃了。 虫洞Pro 是一个控安卓免费,控苹果收费的软件,但可以免费体验3天,收费也只是一次收费永久使用(没有手机按键精灵按月,按年付费恶心)。虫洞Pro 的连接方式可以通过数据线,也可以通过无线局域网,无线局域网控制的话延迟稍大,但比 Dell Mobile Connect 对比是好多了,数据线连接画面、鼠标点击简直无延迟,完全实现手机投到PC,PC脚本控制。后来通过测试安卓、苹果实现的难度,还是选择了虫洞Pro 控小7来跑脚本。完事具备,只欠脚本,开写。


脚本思路也很简单呀,不就是找图?找图不可能全屏找吧,软件就那么大,全屏找浪费时间。所以直接查找虫洞Pro 句柄,只在软件内找图。根据任务管理器,轻松查到虫洞Pro 的标题是Blackhole

Hwnd = Plugin.Window.Find(0, "Blackhole") //找到标题含有Blackhole的程序句柄赋值Hwnd
TracePrint Hwnd //F5调试时回显Hwnd变量内容

找到句柄后,肯定之在句柄后台找这个能量球哇

通过按键精灵抓抓大致能判断出虫洞Pro 打开时575*875这样的一个窗口,通过按键精灵后台区域找图对虫洞Pro 的全窗口找图,找到并点击坐标,再通过鼠标左键单击该点。由于能量雨是动态的,找到的图识别出来后实际位置会比识别位置稍下一点,因此Y需要+50-60(别问我怎么知道这个值的,+10不行就+20)。

Hwnd = Plugin.Window.Find(0, "Blackhole")
iCoord = Plugin.Bkgnd.FindPic(Hwnd,0,0,575,875, "C:\dm_test\photo\1.bmp",  0, 0.8)
XY = Split(iCoord,"|")
X = XY(0)
Y = XY(1) + 50
Call Plugin.Bkgnd.LeftClick(Hwnd, X, Y)

一直循环该脚本能达到预期目标,但是会发现这个点漏太多了吧。想了一下,一次判断只点一个球,那么同时出现3个球岂不是要判断3次?这样的效率的确太低了,于是想要一次判断得出此刻所有小球,再一次点击多个。但后来发现按键精灵自带的方法实现不了,于是转战大漠插件,因为早有耳闻大漠插件的图色功能比按键精灵要强,又是一顿百度。

首先就是要使用按键精灵大漠3.12插件在使用的电脑上注册一下咯


这是注册脚本,百度一堆,然后自己小改。

PutAttachment "d:\大漠插件\plugin","RegDll.dll"
PutAttachment "d:\大漠插件\plugin\dm", "dm.dll"
Plugin.RegDll.Reg ("d:\大漠插件\plugin\dm\dm.dll")
Set dm = createobject("dm.dmsoft")
ver = dm.ver()
//判断插件是否成功
If len(ver) = 0 Then 
    //如果返回值"ver"的长度为0,则插件注册失败
    TracePrint "插件注册失败,检查系统是否禁用了vbs脚本权限"
    //结束脚本
    EndScript
Else 
    //否则,注册成功
    TracePrint "插件注册成功"
    MsgBox "插件注册成功"
End If

然后就是使用大漠插件找到虫洞Pro程序句柄,绑定程序句柄,从句柄中识别能量球

Plugin.RegDll.Reg ("D:\大漠插件\plugin\dm\dm.dll")
Set dm = createobject("dm.dmsoft")
Hwnd = dm.FindWindow("", "Blackhole")
dm_ret = dm.BindWindow(Hwnd, "normal", "windows", "windows", 0)
dm_ret = dm.FindPicEx(0, 0 575, 875, "C:\dm_test\photo\1.bmp", "000000", 0.1, 0)
XY = split(dm_ret,"|")
index = 0
count = UBound(XY)
TracePrint count
Do While index < count
    NewXY = split(XY(index), ",")
    x = int(NewXY(1))
    y = int(NewXY(2))
    //TracePrint x&":"&y
    dm.MoveTo x, y+60
    dm.LeftClick 
    index = index + 1
Loop

哎,这效果就出来了,但是唯一缺点就是脚本需要无限循环,还要自己终止,后来小改一下,把识别的过程写进shou的子程序里面,加入点击开始,然后静止三秒后识别小球收,最后检测到结束提示就自动停止,下面是最终成品脚本。

Sub shou
    dm_ret = dm.FindPicEx(0.2*W, 0.1*H, 0.9*W, 0.6*H, "C:\dm_test\photo\1.bmp", "000000", 0.1, 0)
    XY = split(dm_ret,"|")
    index = 0
    //count = UBound(XY) + 1
    count = UBound(XY)
    TracePrint count
    Do While index < count
        //NewXY = split(XY(count-index-1), ",")
        NewXY = split(XY(index), ",")
        x = int(NewXY(1))
        y = int(NewXY(2))
        //TracePrint x&":"&y
        dm.MoveTo x, y+60
        dm.LeftClick 
        index = index + 1
    Loop
End Sub

Plugin.RegDll.Reg ("D:\大漠插件\plugin\dm\dm.dll")
Set dm = createobject("dm.dmsoft")
Hwnd = dm.FindWindow("", "Blackhole")
dm_ret = dm.GetClientSize(Hwnd, W, H)
//TracePrint hwnd
dm_ret = dm.BindWindow(Hwnd, "normal", "windows", "windows", 0)
dm.MoveTo 0.5*W,0.7*H
dm.LeftClick 
Delay 2800
Rem 开始
dm_ret = dm.CmpColor(208,346,"FFFFFF",0.9)
If dm_ret = 1 Then
	Call shou
	Delay 10
	Goto 开始
End If

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值