如何选择游戏脚本编程框架?对于我们游戏脚本开发者来说,是最重要的事情,是否会多次做无用功,白白消耗时间和精力。选对了,将节省劳力力与金钱的支出,并快速获取收益。
选择开发者
(1) 个人开发者:scrcpyRpa,##auto,##精灵的,##辅助等等。
收费情况:一般课程是收费的,使用是免费的,或者很便宜,一般一年几十元到几百元。
应用场景:主要游戏任务,群控,不追求兼容,追求精度,可长时间运行。
特性:兼容性差,准确度高,资源占用低,脚本一般都是纯代码模式,也有少部分提供了流程图的方式。
(2) 大公司 : 网易airtest,国外的appium,华为,谷歌,阿里这些大企业都有。
收费情况:免费
应用场景:app测试,主要也是游戏测试,遇到问题结束任务,出测试报告,对各种手机型号,各种操作系统都走一遍。
特性:兼容性好,准确度差,资源占用非常高,脚本也是纯代码模式。
(3) 中型公司:近几年新型的办公rpa企业,融资几千万中型公司。
收费情况:比较贵,一年几千元到几万元。
应用场景:办公用,控制电脑的办公软件,office还有网页,erp,crm这些,对手机端的关注比较少,对游戏的关注可以忽略不计
特性:兼容性比个人开发者好,低于大公司,准确度很高,资源占用比较高,写脚本有纯代码和流程图这两种方式。
*总结: 大公司的优点免费,兼容性好,缺点也非常明显,它没有开发群控,资源占用非常大,图像识别如果遇到动画或者透明误差率也非常的大,还有无法保护脚本,如果想售卖,只能给源码,而这些缺点,个人开发者全部给补上了
选择'眼睛'
(1) 图像文字识别:获取一个图像,然后分析图像里面的颜色,形状,文字。
合法性:因为是公开的,所以合法
能否判断是真人还是机器人(app运营商):只能通过行为(但没有运营商判断这个)和手机开通的权限判断(root必封号,无障碍也有可能封号,因为盲人不太可能玩游戏)
写脚本的难度:满分100,难度是50分,因为人的大脑对图像和文字理解能力非常强。
资源占用:非常高,所以使用图文识别,非常有必要优化算法,减少资源开销。
(2) 元素路径识别 :获取一个地址,然后从这个地址分析里面的数据是什么。
合法性:合法
能否判断是真人还是机器人(app运营商):游戏控制可以判断(需要修改游戏客户端源码,8成会封号),原生跟图像识别一样。
写脚本的难度:满分100,难度是60,因为人的大脑对地址的理解能力也很强。
资源占用:忽略不计
(3) 内存网络识别:内存识别从进程当中获取地址分析数据,网络识别是从协议的数据包当中分析数据。
合法性:有可能违法,因为内存和网络里面可能存在隐私数据。
能否判断是真人还是机器人(app运营商):跟图像识别一样
写脚本的难度:满分100,难度是100,因为内存和网络中的东西太多,很难找到,即使找到也可能不是明码,如果不是明码的话,得需要自己解码,这个解码的难度跟开一个陌生的锁是一样,难度很大。
资源占用:忽略不计
总结:内存网络识别速度最快,写脚本难度最大,而且有的东西是无法识别的。元素路径识别,速度也很快,难度一般,缺点有些东西识别不了,比如游戏,如果硬识别的话,需要修改改客户端源码,必封号。图文识别,缺点是资源消耗大,速度慢,优点是任何东西都可以识别
选择'大脑'
大脑就是编程语言,使用编程语言有两个目的,第一是逻辑控制,第二是对外联系
(1) python
(2) javascript
(3) lua
从逻辑控制来讲,使用哪一种脚本语言都是一样的,没有区别。从对外联系,python做的最好,其次javascript,最后是lua
如果非选择一个,建议选择python
选择'手脚'
(1) 模拟真人,点击,滑动,打字等等
合法性:合法,机器人模拟真人帮助我们工作,在任何领域都是合法的。
能否判断是真人还是机器人(app运营商):windows系统中无法通过技术判断,只能通过行为判断,在android系统中,可以通过技术判断,如果说是用adb或者无障碍,app能知道你是用adb或者无障碍操作的,如果程序走的是真人接口,则无法通过技术判断,只能通过行为判断。
(2) 修改内存数据或者修改网络包
合法性:违法,这个属于非法入侵,黑客技术 ,获得利益太大。
能否判断是真人还是机器人(app运营商):这个是app运营商重点监控的,而且app运营商也是有办法监控的,所以说一旦监控到,必然封号,封IP。
课程总结:如果说写游戏脚本的话:开发者,建议选择个人开发者,因为框架个人开发者最早也是游戏脚本的开发者,你和他想的事情是一样的,能精准对接。眼睛,建议选择图像文字识别,因为游戏的画面非常复杂,用元素路径和网络内存识别,有些内容是无论如何与无法识别的。大脑:建议选择python,因为python简单,生态好。手脚:建议选择模拟真人,因为安全,不会出现法律问题。