candyqing 发表于 2017-11-27 12:42:46

MUSH边用边学(抛砖引玉系列) ------- 白驼初见

本帖最后由 candyqing 于 2017-11-27 02:07 PM 编辑

上一次玩MUD已经是多年前的事情了,不过当时用的还是zMUD,这次由朋友推荐来到北侠这里,感觉这里真是不错,气氛很和谐,老人们也原意解答新人的问题,还给予了很多帮助,真是让我感觉特别温馨,QQ群(北侠主群:152814678)里的月色教主还推荐我使用新的客户端MUSH,我想了一下也是,玩MUD也该与时俱进,那就来尝试一下新的客户端吧。

不过说真的,我从zMUD转到MUSH的时候,真是经历过几次挣扎,因为MUSH入门比zMUD多少要困难一些,而我以前又用惯了zMUD,所以我是几次删除了MUSH客户端用回zMUD,不过最终,我还是选择了MUSH(咳咳,主要是我发现群里共享的机器人MUSH版本的比较多,{:7_279:})

MUSH客户端,QQ群里有一个教主已经设置好的可以下载,就是群文件里的【神灯套1.4a】,下载,解压,这些就不说了啊,要注意的一点是:解压出来的文件不要放在中文路径下,要不然会出问题。

一般刚开始用MUSH的时候可能会需要修改下面几个设置:

1、mush的默认目录:




2、修改字体



推荐使用字体:http://hk.pkuxkx.com/forum/thread-13806-1-1.html

3、插件的默认目录



4、每行显示的字数




5、新人常用到的插件(这个在教主的神灯套里基本都有了,如果没有就从论坛上找一下)




6、单行多命令的开启,使用城际通之前需要先开启这个选项




7、脚本文件的设置,发送脚本命令提示错误的时候,先看一下这里是不是没有正确的指定脚本文件的位置





上面写的这些就是我在初用MUSH客户端时遇到的问题,其实这些问题都可以从教主的神灯套中的教程里面找到答案,强烈推荐先看教程,里面有很多有用的东西,我就是看教主的教程学习的MUSH和LUA,感觉非常实用。

好啦,我也是第一次写东西,那第一篇就先写这么多,循序渐进,下一篇我会写从新手村出来后的经历(新手村就不写了,因为在新手村里, 基本上只要会用quest这个命令,就可以知道下一步要做什么)。

新手村最后要注意的一点,拜别游庄主的时候要用:chat* bye you,这样才能拜别他,很多新手到这里都迷糊了,使用的基本上是chat bye you,这样是不对的。

北大侠客行MUD,中国最好的MUD

candyqing 发表于 2017-11-27 20:48:23

新手出村成长任务第一篇:平一指配药

本帖最后由 candyqing 于 2017-12-1 01:02 AM 编辑

现在你已经从新手村出来了,站在了扬州中央广场,是不是有点迷茫?现在我应该做些什么呢?



翻了翻兜里,除了一个宝典之外,还有一个路引,这个东西就是新手飞机啦,可以去很多地方的,你可以直接使用这个去你要拜师的门派先拜个师父,不过我们白驼呢,在扬州这里就有一个接引人,所以我们就不需要使用这个去拜师啦。

从这个广场走 n;w ,我们就来到一个钱庄,里面的掌柜钱眼开正笑眯眯的看着你呢,偷偷的告诉你,这个就是我们白驼山在扬州的接引人啦,不过你直接拜师那他是不会收你的,你得先点明他的身份:ask qian about 白驼山,再来bai qian,这样他才会收你,不过有的时候他可能会犹豫要不要收你进白驼山,那你呢,就可以先走一个e,然后再走w回来再次尝试一下bai qian,一般来说,他看到你意志这样坚定,那他就会收下你啦。

现在看看身上,基本上是一文不名,新手村里的那点钱都给了车夫了,摸摸肚子,想想晚饭还没有着落,还是先找个活计,挣点饭钱吧。找个什么任务合适呢?你看了一下wiki上面的任务介绍,新手任务中最简单的可能就是平一指的配药任务了。




这里要注意一下,如果你想去十二大门派,是不能做这个任务的,要不然你经验高了,十二大门派可能就不会再收你了,所以千万要注意这点,并且十二大门派有更好的门派新手任务,没有必要来做这个任务的;这个任务比较适合像是慕容、白驼山这种没有门派新手任务的门派。

任务介绍上写得很清楚,从中央广场咱们就走 e;e;n 就到了平一指这里。



再走 n ,就到了这个任务的主要工作场所,配药房。



你尝试着做了几次任务,感觉这个任务虽然简单,但是有点枯燥啊,怎么能省点事呢,能不能让机器来代替我们完成这个任务呢?


当然可以,这个任务非常适合新手学习机器人的编写,下面咱们就一起来完成这个机器人。


首先,我们来 ask ping about job,他就会说:


你向平一指打听有关『工作』的消息。
平一指说道:「我们现在正好缺少一种药,这是药方,你去配吧」



我们就将用这两句话来触发(为什么我们要用两句来触发呢?这是因为你在做任务的时候,可能也有其它人也在做这个任务,然而平一指说的话是一样的,所以为了防止别人接任务的时候触发我们的机器人,那我们就使用两句紧接的话来做触发,这样就很难被别人误触发了),触发器应该是这样写的:




可以看到,上面触发条件里就是我们在接任务的时候,平一指对我们说的话,触发内容里就是我们听到他说的话之后,我们要执行的动作。这里要注意的,多行触发那里不要忘记勾选,几个箭头指向的地方都是要注意的。



因为触发条件里面的语句比较长,所以我把里面的内容也抓一个图,方便查看。



配了半天药,终于可以直起腰来长出一口气了,所以这里就用这个来做为触发条件,既然任务完成了,那么就该去交任务啦,所以触发内容里就是南一步,把配好的药交给平一指啦。



这个触发器里面有一点新的东西 ,不过你要注意看过教程,就会知道这个\S+是代表了平一指对你的称呼。

我们去交了任务,平一指当然就开心了,他笑呵呵接过我们配好的药,顺便给了点奖励和银子,这个银子我记得是直接存到银行的,使用一下sc命令就可以看到了,所以不要看身上没有就冤枉平一指哦。

对啦,上面三个触发器我在写的时候都没有勾选右上角的那个启用,所以你们写好记得要勾选上【启用】哦,要不然这个触发器是不会起作用的。

我们在第三个触发器里面指定了触发命令,平一指给了我们奖励之后,我们当然就继续任务啦,银子嘛,不怕多,多多益善嘛,所以我们就要一直循环下去,直到经验过了2000之后,平一指就不会再给我们任务啦,所以下一篇我要讲的就是【钓鱼】,这个可以让我们的经验一直到5万呢,比现在这个2000上限的任务要多得多啦,好,这篇就讲到这里,我们下篇再见。

注:为了防止有些同学刚开始学这个,还弄不明白触发器这些东西,我把这个触发器导出了一个文本文件,这样的话,没弄明白的同学也可以直接导入这个文件来进行学习,文件在这里:


--------------------------------------我是一条有差距的分隔线 ----------------------------------------------


昨天教主看了我的帖子之后,一方面感觉到些许欣慰,看到“传帮带”精神在继续传承下去,另一方面,教主也怕我学艺不精,写的这个触发器不够精炼,所以特意来指点了我一下,让我感觉到受益匪浅啊,我写了三条,可教主只用了一条触发器就搞定了这个任务,让我深深的感觉到差距还是很大,我还得继续努力学习啊,hz6






我们先来看一下,教主的这个触发器是把三个条件放在一起了,对应的触发内容也是分别针对三种情况进行了处理,上面这个图可能看不清具体内容,下午我就把详细的内容也抓个图:






先看触发条件,看不清的同学可以点击图片放大。


触发条件的第一个字符【^】 ,这个就代表着这个触发条件是顶格触发的,就是说这个触发条件必须是在一行的开头才可以,这个好处是,不会因为别人在聊天里说了这句话就被误触发;触发条件中的【|】,代表着 或 的意思,就是与或非的那个或,就是说,| 左右分隔的语句,只要出现任意一个就可以触发,后面还有一个 | ,意思也是一样,这个触发条件可以被三句话触发;最后的【$】就不用说了吧?只要看过教程就都应该知道,那个是代表着一行的结束。






触发内容,第一行是定义了一个局部变量 act1,然后接下来就是根据触发条件来进行判断,因为上面三个语句都可以触发,所以我们要在触发内容中确定是哪个语句触发的,“%0“代表着触发语句,string.find()用来进行查找匹配工作,根据查找到的内容不同来给局部变量act1赋值不同的指令,最后一行的Send(),就是把我们写好的指令发送给MUD啦。


教主的触发器导入文件在这里:

ambi 发表于 2017-11-27 21:32:48

顶ttk_00

kkena 发表于 2017-11-28 12:26:14

yct23yct23yct23yct23

verry 发表于 2017-11-28 14:21:33

好文章必须顶起,mush可能是很难上手,但是一旦学会了那就是一个新的天地,我希望那一天快点到来。期待师兄的后续更新,也欢迎更多新人加入白驼,初见师兄教了我好多游戏技巧,让我感受到了温暖,也让我陷坑无法自拔。{:7_276:}

foolenough 发表于 2017-11-28 14:48:20

回复 2# candyqing
赞,非常棒。

建议可以写下城际通的命令,新手一出来拜师什么的用的找。
aaa,bbb从aaa到bbb
fullpath aaa,bbb 显示从aaa到bbb的路径
比如yz,sz就是从扬州直接到苏州。

candyqing 发表于 2017-11-28 17:18:45

新手出村成长任务第二篇:江边钓鱼(上)

本帖最后由 candyqing 于 2017-11-29 07:20 AM 编辑

首先感谢 hypnos 对我的鼓励,下午来了准备继续写的时候,发现帖子被加入精华而且还加了高亮,真是感觉很惊喜,也很开心,能被认可感觉好幸福,hzi


然后也要感谢 ambi,kkena,verry对我的支持,还有foolenough提出的建议,谢谢你们。


所以接下来呢,当然是要更努力的把文章写好啦~~


----------------------------------------我是一条幸福的分隔线 -----------------------------------------------


好,咱们从平一指那里出来,使用 sc 命令来看一下,哈,钱庄里也算是小有存款了,应该能有个1-2G左右了,别看这点钱不起眼,对于新手来说,这也是一笔巨款啦,最起码购买鱼钩和钓饵不愁了。


先来看一下钓鱼任务的说明:


任务要求上面写着,经验小于50K,K=1000,所以50K那就是5万啦,看明白了任务的流程,那咱们就准备开始钓鱼啦,这个钓鱼的位置呢,我是比较推荐扬州中央广场一直向南的那个江边的,为什么呢?这是因为我开始玩的时候只找到了那个地方能钓鱼,所以我的钓鱼机器人也是以那个地方为起点编写的,那当然我就推荐那里啦。


接下来我们就要接触到很多新的东西了,我会慢慢的展开这个流程,所以请耐心的跟着我一起来吧。

因为要买东西,所以就要花钱啦,在北侠里呢,钱是这样的兑换比率:

1gold (1金) = 100silver (100银) = 10000coin (10000铜)


中央广场 n;w 到钱庄取钱 qu 2 silver,一开始是一个熟悉的过程嘛,所以不需要取太多,鱼钩呢1silver一个,钓饵才2coin,所以我们取2silver就够了;取完钱 e;s 回到广场,然后走 e;s ,就来到了杂货铺:



在这里可以使用 list 命令来看一下都有什么货物:






看到了吧,最上面两个就是我们要买的鱼钩和鱼饵啦,仔细看一下,下面还有一个红色箭头指一个叫【北侠车船通】的东东,而且有两个名字一样的,只是颜色不一样,这个是什么呢?这里我要隆重的介绍一下:

我们在北侠里有的时候需要坐车或是坐船,那可不是免费的,都需要付钱,如果有的时候出来的急,身上没有带钱就不能坐车坐船啦,不过呢,我们如果买了这个车船通,出门就算没有带钱,也可以刷卡付费啦,这个就像我们的平时坐公交的那个公交卡一样,购买之后使用命令 addvalue ,你会发现这个车船通不见了,不过不要担心啦,北侠车船协会已经记录下来了,下次你使用交通工具的时候,刷脸就可以啦。


为什么突然这里要隆重的介绍一下呢?有两个原因:


1、新手出门,身上没有带钱的习惯,一个是忘记带,另外一个也是怕万一挂掉这个钱就丢了,新手嘛,没有多少钱,所以把钱看得很重啦。
2、新手的钱庄存款上限只有50G,如果钱太多就会存不下,可万一在游戏里碰到一个好心的大佬给了100G呢?存了50G,身上还有50G,带着这笔巨款,走也不敢乱走,任务也不敢做了,就怕巨款丢了,怎么办呢?那就可以来买这个车船通,addvalue命令给它一用,就再也不用担心啦。

当然了,天下没有免费的午餐,这个车船通在充值(addvalue)的时候,是要收5%的手续费的,毕竟人家制作这个卡也是有成本的嘛,还有人工成本啦,交通工具磨损啦,管理成本啦,反正你只要知道每张车船通卡在充值的时候都是要收5%手续费就好了;至于为什么有两个车船通,当然是为了方便大款啦,20G的那个适合我们这些小门小户的,100G一张都是大款购买的,不过本质上是没有区别的,5张20G的和1张100G的是一样的。


说完了车船通,我们继续来说这个钓鱼用具:鱼钩呢,只需要购买一个就好,这个可以重复使用的,所以不需要太浪费;鱼饵呢,当然是一次性的啦,被鱼吃掉就没有了,所以鱼饵要多买,刚才咱们取了2silver,买鱼钩用掉了1silver,剩下的钱正好可以买50个鱼饵;决定好了咱们就买 buy yugou;buy yuer 50 ,买完了走 n;w 就回到了中央广场。

为什么每次我都要回到中央广场呢?因为这个是我们从新手村出来到达的第一个地方嘛,熟悉的环境总会让人有安全感,而且这个广场还有福利:




这个福利我并没有在新手出村第一篇中公布出来,不是我忘记了,而是我认为这个福利在这个时候使用才是最合理的,经过平一指的任务,我们现在已经有了2000经验了,可以向师父去学一点技能,推荐先学几级基本内功和特殊内功,基本内功是底子,所以必须学了基本内功才可以学习特殊内功;各门派的要求不同,像我们白驼山,基本内功学10级就可以学特殊内功蛤蟆功了,学完之后,可以使用 skills 或 cha 命令来查询自己现在会的技能。






这个是我现在的技能列表,当然了,钱眼开是没有这么多技能的,我已经拜到欧阳锋才学到这么多技能,钱眼开可以把技能学到50级,不过最开始我们精神比较少,所以把基本内功和特殊内功暂时学到20级左右就可以了,平一指任务给的经验和潜能应该足够学到20级。

学完了基本内功和特殊内功,那就要激发一下,要不然是不会起作用的,激发的命令我们在新手村是学过的: jifa force hamagong,激发之后,我们使用 jifa 命令来看一下 :





可以看到,我的内功已经被激发为蛤蟆功了,现在就可以把果子和月饼都吃掉了,为什么要现在吃呢?因为如果你提前把果子吃了,在激发内功的时候就会把吃果子给的那40点内力清空掉,内力上限会重新回到0/0,这样不就浪费了我们得来不易的果子了嘛,所以这个福利我放到现在才说就是这个原因。


好,继续回来讲咱们的钓鱼问题。

鱼钩和钓饵都已经买好了,现在咱们就出发去江边,从中央广场走 s;s;s;s;su;se;su;w 就到了江边,看看,这里已经有一位仁兄在钓鱼啦



那咱们还等啥,赶紧也挂上鱼饵 gua yuer ,开始钓鱼 diao yu 吧。

最开始钓鱼感觉很新鲜,你钓啊钓啊,身边水桶里鱼没见几条,倒是什么旧睡袋啊、红肚兜啊、稻草啊倒是钓上来一堆,也不知道这条江的上游是哪里,怎么这么多破东烂西。

新鲜劲一过,再加上你已经在平一指的药店里干了那么久的活,慢慢的,你感觉眼皮越来越沉重... 忽然听到扑通一声,你一下被惊醒了,原来你刚才太累了,手里拿着鱼杆就睡着了,身子一歪,把装鱼的桶碰翻了,好不容易钓到的几条鱼又都蹦回到江里去了。

“……!@#%&&%¥#%¥&……¥%&”,你一边咒骂,一边在心里合计着,这样下去可不行,这得什么时候才能到5万经验啊,还得让机器来帮我们进行这个任务,不过想教会机器干活,那咱们自己得先弄明白钓鱼的这个具体流程。

你先把钓饵挂好,甩杆,然后开始仔细观察,一会的功夫你就总结出来了,原来甩杆后一共就有这几种情况:

你猛一提杆
你一提杆
你鱼漂晃动,你心里一急
你猛的一提杆,扯的太急了


出现这些提示之后,你的鱼竿就已经收回来了,上面的鱼饵也没有了,需要重新挂上钓饵才能再次甩杆,那么钓鱼机器人的第一个触发器就出来了:





触发条件里是刚才你观察到的各种情况,中间是使用【|】来分隔的,上一篇中我们学习过这个符号的,这样四个触发语句就可以同时起作用了;触发内容里是一个函数,这个函数在教程中也有提到过,不过我还是简单的来解释一下:

DoAfterSpecial(t1,"act",t2)

这个函数里面的t1代表着我们要等待的时间,"act"是等待时间到了之后我们要执行的命令,t2代表着我们发送的命令要送去哪里(这个我不细讲了啊,需要的可以去教程里查)。这样理解一番之后,我们就知道了,原来这个触发内容的意思是:先等5秒,然后重新挂上鱼饵,甩杆钓鱼,至于为什么要等5秒么,那你刚把杆收回来不得先稳定一下啊,然后才能继续嘛,所以这里等待5秒。

第一个触发器写完之后,你惊喜的发现,这样就可以正常运行了,好嘛,现在不用管了,你发现自己开始自动钓鱼了:挂饵,甩杆,鱼放桶里,挂饵,甩杆,红肚兜扔边上,你一边美滋滋的看着桶里的鱼越来越多了,一边计算着每次钓上鱼时自己得到的经验:10点,8点,13点,嘿,这次多,有18点....不经意间,你用 hp 命令看了一下自己的状态,咦,怎么回事,你发现自己的精神和气血一点点的变少了,并且不再恢复,这是什么情况?

你看了半天,也没有弄清楚,站起身来,抻了一个懒腰,忽然感觉有点头昏眼花,直冒冷汗,你这才发现自己的食物和饮水已经都是0了,看来是太过于专注任务,都忘记吃饭喝水了,你想起来QQ群里有大佬说过,如果食物和饮水都是0的时候,是不会恢复精神和气血的,怪不得钓鱼的时候发现精神和气血越来越少了,原来是这么回事啊。

既然已经弄清楚了原因,那就好办了,你先用 localmaps 看了一下地图,【醉仙楼】,这个名字一听就是一个能找到吃喝的地方,那就去这里:e;nd;nw;nd;n;n;n;n;n;n;e ,到啦:


还是一样使用 list 命令来看一下都卖什么:



你看了半天,相对于其它的食物,干粮应该是最容易保存还不爱坏的;喝水么,还是随身带一个酒袋装水比较好,这样渴了的时候就可以喝啦,于是就你买了5个干粮,1个酒袋。
干粮是一口一块,差不多可以补30点食物,你是30臂力的,那食物最大值差不多就是400啦,吃个十几块也就饱了,你打开酒袋,刚要喝,闻了一下,发现里面是米酒,你想了想,自己还没有成年,还是不要喝酒了,去哪里灌点水呢?你又打开地图(localmaps)看了看,下面有一个茶馆,那就去那里灌水吧,从醉仙楼走 w;s;s;s;s;w 就到了茶馆:



你先喝 drink 了一个饱,然后又把酒袋灌 fill jiudai 满了,好吧,这下可以继续回去钓鱼了 e;s;s;su;se;su;w 就又回到江边,触发器打开,你又开始美滋滋了。

天黑了又亮,亮了又黑,你也不知道时间过了多久,你只知道自己的食物和饮水又都变成0了,唉,真是麻烦,总是忘了吃饭和喝水,能不能让机器帮我们想着吃喝呢?

你看了一下原来的触发器,有了一个新的想法,要不然就钓鱼50次的时候休息一下,吃点喝点?算一算,每次钓鱼需要用5秒左右,那50次,就是250秒,这数字不好,换一个,那就是51次好了,于是你把触发器改动了一下:



触发内容又出现了一点新的东西: checknum = checknum or 1 ,这句的意思是,如果这个checknum从来没有使用过,那就设定为1,如果以前使用过,那就保持原值。

至于下面就好理解了,如果 checknum 小于等于 51 就继续挂饵钓鱼,如果已经大于 51 了,那就吃块干粮喝口水再继续挂饵钓鱼。

继续美滋滋...... 过了一会,你发现机器又停了....咋回事?怎么又停了?


原来是你的鱼饵用光了,记得吧,咱们最开始只买了50个,因为是第一次尝试嘛,这次就可以多买几个了,不过这之前先把身上的鱼去卖掉吧,从哪里卖东西呢?再看看地图,【当铺】,这个地方应该可以卖东西,你从中央广场走 s;e 就到了当铺了。




怎么卖东西来着?你尝试了半天,终于发现可以使用 sell fish 来卖鱼,好,你开始卖鱼:

sell fish,老板把鱼收了,付给你钱...
sell fish,老板把鱼收了,付给你钱...
sell fish,老板把鱼收了,付给你钱...
sell fish,老板把鱼收了,付给你钱...
sell fish,老板把鱼收了,付给你钱...

你看着兜里的钱一点点变多了,这个开心啊,完全没有注意到老板用一种看傻子的眼神在看着你,直到边上过来一个人,对着老板喊道:老板,卖10个铁甲...


hzy,真是太尴尬了.....原来同样的东西可以一起卖,你看看身上还有32条鱼,使用 sell fish for 32 命令来把这些鱼都卖给老板 ,拿上钱赶紧走出了当铺,真是太冏了。

你又一次站在了熟悉的扬州中央广场,摸了摸了兜里的卖鱼钱,嘴里一边念叨着一边走 e;s 去扬州杂货铺买鱼饵,然后再走 n;w;n;w 去钱庄存钱,再走 e;s;s;s;s;s;su;se;su;w 扬子津左边钓鱼,一不小心就走错了一步:




这是啥地方?里面的老板娘韦春芳打扮得花枝招展的,一看到你进来,赶紧过来迎接你:




这这这,难道就是传说中的青楼?你哪见过这个阵势啊,满脸通红的一边说:我还没有成年呢,没有成年呢,一边飞也似的从里面跑了出来...


你刚跑出来,就听到后面扑通一声,你回头一看,一个人被韦春芳从里面踹出来了,一屁股坐在了地上,隐约间还听到里面韦春芳嘴里念叨着:老娘我什么人都接待,和尚喇嘛都没有关系,就是不接待这样的死太监...,你定了定神,仔细看了一下这个人,这不是白林枫白大侠么?
要不要过去搀扶一下呢,白大侠会不会感觉很尴尬呢?你正在考虑的时候,白大侠已经自己站了起来,翘着兰花指,对着丽春院骂了一句“讨厌”,展开葵花飞影术几下就踪迹不见了...


经过了这个小插曲,你感觉死记硬背路径这个方法真是太不方便了,难记不说,还容易走错,幸好这次只是进了丽春院,这要是进了黑店,小命都得丢了。你左思右想的,有没有什么好方法呢?对啦!你恍惚间想起来,好像在什么地方看到过一个插件来着,是叫【北大侠客行城际互联插件】,你打开插件目录看了看,没错,就是叫这个名字,还有使用方法呢:


AA,BB或AA-BB    可以从一个房间行走到另一个房间

AA BB 就是所在房间名称的拼音,比如要从扬州去苏州,那就可以用 yangzhou,suzhou 或 yangzhou-suzhou 这个方法使用,对于一些著名的房间,还可以使用缩写方式:yz,sz 或 yz-sz,但是必须要注意,你需要站在正确的房间里来使用,yz就是指扬州中央广场,sz就是指苏州宝带桥。

你在脑袋里过了一下,你常去的地方有几个呢?一个是钱庄,另外一个是杂货铺,还有一个就是扬子津那边,要不然来试一下?

你回到了中央广场,小心翼翼的输入了 yz-qianzhuang,只看到插件进行了一阵计算,紧接着显示出来一条路径,而且自动使用了这条路径,你看到自己嗖一下就到了钱庄,hzk,太神奇了,这个插件真是一个神器啊,你忍不住又试了一下:qianzhuang-yangzhouzahuopu,到了到了,杂货铺到了,老板看到你进来,还没来得及和你说话呢,你就又输入了 yangzhouzahuopu-yzj2 ,眼前一闪而过,你又到了扬子津了,你 w 走了一步,看到了那熟悉的江边,哇哈哈,真是太神奇了耶!这个东西真是太好用了,你一边想一边看了看现在这个房间的地名:长江岸边,你尝试着输入 changjianganbian-yz ,咦?这次好像不对了,插件计算了半天,弹出一条提示:


::开始或结束城市输入有误,或地图库中没有此中心城市::


是插件出问题了吗?你走回到扬子津,使用 yzj2-yz,眼前一花,你已经到了扬州中央广场,这样看来插件没有出问题,你仔细看了看刚才插件给出的提示:【开始或结束城市输入有误,或地图库中没有此中心城市】,喔,终于看明白了,原来这个插件并没有把所有的地图都录入进去,刚才那个江边可能就不在地图库中,你想明白了这点,心里感觉轻松多了,这下可方便了,走路再也不用死记硬背那些方向了。

(由于每个帖子的篇幅有限,所以钓鱼篇只好改为上下两篇,欲知后事如何,咱们下篇再说,{:7_276:})

candyqing 发表于 2017-11-29 14:14:02

新手出村成长任务第二篇:江边钓鱼(下)

本帖最后由 candyqing 于 2017-12-5 04:14 AM 编辑

你感觉自己越来越厉害了,连这样神奇的插件也可以搞定,不禁有点洋洋得意起来,回到了江边,开始继续钓鱼,正好边上有一个兄弟已经把鱼饵用光了,嘴里一边叨咕着,回去的路是 e;nd;nw;nd 还是 nu 来着? ,你一听,哈,正好现学现卖,可以把我刚弄明白的插件拿出来显摆一下了,于是你把鱼杆放下,先清了一下嗓子,咳咳,我说兄弟啊,你这样是不行的,你看我给你讲一下啊,你先e一步,然后再yzj2-yz,你话还没说完呢,嗖一下,到了扬州中央广场了,hzz,啊?我的鱼还在江边呢,你赶紧连跑带颠的回到江边,一看那个兄弟还没有走,正看着你的鱼桶发呆呢,你仔细回想了一下刚才是怎么回事:原来你为了把路径给这个兄弟,自己顺手就打了一下命令,结果路径是显示出来了,不过你人也跑到中央广场去了,这样也不行啊,难道我每次要告诉别人路径的时候都要自己跑一次?这么神奇的插件怎么会这样不合理呢?你又打开插件看了看,哈,果然,原来你上次看插件帮助的时候少看了一条命令:

fullpath AA,BB    计算路径并显示出来,但不会真正执行这条路径。

我就说么,这么神奇的插件,怎么可能没有这种功能,你一边想着一边使用了一下这个命令 fullpath yzj2,yz :


兄弟你看,这个路径是这样的,兄弟... 人呢?

原来你看帮助的时候,这个兄弟等得不耐烦早就走远了,唉,看来还是不要太 得瑟 了,对于这些东西根本还没有熟练嘛,你在心里警告了自己一句就继续钓鱼了,哎?我的鱼桶呢?你左右看看,忽然发现江里远远飘着一个木桶,“@#&……*……%&……%……¥#&%……”,你欲哭无泪,只好又去找了一个鱼桶,老老实实的坐下继续钓鱼了。

你看了看自己的经验,唉,还不到1万呢,还是别闹了,赶紧把钓鱼任务做完是正事,你开始回想钓鱼以来需要注意的这些情况:

1、钓鱼收杆触发器,这个你已经完成了。
2、检查身上是否还有鱼饵,如果有,继续挂饵钓鱼;如果没有,准备回去卖鱼买鱼饵。
3、回去的路上应该顺便去茶馆装点水,干粮可以多带,反正那个也不重,不过酒袋只能装那么多水,所以最好每次回去买鱼饵的时候都装满水。
4、到当铺卖鱼,卖完鱼去杂货铺买鱼饵。
5、买完鱼饵,需要把多余的钱存上。
6、存完钱就继续回来钓鱼。


思路理清了,下面就是动手做了,怎么知道身上鱼饵没有了呢?要不然每次挂饵之前都先看一下 l yuer ?你又思考了一会,没想出更好的办法,决定就用这个了:

你看了一眼鱼饵:



然后写出了触发器:



这里也有一点要注意,我们来看一下触发条件里面,这个鱼饵的描述中有一对括号(),因为这个属于一个特殊字符,所在我们在这个括号前面加了一个【\】 ,这个 \ 我们称之为转义符,在括号前面加上这个,mush就不再把这个 \ 后面的一个字符当做特殊字符了,而是当成普通字符来处理,要注意的是,我们以前也用过一个 \S+ ,不要弄混了。

触发内容里就是原来收杆之后的那个等5秒挂饵甩杆,注意红色箭头所指的地方都是要注意的地方。

这个触发器写完之后,我们还要修改一下原来的钓鱼收杆触发器,收杆之后不再直接进行动作,而是检查鱼饵:



你可以往回翻一下,和原来的对比一下?看到变化没有?现在收杆的动作触发之后,我们执行的另外一个动作 Execute("l yuer 2"),这个 Execute() 函数有印象吧?这个是用来把命令发给MUSH的命令解释器的,里面的内容可以包括别名之类的,不像 Send() 这个函数是直接发给MUD的,不能识别别名;原来写好的计数机制是没有改变的,吃喝这个动作不能取消,要不然饿肚子钓不动鱼。

可能你也发现了,为啥我要 l yuer 2 呢?这个一般人我不告诉他,咳咳,哎,别别,别动手,动手也别打脸啊,好吧好吧,告诉你也没有什么关系,其实我是一个迷信的人,钓鱼呢,你得留一个鱼饵当幸运符,这样钓上鱼的机率就大了,什么比基尼啊,肚兜啊,还有什么拖鞋啥就少了,不管你信不信,反正我是信了。

接下来,我们继续...

你考虑到了鱼饵还有的情况,不过鱼饵没有了是什么样的呢?



原来提示是这样的,那好,继续写第三个触发器:



注意看了啊,这个触发内容里有两个红箭头,一个是在去当铺的路上顺便拐进茶馆喝饱水还连喝带拿的把酒袋也灌满了,另外一个箭头是去当铺卖鱼 sell fish for 500 ,你可能感觉很奇怪,我们身上会有这么多鱼吗?

还记得你第一次去当铺卖鱼被老板鄙视的事吗?这么尴尬的经历相信你不会轻易忘记的。后来你再去卖鱼的时候都先自己数好有多少条鱼,然后一次性卖掉,不过你发现,虽然你在卖鱼之前把鱼数了一次,可是老板在收鱼的时候还要再数一次,既然他会数,那咱们还数啥?干脆就相信他数的数量好了,反正一条鱼也没几个钱(现在你已经卖了几百条鱼,钱庄存款的增加让你逐渐看不起这点小钱了),但是卖鱼的时候直接全卖还不行:



这老板有点认死理,好吧,那我就随便说一个数字好了: sell fish for 500 ,老板接过你手里的鱼开始认真的数起了起来,数了两遍之后,他抬起头来,瞪了你一眼:“你只有一百零七条fish,没那么多可卖。“,好好,那我们就卖107条好了,不过怎么让机器人自己进行这个过程呢?你又打开教程研究了半天:



上面的触发条件比较简单,就是当铺老板说的那句话,我们用 (\S+) 代替了 一百零七条 ,这样以后不管他说多少条,我们都能取到这个数量。

触发内容嘛,这个就有点复杂了,你弄了半天也没有搞定,还是一位扫地的大婶路过,扫了一眼后抢过键盘噼里啪啦几下搞定就走了,你惊疑不定的看着大婶飘逸绝尘的越扫越远,心里忽然想起那首诗:“十步杀一人,千里不留行。事了拂衣去,深藏身与名。”


你感慨了半天,转回头仔细看看大婶留给你的代码:



说真的,你看了又看,想了又想,可能是接触MUSH日子还短吧,只能看个一知半解,你知道第一行是一个表,第三行开始是一个函数,最后一行是利用这个函数将取到的中文数量转为数字,然后卖鱼。

好吧,不管能不能看明白,反正鱼是能全部卖了,大不了将来熟悉了再回头来看好了,你心里一边想着,一边在这个地方打了一个标记:待学习。

你把107条鱼都卖了,老板虽然有点生气,不过还是收了你的鱼,你把鱼交给他的时候,注意到每次卖鱼的提示都是差不多的:

你把身上的一百零七条鱼卖掉。

好,那又一个触发器出来了:



这个触发器对于现在的你来已经是很平常的啦,唯一需要注意的是:在当铺卖东西之后有一个busy,所以在这里我们卖完鱼之后等3秒再走去买鱼饵,路线是从当铺出发直接去杂货铺的: w;n;e;s;buy yuer 100 ,这次我们直接买了100鱼饵,同样的,买鱼饵的时候,老板付给我们鱼饵后,也会有一个提示:

你从杨永福那里买下了一百个鱼饵。

对应的触发器:




和上一个触发器中要注意的地方是一样的,买东西也有一个busy,所以我们还是等3秒再走去下一个地方:钱庄

路线是这样的: n;w;n;w;cun all silver ,你可能注意到了,存钱的时候我们用的不是一个具体数量,而是 cun all silver ,要不说怎么钱庄就生意就越做越大呢,人家头脑就是灵活,顾客就是上帝,顾客永远是对的,既然顾客懒得数钱,那就我们钱庄来数就好了嘛;使用这个 cun all silver ,不管你身上有多少银子,都可以一次性的存进去。

你把银子放在柜台上,伙计就开始帮你数钱了,正在这个时候,又来了一个人存钱,老板钱眼开赶紧说道:

钱眼开说道:「哟,抱歉啊,我这儿正忙着呢……您请稍候。」

你心里一动,别下次我来存钱的时候也碰到这种情况,这个我也得写到触发器里面,免得机器人中断了:




如果碰到这种情况,那就等几秒再试一次好了,要是老板还在忙着,他还会说这句话的,这样我们就能确保把银子存进去啦。

你把这个异常情况处理完,这个时候伙计也把银子数清了,然后告诉了你一声:

你拿出十三两白银,存进了银号。

听到伙计告诉你这个,你这才放心了,银子确定已经存到钱庄里啦,那就回去继续钓鱼好了:




触发条件是在当铺是一样的,不管你存了多少两银子,都用那个 \S+ 来匹配了。

触发内容里就是回去江边的路径啦,只不过这次是从钱庄直接出发的: e;s;s;s;s;s;su;se;su;w;l yuer 2 ,注意看一下,这个触发内容的最后一个命令就 l yuer 2 了,还记得吧,咱们前面的触发器会对l yuer 2出来的结果做出判断处理,所以你看了鱼饵之后,机器人就被触发开始动作了...

日升月落,时光更替,也不知道过了多少个日日夜夜,你用熬得通红的眼睛看了一下自己的经验,啊啊啊,你精神一振,忍不住老泪纵横,终于还差几十点经验就要到5万经验了,你捧起江水洗了一把脸,坚持着最后钓了几条鱼,站起来直了直腰,然后看了一下自己的 假劳力士 手表,啊,现实时间差不多过去一天一夜了,怪不得这么累,好在终于搞定这个任务了。

你把鱼杆一扔,仰天长啸:老子终于钓完鱼,要去大城市闯荡江湖啦,哈哈哈哈... ,你正在狂笑的时候,忽然看到边上一堆人正用一种考虑要不要上来扁你的眼神盯着你,你这才发现狂笑的声音把他们的鱼都吓跑了,再加上他们还要继续在这个钓鱼任务中苦熬,所以大家都很生气,你吓得撒脚如飞的跑掉了,连鱼桶也顾不上拿了...

又回到了熟悉的中央广场,你感觉兴奋劲一过,上下眼皮已经在打架了,翻开地图看看,好在不远处就有一个客店,什么都不想了,你一头扎进客店的二楼,爬上床就开始睡觉了...

(欲知后事如何,咱们下篇【读书学习篇】再见)

按惯例,把钓鱼机器人的触发器导出一个文本文件,方便新同学进行学习:

yyzq 发表于 2017-11-30 21:52:49

不错,既做了新手引导又做了mush的初学者教程,大力赞yct23yct23yct23

sans 发表于 2017-11-30 22:11:07

原创很赞~
楼主加油!
页: [1] 2 3 4 5
查看完整版本: MUSH边用边学(抛砖引玉系列) ------- 白驼初见