文字MUD游戏论坛-天下泥潭群英会-水泊梁山  

返回   文字MUD游戏论坛-天下泥潭群英会-水泊梁山 > 西游之旅 > 『 机器人制作及下载 』

『 机器人制作及下载 』 如何从开始简单的数组、触发,到复杂的路径、地图、数据库等等。如何考虑周全的制作全自动的机器人让它能够24小时不停的帮你练功。

Like Tree1
发表新主题 回复
 
LinkBack 主题工具 主题评分 显示模式
旧 2013-01-15   #1
月影花雨蝶
级别:19 | 在线时长:954小时 | 升级还需:96小时级别:19 | 在线时长:954小时 | 升级还需:96小时级别:19 | 在线时长:954小时 | 升级还需:96小时级别:19 | 在线时长:954小时 | 升级还需:96小时
 
ding 的头像
 
注册: 02年12月30日
来自: 蝴蝶谷
帖子: 1,330
声望力: 37
声望: 174 ding 渐入佳境ding 渐入佳境
积分:9
精华:10
现金:1899两梁山币
资产:426171两梁山币
致谢数: 0
获感谢文章数:4
获会员感谢数:4
手把手启发新人制作袁天罡找怪机器人

经常看到新人或回来寻梦的旧人求问机器人。敢情机器人就是一块肥猪肉,下了就能完美的自动运转?其实不是的。绝大部分都需要因应自己的等级、武学和技能去调整,调整得不对那是自虐。
打个比方:你下了一个找怪机器人,原主人的等级有200以上,遇到吴刚、龙宫力士、云阳真人等路障会自动下kill,一招秒掉。你呢?难道也跟着对路障下kill,然后被对方秒掉吗?

所以,新人与其乱求乱下一些不适合自己用的找怪机器人,为何不自己动手做一个呢?
我原本是不会机器的,上礼拜花了两天时间研究,发现还不算太恐怖。

所谓找怪机器人,其实主要是由路径(path)和触发器(triggers)组成的,远不如你想象的复杂。相信90%的人都知道怎么用触发器,但不会写机器的人大多不明白怎么用路径。我们用图解来说明一下路径,你马上就懂了。

首先,我们来点击一下路径(path)。以zmud5.55版本为例,path在上面triggers图标的左边。点击path之后会出现这样一个框框,但先不用在上面输入任何东西(图一)。记录路径最好使用record path(图二),沿路走一遍,然后储存。

http://i46.tinypic.com/dfc0hl.jpg
http://i45.tinypic.com/2pzfy93.jpg


路径呢,是用单个字母或者符号记录方向的。像那个path 的框框,如果你在上面写”ne”,它会理解成north和east,而不是你想要的northeast东北方向,这就乱套了。如若要记录northeast东北方向,首先要给它设一个方向指令代号(Direction command)。

我们从view当中选择directions,会跳出来一个设置方向代号的框框。我的zmud版本已经为我设好了10个原始内建的基本方向(图三)。分别是:d=down; e=east; n=north; j=northeast; h=northwest; s=south; l=southeast; k=southwest; u=up; w=west。当然,西游记的地图中绝对不止这10个方向,原始设置中没有的方向,你可以添加和自定义甚至更改旧有的,只是注意不要重复使用同样的代表字母和符号。(如果你用的是7.21版本,听说是在setting editor,new下拉选new direction)。

http://i50.tinypic.com/jfixzn.jpg


现在我们来做一个示范,从长安十字街头走到月宫(桂树以下)逛一圈的路径。在前往月宫的路上有6个方向(wu, ed, su, nd, nu, sd)尚未在directions中设定。我在directions中点击添加,用a代表wu, b代表ed, c代表 su, f代表nd, m代表nu, o代表sd(图四)。

http://i45.tinypic.com/bzuit.jpg


好了,现在可以record path录制路径了(图二)。我事前已经探过路,知道从长安十字街头到月宫游一圈要怎么走(#7 w; nw; ne; #3 nw; w; wu; #2 su; #2 wu; nu; #3 w; #4 e; w; n; w; e; n; s; e; w)。
首先从actions里头选择record path,接下来按着正确的方向和顺序走,边走边被记录。走完了就save recording,会跳出来一个define path的小框框,给这段路径起个名字。我给它取名为moon(图五)。

http://i46.tinypic.com/2je4lxv.jpg


是不是这样就做好了呢?还差那么一丁点。到十字街头测试刚才做好的路径,输入#slow moon慢行月宫路径,你会发现它走第一步之后就停了,显示slow walking aborted。
【水泊梁山】依蝶嗲~嗲~地说:“为~什么呢!?”
因为它没有等到你允许它继续前行的指令啊。允许继续前行的指令是#ok,而且每一步都要接收到这个指令才会走下一步。那是不是让你每一步都必须手动输入#ok呢?呵呵,其实可以使用trigger触发器自动输入#ok。

西游记中95%的路上都有这么一句描述:“这里明显的出口是……(某某方向)”或者“这里唯一的出口是……(某某方向)”
我们就利用这句来触发机器自动帮忙输入#ok,同时也用来控制行走的速度。
例如:
需要抓的对应句子(pattern):这里(%x)的出口是
触发时下达的指令(commands):#wa 800;#ok

好了,月宫走路的机器做好了。在长安十字街头输入#slow moon测试一下,它会很通畅地以每步#wa 800的速度慢行。觉得走太慢的可以调整快一点,例如#wa 500;觉得走太快的可以调整慢一点,例如#wa 1000。(注意:#wa 800后面的分号和#ok 之间不要打空格)

最后一步,再设一个触发,在走路的过程中看到你的怪就触发它输入#stop来停止行走。不懂得抓怪名字当触发的,你就自己手动#stop吧!(偷笑~)

开玩笑啦。这个版块有很多贴子详细解释该怎样抓怪名字,例如:
新手看看,不要回帖! (13楼,含高老庄走法详解)
新手如何制作xyj2000灭妖机器的一些意见

这里的23楼有长安、高老庄、龙宫、开封和长安西等5个地方的路径行走示范供参考。
新手看看,不要回帖!

剩下的,你们应该会举一反三了吧?

http://i41.tinypic.com/103enpv.gif
问花花不语,为谁落?为谁开?算春色三分,半随流水,半入尘埃...
ding 当前离线  
回复时引用此帖

旧 2013-01-16   #2
月影花雨蝶
级别:19 | 在线时长:954小时 | 升级还需:96小时级别:19 | 在线时长:954小时 | 升级还需:96小时级别:19 | 在线时长:954小时 | 升级还需:96小时级别:19 | 在线时长:954小时 | 升级还需:96小时
 
ding 的头像
 
注册: 02年12月30日
来自: 蝴蝶谷
帖子: 1,330
声望力: 37
声望: 174 ding 渐入佳境ding 渐入佳境
积分:9
精华:10
现金:1899两梁山币
资产:426171两梁山币
致谢数: 0
获感谢文章数:4
获会员感谢数:4
回复: 手把手启发新人制作袁天罡找怪机器人

如果实在看不明白Mdcfil自动抓妖怪名字的复杂触发,那我只好建议你像Locale示范的那样,手动输入怪的名字了。

Locale在她本人教学帖13楼的示范中建立了两个变量(variable)和一个触发(trigger),用来做找到妖怪后自动停步的触发。

第一个变量是妖怪的中文名字,变量代号随你起,我就随意起了一个叫guainame好了。
第二个变量是妖怪的汉语拼音,变量代号也随你,我随意起了姑且叫guaiid,容易理解。

在游戏下方的命令输入条框中输入:#VAR guainame xxx
这样做相等于单击variables图标,从variables 设定的框框里添加新变量,分别写上variable和value的内容(图六)。接着,我们把 guaiid也用同样的方式添加上去。


http://i46.tinypic.com/2ecg2g4.jpg


下一步,添加一个触发:#trigger {@guainame(@guaiid)} {#stop}
这个输入相等于单击triggers图标,添加新触发,以@guainame(@guaiid)为触发句,对应命令是#stop。记得自己设个class,不用的时候就关闭,防止误触发(图七)。

[更正:不好意思,这里的@guainame(@guaiid)应该是@guainame~(@guaiid)才对,不然光看到前面的中文名它就触发了.]

http://i47.tinypic.com/2s32f.jpg


手动输入怪名字的示范,嗯……去月宫找麻姑好了,虽然她不是怪但主要是测试机器见到她会不会成功停下来#stop。
是的,月宫管家 麻姑(Magu)。
麻姑的中文名字是“麻姑”,汉语拼音是Magu。于是我可以这样手动输入:
guainame=麻姑
guaiid=Magu

这时候,你会发现变量里头guainame的赋值(value)变成了麻姑,guaiid的value成了Magu(图八)。


http://i49.tinypic.com/2z40ndh.jpg


现在走到长安十字街头输入#slow moon ,测试它是不是自动走到麻姑面前停下。同样的,如果袁天罡要你找一只小小狐狸精(Huli Jing),你也可以手动输入:
guainame=狐狸精
guaiid=Huli Jing

当然了,最好用的还是从接受任务的句子里自动抓下来怪的中文和拼音。详细解释,你还是看Mdcfil的贴子吧。

此帖于 2013-01-20 03:48 被 ding 编辑.
ding 当前离线  
回复时引用此帖
旧 2013-01-17   #3
月影花雨蝶
级别:19 | 在线时长:954小时 | 升级还需:96小时级别:19 | 在线时长:954小时 | 升级还需:96小时级别:19 | 在线时长:954小时 | 升级还需:96小时级别:19 | 在线时长:954小时 | 升级还需:96小时
 
ding 的头像
 
注册: 02年12月30日
来自: 蝴蝶谷
帖子: 1,330
声望力: 37
声望: 174 ding 渐入佳境ding 渐入佳境
积分:9
精华:10
现金:1899两梁山币
资产:426171两梁山币
致谢数: 0
获感谢文章数:4
获会员感谢数:4
回复: 手把手启发新人制作袁天罡找怪机器人

Locale的示范贴中,还提及了Define Status Bar这个东西。可以在不妨碍其它程式运转的情况下,在状态栏显示你想要注意的东西。例如说:你的妖怪叫什么名字,蹲在哪里。你知道的啦,有时候街上对你流口水自动攻击的怪(简称口水怪)不一定是你的,搞半天或许跟你半毛钱关系也没有,难道你要往上翻页翻半天检查一下到底是不是自己的吗?

Define Status Bar可以帮助你。在状态栏点击右键勾选Define Status Bar或者从上面的Actions下点选Define Status Bar会跳出一个Status Bars的框框。新添加一个,在status line行输入一句你喜欢的提示短句,这样你就不会找错怪了。

例如:本轮灭妖:@guainame (@guaiid) 在@place

然后你会看到左下方,输入指令条的上面显示了怪的名字拼音和地点(图九)。
噢,忘了说,我在变量那里新添加了一个”place”用来代表怪的地点。刚才我使用麻姑来测试,所以现在显示了麻姑。


http://i48.tinypic.com/vryezm.jpg


看到这里,你可能已经不满足于手动输入怪名和地点这么驴的方法。能不能用trigger触发器自动抓呢?当然可以。在Mdcfil的贴子里就给了示范。

原句是这样子的:
#trigger {^{~>李|李}靖对你说道:近有(%x)~((%*)~)在(%x)为非作歹*} {killname=%1;killid=%2;killwhere=%3;#ts 200;#show 灭妖地点:@killwhere} {} {519}

但是,我在变量(variables)中用来代表怪名字和地点的词语跟他不一样。他用“killname”来代表怪的中文名字,而我用的是“guainame”。所以,在抄他的触发句子之前,我把killname换成guainame,killid换成guaiid,killwhere换成place。
好了,现在改成
#trigger {^{~>李|李}靖对你说道:近有(%x)~((%*)~)在(%x)为非作歹*} {guainame=%1; guaiid=%2;place=%3} mieyao

后面那截我就不抄了,是他用来配合其他触发的。为了不容易被误触发,我设了个class(类别),不必要时处于关闭状态。(图十)


http://i46.tinypic.com/14kjk2r.jpg


现在测试一下。先跟李靖要个怪。
李靖对你说道:近有灰狐狸精(Huihuli jing)在盘丝岭为非作歹,速去降服!

下方的状态栏仍然显示麻姑的名字,看来有点不太对了。进入triggers把这个找出来看看,在testing那边将李靖那句话贴在第二行,按test trigger测试。结果显示句子不匹配(Pattern does not match),自然也就无法正常触发。要找出原因,直到它显示匹对为止。(图十一)

http://i46.tinypic.com/5ppxzn.jpg


经过一轮测试,在紧贴在大括号后面的~符号删除,终于匹对上了(图十二)。我并不是说Mdcfil错了,也许是版本的问题或其他原因,别人做的机器自己拿来用时出现问题是很正常的事,修改修改就行了。


http://i49.tinypic.com/2lxtb47.jpg


抓袁天罡的话做触发也是大同小异。

你向袁天罡打听有关『kill』的消息。
袁天罡将手中桃木剑向四方一划,对你说道:
近有猩猩精(Xingxing jing)在开封城出没,为害不小,请速去收服!



这里我们看到,袁的话是分开两行的。我有个比较笨的方法,分开两句触发。


第一个触发:

^你向袁天罡打听有关『kill』的消息。

我对这个触发唯一的指令是,触发后关闭自己并启动第二个触发。

Pattern: ^你向袁天罡打听有关『kill』的消息。
Commands: #t- askguai; #t+ mieyao
Class: askguai

第二个触发:

Pattern: 近有(%x)~((%*)~)在(%x)出没,为害不小,请速去收服!
Commands: #t- mieyao; %1=guainame; %2=guaiid; %3=place
Class: mieyao

同样是触发后通过t- 类别名字(class)关闭自己,避免之后被别人影响而错误触发。
为了方便,我还添加了个热键(aliases):
Name: askyuan
Commands: #t+ askguai; ask yuan about kill

以后我对着袁天罡输入askyuan的时候,就会执行开启第一个触发和问袁要任务这两个命令。两个触发的开启和关闭之间顶多也只是一秒左右的事情。

[更正:呃...我收回做热键的话.第一次测试的时候完全没问题,第二天测试就出毛病了,也许不太适合这么做.你还是自己做个触发关闭class和要任务吧.]

要做完善的机器人,后续的事情还有很多。比如说,你可以在找到怪的同时#stop并follow它。Follow它之后触发开始打它,用什么招数各人都不一样。受伤了,触发自己吸气。打不过了,触发自己逃跑。诸如此类,很多很多......

我机器学得不好,只能说些皮毛,希望能对大家有启发。
scrap 点了赞。

此帖于 2013-01-20 03:51 被 ding 编辑.
ding 当前离线  
回复时引用此帖

旧 2013-04-29   #4
高级会员
级别:9 | 在线时长:244小时 | 升级还需:31小时级别:9 | 在线时长:244小时 | 升级还需:31小时级别:9 | 在线时长:244小时 | 升级还需:31小时
 
yorkmars 的头像
 
注册: 05年04月16日
来自: 东海龙宫
帖子: 244
声望力: 22
声望: 52 yorkmars 初领妙道
积分:4
精华:1
现金:122两梁山币
资产:322两梁山币
致谢数: 2
获感谢文章数:1
获会员感谢数:1
回复: 手把手启发新人制作袁天罡找怪机器人

很有用的教材 我这不会编机器人的都能自己写出自动找怪的机器了 还在慢慢完善中
yorkmars 当前离线  
回复时引用此帖
旧 2013-05-17   #5
高级会员
级别:2 | 在线时长:18小时 | 升级还需:12小时级别:2 | 在线时长:18小时 | 升级还需:12小时
 
hjtpzh 的头像
 
注册: 07年04月17日
来自: 客栈
帖子: 106
声望力: 19
声望: 19 hjtpzh 初领妙道
现金:6两梁山币
资产:278两梁山币
致谢数: 2
获感谢文章数:0
获会员感谢数:0
回复: 手把手启发新人制作袁天罡找怪机器人

顶了先
hjtpzh 当前离线  
回复时引用此帖
旧 2013-06-21   #6
初级会员
级别:1 | 在线时长:11小时 | 升级还需:4小时
 
zhlnew 的头像
 
注册: 08年12月24日
来自: 江苏
帖子: 39
声望力: 0
声望: 10 zhlnew 闻道则喜
现金:99两梁山币
资产:99两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0
回复: 手把手启发新人制作袁天罡找怪机器人

超实用的帖子啊,感谢楼主分享111

From:紫金飞鸿
帅哥 zhlnew 当前离线  
回复时引用此帖

旧 2013-07-25   #7
正式会员
级别:1 | 在线时长:6小时 | 升级还需:9小时
 
sfbsl 的头像
 
注册: 10年07月25日
来自: 长安西
帖子: 8
声望力: 0
声望: 10 sfbsl 闻道则喜
现金:19两梁山币
资产:19两梁山币
致谢数: 0
获感谢文章数:0
获会员感谢数:0
回复: 手把手启发新人制作袁天罡找怪机器人

但是我的是4.62的ZMUD啊,很多东西都不一样的,而且现在我也找不到下5.55的地方,首页的那个链接坏了下不到...
帅哥 sfbsl 当前离线  
回复时引用此帖
旧 2014-11-14   #8
中级会员
级别:1 | 在线时长:8小时 | 升级还需:7小时
 
jsflyer 的头像
 
注册: 07年04月10日
来自: 客栈
帖子: 60
声望力: 18
声望: 11 jsflyer 闻道则喜
现金:85两梁山币
资产:85两梁山币
致谢数: 0
获感谢文章数:1
获会员感谢数:1
回复: 手把手启发新人制作袁天罡找怪机器人

能不能手把手教我做task机器人?beep,sos
帅哥 jsflyer 当前离线  
回复时引用此帖
旧 2016-03-19   #9
中级会员
级别:1 | 在线时长:8小时 | 升级还需:7小时
 
临时启动 的头像
 
注册: 11年10月14日
来自: 长安城
帖子: 60
声望力: 14
声望: 20 临时启动 初领妙道
现金:88两梁山币
资产:88两梁山币
致谢数: 1
获感谢文章数:0
获会员感谢数:0
回复: 手把手启发新人制作袁天罡找怪机器人

先赚点梁山币,版主见谅啊。。。
帅哥 临时启动 当前离线  
回复时引用此帖

旧 2018-10-04   #10
中级会员
级别:1 | 在线时长:9小时 | 升级还需:6小时
 
honxmlist 的头像
 
注册: 07年05月06日
来自: 四川
帖子: 92
声望力: 18
声望: 10 honxmlist 闻道则喜
现金:19两梁山币
资产:19两梁山币
致谢数: 3
获感谢文章数:0
获会员感谢数:0
回复: 手把手启发新人制作袁天罡找怪机器人

赚钱第一位!!!!!!!!!!!
帅哥 honxmlist 当前离线  
回复时引用此帖

发表新主题 回复

添加到书签


发帖规则
不可以发表主师
不可以回复帖子
不可以上传附件
不可以编辑自己的帖子

论坛启用 vB 代码
论坛启用 表情图标
论坛启用 [IMG] 代码
论坛禁用 HTML 代码
Trackbacks are 启用
Pingbacks are 启用
Refbacks are 启用



所有时间均为格林尼治时间 +9, 现在的时间是 15:08.


Powered by SPLS
版权所有 2001-2023 水泊梁山
皖ICP备05012024号

站长 fengyue

Search Engine Optimization by vBSEO 3.6.1