写过一些简单游戏的挂机脚本,比如宝宝斗场挂机脚本,赚了一点小钱,不敢在这高手云集的地方称大虾,仅仅是想和大家交流。
自己写脚本一开始很痛苦,不过写多了以后,很多游戏的子程序、函数都是可以借鉴的,甚至可以直接复制粘贴过来使用,所以后面越写越快。最后就是设计思路和编程习惯了,良好的编程习惯对脚本运行的流畅程度、降低BUG发生率有很大影响。好了说说我的体会
1、多用函数,少用子程序,模块化:如果一个游戏是频繁的点击鼠标操作,那么需要建立一些函数来进行这些操作。我比较喜欢用函数而不用子程序。为什么呢?因为函数有返回值,子程序没有。我可以让电脑做一项操作,但是操作的结果如何我不知道,这就需要返回值。比如找图,找到了没有呢?这个任务完成没有呢?等等
2、关于找图,每个图用两个以上函数判断。因为游戏经常会改动的,有些游戏会经常对图色做细微的修改,肉眼看不出来,但是找图就找不到了,这个方法可以尽量减少出错。
3、尽量少用死循环,坚决不用GOTO。我建议死循环只用在大的地方,如整个主线程,整个子线程。局部尽量用for x代替或者do while。如果局部一定要写死循环,一定多加一些退出循环的判断,同时加上运行循环的时间限制(循环开始前用t1=time记录时间,然后在循环里用datediff判断循环消耗的时间)。
4、记录:用ini文件记录发生的事件,包括任务是否完成,脚本运行情况,是否出错方便以后查找修改。记录鼠标点击坐标,因为大家喜欢用一种分辨率以后不会经常调的,一次成功找图后鼠标点击坐标会记录下来,下次如果找不到图了可以尝试调用原来记录的坐标进行点击(不管你图怎么改,我还是有办法),并且鼠标坐标周围适当范围予以截图保存,方便以后处理。
5、监控:可以让按键精灵向邮箱发邮件,也可以用teamview等远程控制软件,有钱的话也可以考虑买ip kvm(我目前的愿望,但是没米)。
6、销售:如果脚本不是很完善或者游戏更新很快,一定要勤快一点。不要对游戏更新感到烦人,只要函数写的好,更新游戏只要加点图,改几条语句就可以了,而你的客户需要经常依赖你,不管你收钱不收钱,他需要长期与你保持联系,这样你的生意自然会越来越好。