iam 发表于 2011-11-17 13:29:54

回复 20# trace
谢谢你的指点。你做慕容机器的思路我完全同意,我也是想用462来实现这个功能。
对于你说用lua或者c++,你可能没注意我前面帖子的话,我只会用zmud462,lua是什么都不知道,c++听说过没用过。
所以,如果你能把在B地N层遍历的做法或者思路贴出来(个人感觉这是关键点之一),不胜感激,向你学习一下。
我也先不继续贴我的思路了,静待你的回复。

iam 发表于 2011-11-18 13:39:30

不知道那位仁兄什么时候才能回复,但是自己挖的坑,自己要填满。现在我已经找到了别人做的慕容机器,不过还没来得及看。我还是把自己做慕容机器的想法贴出来吧,抛砖引玉,为462做点贡献。

trace 发表于 2011-11-18 13:42:34

晕。才看见。。。遍历的源码,helllua 和 ptouch的lua代码都有啊。

iam 发表于 2011-11-18 13:45:20

回复 24# trace

我找到的是462的源码   helllua什么的有我也看不懂……

iam 发表于 2011-11-18 13:45:56

对于有中心遍历,通过mrlook找到该中心,需要做触发类didian,用该中心名称做触发,#sto,寻找的同时记录下返回该中心的路径--存成list变量lookfor1的方法。可能的情况,在寻找该中心的过程中,发现了npc,此时也可以#sto。搞定之后,依次取出返回路径的值。

         接下来,开始对此中心周围房间进行广度优先遍历。
         首先抓取此中心房间出口,抓取方法:
         同时要记录出口个数,作为是否遍历完全部出口的判断依据。yinum,ernum,sannum,
         然后一次遍历该房间各个出口所连接的房间,称为二层房间,遍历的时候同样把返回路径存为一个变量lookfor2。
         抓取二层房间的出口,遍历二层房间的各个出口,抓取三层房间的出口,遍历三层房间的各个出口……
         从第一层进入第二层后,yinum-1,

设置变量findok,来标识是否找到npc,遍历各出口,使用#wa @wa,来控制行走的速度。#if @findok=1 ,就停止行走,

         假设只遍历三层房间,如果遍历完成后没有发现npc,那么就再遍历一遍……
         可以设置遍历几遍后如果还是不能发现npc,就判定任务失败,回慕容复重新要任务。
         

需要杀拦路人,开门的,#mess 有拦路的!手动杀掉后,#step,
北京晚上不去。用天色触发。

iam 发表于 2011-11-18 13:47:10

最后一部分由于找到了源码就没太仔细的写如果想探讨的再说吧

supertu 发表于 2011-11-18 14:10:50

可能要提醒下楼主

即使你用462做出了上述的功能,但软件本身的缺陷会让ROBOT的稳定性和效率性大打折扣!

换句话说 462做出的搜索遍历机器人更多的只是象征性。

alucar 发表于 2011-11-18 14:19:18

关键是环状路径如何自动遍历,不如分析一下这个问题的解决思路,比如苏州宝带桥一带

iam 发表于 2011-11-18 14:26:47

回复 28# supertu
关于这个问题,我只是提出了思路,并没有真正的实现过,不好说稳定性的问题。不过既然有成熟的自动机器人,说明稳定性还可以吧。

iam 发表于 2011-11-18 14:27:47

回复 30# iam
好问题!我确实没想到这一点。我想想再回复你。现在在手动慕容,呵呵,早日500k推车。
页: 1 2 [3] 4
查看完整版本: 通用全自动机器人之遍历方法探索