- 按键精灵会员
- 1177096
- 188
- 3
- 66 朵
- 684 个
- 65 个
- 12720
- 2012-06-11
|
1#
t
T
发表于 2014-05-27 20:42
|
|只看楼主
本帖最后由 兄弟工程师05 于 2014-8-7 17:40 编辑 『教程图片需登录论坛方可查看』 本期主题:实战源码讲解 脚本功能:顾名思义,循环冒险。(无限循环刷副本,直到体力耗尽) 使用要求:请在“副本选择开始冒险界面” 或 “中途操作界面” 或 “战斗中” 启动脚本均可。 环境支持:分辨率:720*1280、1080*1920、540*690、靠谱专版:800*600。点击:终结分辨率噩梦!按键精灵(安卓版)全面支持靠谱助手 脚本思路:颜色判断确认当前画面内容,执行对应的触屏操作,组合实现所谓的循环冒险功能。(语文不是体育老师教的同学请自行查看主线循环) 腾讯新闻咨询:快游全民打怪兽助手 自动刷副本教程 进入正题:以下我主要介绍下写一个脚本简单需要有哪些要点必学。 一、脚本思路。 首先写一个脚本,我们得先知道写个脚本来做什么,如果我们自己都不清楚脚本是做什么,谈何写脚本。 那么这里我来进行步骤解析: 问:什么是循环冒险。 答:循环,循环做某事,有头有尾,有始有终,称为循环。 答:冒险,进入游戏副本,攻略怪物,推到BOSS,打开宝箱,获取奖励,完成冒险。 二、逻辑构建。 根据以上分析,我们已经明确了什么是循环冒险,那么接下来需要规划逻辑框架,让脚本有一定逻辑判断能力,对当前情况的信息获取,信息判断,执行对应的操作。 这里主要分两点: 1、分析脚本需要哪些环节。 2、论证每个环节的可行性。
 - 您所在的用户组无法下载或查看附件
判断:在冒险开始画面 点击:开始冒险按钮。(这里提示,取点判断时取按钮边框区域的点,因为部分关卡按钮是“开始大战”)
 - 您所在的用户组无法下载或查看附件
判断:选择好友,进入按钮画面 点击:进入按钮。(进入副本对战,好友默认第一个)
 - 您所在的用户组无法下载或查看附件
 - 您所在的用户组无法下载或查看附件
判断:是否已开启自动战斗图标 点击:未开启则点击开启,已开启则点击右边技能图标。
 - 您所在的用户组无法下载或查看附件
判断:宝箱图标 点击:奖励宝箱。(打开宝箱)
 - 您所在的用户组无法下载或查看附件
判断:确认按钮。 点击:确认按钮。(领取奖励)
 - 您所在的用户组无法下载或查看附件
判断:再玩一次按钮 点击:再玩一次按钮。(返回开始冒险界面,循环继续) 三、知识要点。 脚本最重要的逻辑思路已经描述完毕,相信就是“小明同学”也懂了。 脚本逻辑思路构建完毕,剩余的不过是代码填空。 代码逻辑框架:从零学起之基础核心《麻雀虽小五脏俱全》核心:脚本是代替人工操作,那么该有的都不能少,这里我们拿一个团队做比喻。1、一个主团长( 主线循环),负责管理指挥团队。 2、若干副团长( 支线循环),负责协助团长管理。 3、若干团小组( 功能模块),各个团员集合小组。 4、若干团成员( 代码命令),负责执行做事单位。 5、若干团精英( 固定模块),专精处理固定事件。 以下分类名称只是我个人命名的称呼,大家看内容理解即可,如有不懂可以跟帖,或按键群里联系。主线循环:完整脚本主线循环,全部功能都由主线中展开执行。 支线循环:结构其实与主线循环一样,只是挂钩在主线之下的一个循环事件,当主线中某个环节,需要单独循环做某事时,则可展开另一个“支线循环”,挂钩主线循环下,当该循环事件完成,必须返回一个结果给主线,成功或失败或别的什么信息,主线根据返回的信息,判断做下一步操作。 功能模块:则是一些具体执行功能代码封装,如Sub或Function,Sub不支持返回值,许多功能执行需要一个返回结果,来判断下一步操作,请使用Function。 代码命令:顾名思义,一个个功能命令即是。 固定模块:则是一些常用的函数模块,比如找图、找色、多点找色,等等这类重复用到的功能,他们的结构一样,只是部分参数不一样,为了避免每次调用都要写一大堆重复性代码,把相关命令进行封装调用,这些固定模块基本是不需要修改,不同与功能模块,功能模块是针对每个脚本而进行编写封装,而固定模块则每一个脚本都需要用到的固定函数。 重点总结: 首先本文中主要用到单点找色与多点找色的原理来识别屏幕画面,无找图。(不仅仅是找图略慢,作图麻烦,不支持同等比例缩放图像的判断等) 此外为了多分辨率兼容修改的便捷,我把全部的多点点阵特征信息与全部坐标参数写在开头,一律用数组形式赋值,传入脚本调用,这样脚本框架无需改动情况下,我只需修改前面配置信息,即可兼容其他比例的分辨率。 也许我的代码结构对于新手来说可能不太理解,对于老手来讲不太习惯,甚至不理解为什么我这么写结构,但是我可以告诉你们,本人09年接触按键从小白自学起家到后来经师傅大人指导,代码的结构也是不停的优化,才形成目前的格局。存在即是合理,我这么写自然有我的用意,希望你们的悟性点没加错,引用我格式的同学我希望你能理解为什么这么写而非照本宣科,不用我格式的同学希望你也有自己的领悟,心里清楚明白你理解了,但某些方面觉得有更好的方式所以不用,如果有认真读到这里的同学,随时欢迎加Q留言,我有好的分享会随时发布。 或许我的代码结构不是最适合你们,但在你们还未有属于自己风格特性的编写格式习惯前,希望对你们有所启发,不墨迹了。 常用功能函数:本文中需要用到的相关知识点教程。 1、想学的同学希望认证阅读理解。 2、只想下载个应用的同学也可以点下载、 3、想复制源码的同学也可以回个帖支持下,领走! 另外大家可以在手机按键群里联系到我,谢谢大家。从零学起之安卓篇《按键精灵安卓版找图找色应用汇总介绍》从零学起之安卓篇《按键精灵安卓版UI界面控件应用介绍》从零学起之安卓篇《如何简单获取手机画面导入PC按键抓抓》从零学起之安卓篇《独立APK小精灵制作流程介绍》APK下载: - 您所在的用户组无法下载或查看附件
UI界面预览 - 您所在的用户组无法下载或查看附件
UI代码展示- 界面1:
- {
- 多选框:
- {
- 注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
- 名称:"技能",
- 提示内容:"是否使用第三个技能",
- 选中:false,
- 文字大小:0,
- 高度:0,
- 宽度:0
- },
- 文字框:
- {
- 注释:"文字大小、高度、宽度是可选属性,如需使用默认值,可保持值为0或直接删除此属性",
- 名称:"来自",
- 显示内容:"来自:按键精灵安卓版(http://m.anjian.com/)",
- 文字大小:0,
- 高度:0,
- 宽度:0
- },
- }
复制代码 脚本UI设置参数获取代码- /////////////////////////////////////////////////////////////////////////////
- '获取UI界面设置参数
- Dim val_jn
- val_jn=ReadUIConfig("技能",false)
- If val_jn=True Then
- ShowMessage "技能3已开启!"
- Else
- ShowMessage "技能3未开启!"
- End If
- Delay 1000
- /////////////////////////////////////////////////////////////////////////////
复制代码 完整脚本源码展示:回复可见,记得给花!优化升级版本:看完的同学请试着把最后作业完成,理解一半以上的同学可以联系我专门指导。 UI界面预览 - 您所在的用户组无法下载或查看附件
UI代码展示 win_h Then
'比例计算(该比例是针对靠谱模拟器分辨率制作,如需要增加别的分辨率比例,请学习后,对照范例更新特征)
win_w=win_x/800
win_h=win_y/600
TracePrint win_w
TracePrint win_h
If win_w = win_h Then
开始按钮=Array(569,475,"040415","18|-24|FFFFFF,-1|-36|FFFFFF,20|0|BAB291")
进入按钮=Array(528,483,"052657","-11|0|4A9DCE,59|-4|082557,59|12|4FAAD3,73|-6|4A9DCE")
奖励宝箱=Array(400,410,"05263E","-84|-33|02C7FE,83|-38|00ABF5,72|-100|02E0FF,-72|41|06B8FC")
确认按钮=Array(357,547,"052657","18|5|4C9ED0,77|-11|082557,86|-15|4A9DCE,2|-16|4A9DCE")
再玩一次=Array(73,527,"082557","45|10|4A9DCE,62|-1|4A9DCE,86|22|4FB2DB,100|7|4A9DCE")
已自动战斗=Array(86,509,"FFFFFF","-30|-14|37BBA3,-18|-14|37BBA3,-10|-14|3FC4B4,-1|-12|41B299")
战斗技能壹=Array(730,525)
战斗技能貳=Array(610,525)
战斗技能叁=Array(490,525)
未自动战斗=Array(86,509,"FFFFFF","1|42|FFFFFF,-20|-29|5DB2D4,-19|74|1F74A7,15|20|0D1D2E")
超越好友=Array(943,1432,"082852","2|-32|4A9ECE,24|0|4A9ECE,0|29|4A9ECE")
End If
End If
/////////////////////////////////////////////////////////////////////////////
'最后比例还是不相等则
If win_w 完整源码脚本源码展示,回复可见。
点评
305431948
论坛升级,我的许多帖子都残缺了,呵呵……
发表于 2016/5/1 16:28:56
|