各位同学好,首先解释一下题目,新手遍历教程里的新手,说的是我自己。因为我是做遍历的新手。给大家说说我做遍历的经验,希望能帮助到其他同学。
话说我当年玩mud的时候,都没听说过遍历是什么东东,我当年玩mud……(此处删去12032字)。从进入北侠的第一天,就总是听到这个特别让我膈应的词汇,一直不知道什么意思,也不好意思去问。后来在不少高手的帮助下,比如bajie,色色,pig,pds,渡海等,还有燕苍等在线给我释疑的朋友,记不住那么多,就不一一感谢了,终于摸到了一点门道,自己经过了几次尝试,现在终于能用上遍历了。我想把这个过程和大家分享,希望能给其他同学一些启发。很多同学以前也写过一些遍历的教程,我是看了他们的文档后才慢慢学习做遍历的。好了废话少说,下面开始。
所谓的遍历,我的理解,就是敲一个命令,让自己在一片地图上按照事先设置好的路径自己去走,在达到某种条件的时候,自动停下来,比如遇到了你要找的人等。这个是靠机器人来触发的。因为很多任务是需要自己在地图上找人,有些地区的地图很大,手动找起来不是很方便,因此做这样一个遍历机器人,第一节省时间,第二提高效率。
用别人的遍历机器人当然可以,但我觉得遍历还是自己来做,制作本身是熟悉地图的过程而且自己做的,问题出在哪里也比较好找,毕竟看path里遍历的路径都是一些奇奇怪怪的字母。
说了半天废话,现在才真正进入主题了。制作遍历分以下几个过程:
1. 定义方向。
这是制作遍历的先决条件,也是最关键的一步。我觉得方向定义好了,剩下的就是走路了。所以这里是不能出错的。我做遍历所经历的最大困难就出现在这里,妄图做了几次都失败,主要就是卡在定义方向这个问题上。首先说明,我用的是zmud7.21,我想462道理是一样的。只是设置上稍有不同。在这里进行方向的定义,如图:
先说说我开始为什么总是出错。721版本中内置了10个方向,是n,s,e,w,ne,nw,sw,se,u,d。所谓内置就是系统已经设置好了这10个方向了,在directiongs中,system目录下directions目录和DirectionsDiag目录下。如图:
如果你想自己定义这10个方向,那么就要把这两个class改成disable的。我曾经尝试删除这10个方向,好像报错了。当然,你可以保留这10个系统内置的方向,但要注意的就是,记得系统都把这10个方向内置成键盘上的什么字母了,你在定义新的方向的时候,可别用到这10个字母,否则就会出错了。我开始出错就是因为不知道系统内置了这10个方向,比如我定义了一个nd是h,系统定义的h是nw,这样我走地图的时候,走nw的的时候,系统写上了h,真正遍历的时候,走到h的时候,机器人走nd了(或者过程相反),所以总是出错。我记得这个问题困扰了我很久,终于在前一阵子,好像是燕苍吧,在线给我解答了这个问题。这个对我帮助很大,我最后能把遍历做下来,也就是弄清了这个问题而已。其实渡海在他的task教程中也提到了这个,我当时阅读的时候不够仔细,没有看全。他的文档链接:http://pkuxkx.com/wiki/knowledge/task,大家可以去看看。当然,渡海还提供了一个非常好的解决遍历过程中一些命令的问题,比如我们遍历过程中会有open door, open men,#wa 2000等这样的命令,如果全部都用directions的方式定义的话,渡海的原话是:这样定义最终的结果就是你把键盘上所有的键全定义光了还是不够用。所以把这种特殊的命令用()起来,录制遍历的时候加进去,非常方便。比如(enter shudong),(open door),(cai yanziwu;#wa 2000)等。
定义方向的方法很简单,大家一看就知道了,比如你新建一个方向,字母n代表north,反方向是s,是south,对应在地图上是什么方向,从下来框中一选择,就ok了。
2. 录制路径
好,完成了我认为最关键的一步,定义方向后,下面开始录制你的路径。菜单,actions-》record path,如图:
单击后,出了个小对话框,不理他,让他悬浮在那里吧,现在开始走路。走一步,发现那个悬浮的对话框里就出现相应的字母,继续走你的吧,知道你觉得这块地图走完了,单击save recording,起一个你自己熟悉的名字,比如你录制了小村的路径,那么这个名字可以叫xiaocun。
当然大地图,比如北京这样的,你得录制好几个,那么分别起名就是了。在这里我想和大家分享的经验是,每个人对一片地图怎么走的方式是不同的,这就是自己录制遍历的好处了,按照你自己的思路去走一片地图,当然不要落下任何的房间,有些房间不想进去,用(l west)类似这样的命令也可以完成。我拿北京举例,先把北京城里遍历一遍,当然多隆的地方进不去,往里看一眼吧,鳌拜府进不去,往里看一眼吧,北京城里都录完了,出城,绕城一周在录一个path,然后,杀掉官兵,上城墙,再录一个。当然不要落掉庄府,如果这样还是没找到,那就得手动进鳌拜府看看了。大概就是这么个意思,录制路径没什么技巧,我记得我录制2个地方的路径是费了比较大的功夫,一个是全真,一个是紫禁城。因为这两个地方地图大,走来走去重复的比较多,一般都是手上拿个地图,先设计好怎么走,尽量少重复,s型走法?先外圈再内圈?从左往右?从右往左?呵呵,看你自己的习惯了。录的时候可以让主id忙自己的去,拿个小米录就可以了。
3. 开始遍历
建议你没录制完一个地方的路径,要走一遍试试,看有没有出错。命令是 #slow XXX(你录制的path名字),这里有个关键的设置,721中是这样的,preferences-》slow walking中,将timeout aborts walk上的勾选掉,然后自己设置 timeout value,按照pds告诉我的,网速快的时候设50,慢的时候设100,经过我自己的实践,我发现50有点夸张,走的太快,满眼花。还有就是遇到你要找的人的时候,蹭下子你自己就跑过去了。然后还得回来找。我一般设置在150左右,网速慢的时候可以再弄高一点。如图:
4. 触发
遍历整个录制完成后,当然这是最花功夫的一项工作,想想,北侠的地盘还是挺大的,一个一个录,虽然乐在其中,但也是件苦差。等你录完了下面就是做触发,也就是找到你要找的人,停下来。拿胡一刀任务举例。很简单,一个触发机器人就可以了。在遍历过程中,如果看到:盗%s宝%s人%s「????龙」*~(@dbr~),命令是:#stop,下面想干嘛?你是看?是打?是杀?是奸?看你个人喜好了。当然,其中的那些变量是你在领任务或者杀死一个盗宝人后,他告诉你下一个目标的名字。这个怎么做不是今天的重点,我就不说了。task的npc同样也是用这种方法来触发。上面我说过,有时候你可能跑的太快了,一下子就从npc边上跑过去了,那样的话,你得回来。以前看过一篇论坛文章,建议把f1和f2键做成macros,一个是#step,一个是#back,也就是说,看到了你要找的目标,机器人触发停下来了,可能没停在目标所在位置上,那么用#back就是往回走,每按一下往回退一步,#step就是继续往前走,等于是在附近去找。我感觉胡一刀任务用#back很好用,走个1,2步就找到了。tasknpc跑的比较快,有时候需要费点功夫。这个大家就自己琢磨吧。
5. 总结
遍历的好处我开始已经说了,提高效率。而自从我用上自己制作的遍历以后,发现确实挺好,真是“价格便宜量又足,以后我就认准这个了”。有的时候遍历一遍找不到,那么再遍一遍。如果还找不到,那就一定是躲到哪个倒霉地方去了。可以继续手动找。比如丐帮的npc,丫在树洞里乱跑,指不定从哪个出口就跑了,要是挨个找,还真耽误不起那时间。武当的npc有时候会跑到林中小路,就土匪那。天龙的npc跑到平西王府那里,这些都是很正常的,做这种任务多了,也就知道他们大概什么个性和喜好了。当然,省事的方法就是,花钱啦。去找无际问吧,花钱买时间而已。
当然,我本人是个做遍历的新手,学习了不少老玩家的文章,自己经过了一些实践,才刚刚入门,希望我的这篇文档能给想做遍历还不会做遍历的同学一些帮助。当然,也想请老手们给点指导,有什么我说的不对的地方,请尽量指出。不要让我不成熟的一些想法误导了其他同学。
也可以在论坛上看,那里有图片。链接是: http://www.pkuxkx.com/forum/thread-5017-1-1.html