前言

今天来和大家分享一下我的一些写脚本的经验,尤其适合小白,当然有经验的人也可以参考借鉴,大佬们喷的时候轻点~

目标:

找到有效的方法启动游戏,打造一个非常实用的点击函数!

准备工作:

平台选择:

首先我们需要选择一个平台来帮我们更快的进行脚本的编写,我们没必要从头开始造轮子,这里我们选择一个比较成熟且相对比较简单一个平台——按键精灵

安装按键精灵安卓:

网上搜索关键字按键精灵-进入官网选择手机版-下载按键精灵手机助手。




android自动化点击坐标脚本 安卓自动点击脚本制作_bashrc 启动 openbox

按键精灵助手



安卓模拟器选择:

推荐雷电模拟器,老平台值得信赖。下载安装完成后,在雷电游戏中心装上自己想玩的游戏,并且下载"包名查看器"。




android自动化点击坐标脚本 安卓自动点击脚本制作_bashrc 启动 openbox_02

雷电模拟器




android自动化点击坐标脚本 安卓自动点击脚本制作_bashrc 启动 openbox_03

包名查看器



最后准备工作:

启动按键精灵助手-新建脚本-按键精灵助手选择"源文件"模式-连接上模拟器

初级内容:启动游戏

涉及到的内容:启动游戏的方式的理解,屏幕点击函数。

启动方式一:根据包名启动游戏

代码样例:

//假如包名是"phone.test.com"RunApp("phone.test.com")

优点:

1. 不需要担心游戏图标在什么地方,哪怕不在当前页面也是可以的;

2. 只要包名没有输错,准确率100%;

缺点:

1.需要知道游戏的包名;(运行包名查看器-找到你想启动的游戏-复制包名)

2.需要了解一个启动app的函数——RunApp

启动方式二:根据游戏图标所在屏幕的位置坐标点击启动

代码样例:

//假如游戏图标在(500,200)位置Tap(500, 200)

优点:

1. 简单只要知道坐标就可以;

缺点:

1. 如果图标不在当前页面,或者图标被移动,那么就需要再找图标的位置,无法一劳永逸;

2. 需要了解一个函数——Tap

根据上述两种方式,我个人更建议使用使用第一种方式,方式一更加准确。

进阶内容:Tap函数的变形

涉及到的内容:Tap函数,随机函数,如何模拟人工。

如何模拟人工:

既然说到Tap函数那么就需要考虑一些更具有实际意义的内容了,假如我每次都点击同一个位置,那么肯定多次点击下来都是同一个位置,结合我之前文章所说的,每次这样的点击事件其实是被存储在一个专门存放信号量的文件里的,那么一旦检查就能直接判定为你的行为是不正常的。

那么如何让这个行为变得正常呢,就是在这个坐标周围的区域内挑一个来进行点击。这个范围也是需要可控的,范围太大了找不到,范围太小了也容易被过滤为一个位置,再结合人手指点击到屏幕上一般所能覆盖的范围,我建议这个区域保持在(5-20)之间是一个非常不错的选择

代码实现:

/*打造一个理想的点击函数screenX : 屏幕中一个点的x坐标ScreenY : 屏幕中一个点的y坐标rand : 随机数的偏移范围*/Dim screenX, ScreenY, rand //定义3个函数参数Function click(screenX, ScreenY, rand)Randomize //创建一个随机数种子Dim getRand = 0 //定义一个获取输入偏移范围的变量If rand > 20 Then//rand超过我们所想的最大值20,直接变为20Dim r = 20 //定义一个临时变量//获得一个指定范围内的随机数getRand = Int(((r - (-r) + 1) * Rnd()) + 1)Else//获得一个指定范围内的随机数getRand = Int(((rand - (-rand) + 1) * Rnd()) + 1)End If//在指定范围内点击Tap(screenX + getRand, ScreenY + getRand)End Function//运行,点击屏幕(270,256)坐标,在x和y正负不超过10区域内的一个点call click(270, 256, 10)

结语:

编写脚本需要的是解决问题的思路,而不是刻板的步骤123。有思路并且选择合适自己的解决方案永远强于埋头蛮干!做任何事也是可以借鉴的,重要的是用什么方式比较合理有效的解决问题,而不是回避问题.