背景:
阅读文章

ZMUD机器人制作(精)

丰富你的机器人

[日期:2013-12-11] 来源:mud游戏网  作者: [字体: ]
本章主要介绍各种实用的小命令,让你的机器人变得更有意思

9.1 #beep #play

#beep 让zmud播放音乐,可以在菜单中找到sound进行设置,只支持wav格式
你可以下载一些wav格式的音乐或者干脆自己录制一个
任务完成之后播放一段轻松的音乐,或者遇到危险播放一个警告的音乐都是不错的选择

#play 支持wav、mid、avi格式,把你想要播放的音乐放到zmud目录下或者放到zmud的子文件夹中,然后在命令行或者trigger中用#play filename.wav命令就可以播放了.如果#play命令没有效果,可能是zmud没有找到该音乐文件,请参照下图修改

9.2 status bar

窗口最下面得一段空白的地方就是status bar,你可以在这里显示你最关心的内容,
这里给出1张截图,分别是我的胡一刀机器人和护镖机器人中状态条显示的内容


图中显示了任务计时,这个时间用#alarm每秒更新一次,完全同步显示出任务花费的时间

#st命令用来定义状态条

比如我的护镖机器人中是这样定义的:
#st {【任务:@address  伙计@huoji】【伙计位置编号@huojinum】【第@round轮:用时@time秒】【本次连线成功推车@success/@total次】}

9.3 #cap

实例:#tri {【闲聊】} {#cap chat}
把所有的聊天信息抓到另外一个窗口单独显示出来,不用担心刷屏太快看不到聊天信息
当然你也可以把你感兴趣的任何信息都抓到另一个窗口显示出来。

9.4 #co #cw #hi

#co 改变最后一行显示信息的颜色
#cw 创造一个触发,只改变指定信息的颜色,该行中其他内容的颜色不变
#hi 如果最后一行的颜色为暗色,则改变为亮色;如果为亮色,则改变为暗色


颜色的代码如下:
black   0
blue   1
green   2
cyan   3
red   4
magenta  5
brown   6
grey   7
yellow   14
white   15
bold   128

你可以直接用red,blue,yellow来指定颜色,也可以用代码来指定颜色
比如:#co red或者#co 4是一个意思

#cw 唐果 red,highlight,blink
//创造一个触发,将屏幕上唐果2个字全部用亮红显示,并且闪烁,这里使用了复合颜色

#show %ansi(green)欢迎使用%ansi("red,highlight,blink")糖果机器人!
//用到了%ansi(颜色代码),在一行中可以显示多种颜色

#LOOP 20 {#SHOWP %ansi(%if(%i\2=0,green,"blue,bold")).oOo};#SHOW
//#showp和#show类似,区别在于#showp不另起一行。最后用#show结尾,表示显示完毕,另起一行;命令中的"\"表示模运算,等同于%mod()
//这条命令显示的内容很有趣,有兴趣的不妨把它复制到你的命令行里看看,你可以用#showp和%ansi()来显示更多有趣的内容.

9.5 #mess

当我正在看网页的时候,我的遍历机器人没有找到盗宝人,可以用这个命令提醒我。我可以选择关闭机器人手动去迷宫杀盗宝人,也可以不管它,让机器人放弃这个任务。
你可以将#mess用在更多的地方,无论是提醒还是危险警告都不错。

9.6 #gag

当你在领悟或者读书的时候,刷屏太快,可以用#gag来屏蔽某些信息。需要注意的是,被屏蔽了的信息虽然看不到了,但是它还是存在的,并且机器人会通过这些信息来触发trigger,所以这个命令仅仅的作用就是让你看不到。

#tri {屏息凝神,一神守内,一神游外,意图双手各成方圆,却总是很难成功。} {#gag}
//在学左右互博时,这行字出现的太多,没有任何意思的刷屏,屏蔽掉!

9.7 #sc

当张三跑出来时,由于你的屏幕跳动太快,看不清张三找谁比武了,你可以用#cap,也可以用这个命令

#sc "张 三" 10
//显示最后10行包含张三的信息;如果去掉10,则显示所有包含张三的信息
//省去了你用滚动条到上面手动寻找的麻烦

9.8 #log

把你需要的某些信息保存到一个文本文件中,日后研究或者统计都可以

#log filename.txt
//开启log,接下来所有信息都会保存在filename.txt中
#log
//如果log已经开启,用这个命令关闭log
你可以通过反复的开启关闭来保存你感兴趣的内容。

9.9 #ig

你是否觉得同时关闭所有的trigger太麻烦,需要用#t-来关闭每个类.这时你可以用这个命令,当你需要打开时,再次输入#ig命令就可以了.

注意:用#ig来关闭触发,相当于你用鼠标点击zmud窗口右下角的手枪图标,并不会改变triggers的enable和disable状态.看下面的几个例子

#ig;#alarm +5 {#ig}
//这条命令的初衷是短暂的关闭5秒再打开,可惜#alarm +5是trigger,而所有的triggers都是关闭的,所以5秒后不会打开triggers
#ig;#wa 5000;#ig
//#wa好比泼出去的水,收不回来的.关闭5秒后能自动打开.同样你也可以用tick timer来打开.

9.10 #stw

这个的用途跟定义status bar类似,当你觉得status bar太短不够用的时候你可以用这个.当然也有其他用途.

#stw {hp;@qixue/@maxqixue  内力:@neili/@maxneli %cr 精神: @jingshen/@maxjingshen 食物:@food 饮水:@drink %cr 潜能:@pot  经验: @exp}
//如果你已经用trigger把相关信息保存到了上述变量中,这条命令会打开一个小窗口来显示你的hp有关信息
//%cr的作用是换行.

你也可以用%ansi()来选择你喜欢的颜色,例如
#stw {本次推车获得%ansi(red,high)@expgrain}
//你获得的经验需要用trigger保存到@expgrain中

#stw on#stw off分别是打开status window窗口关闭status window窗口

9.11 #tab

此命令用来定义一些快捷命令,比如
#tab "ask lin about job"
//不论什么时候,在命令行简单的输入一个a,然后按一下键盘上的tab键,ask lin about job就完整的出现在命令行中了

9.12 #menu

这个命令让你可以用鼠标发送命令,请看下面几个有趣的用法

#menu admire {chat* admire %lower(%selword)}
#menu praise {chat* praise %lower(%selword)}
#menu goodman {chat* goodman %lower(%selword)}
//当你把上述3条命令输入到你的zmud中之后,右键点击屏幕,你会看到弹出一个菜单,比平时多了3个选项,任意选择一个,括号里面的命令就发送出去了
//当你右键点击某个玩家的id,然后任意选择一个,你就会在闲聊频道对该玩家发出表情动作了.
//如果你点击的是空白地方,执行的命令等同于chat* admire/praise/goodman
//%selword意思是你选中的单词

这个用法也可以帮助你捡东西或者卖东西,但是请不要用这个命令来kill sb,不小心点错了概不负责.

9.13 #all

当你在一个窗口中输入#all {vote unchblk sb.},你的所有窗口都会发出vote unchblk sb.命令.

9.14 窗口名:{命令}

sghjjj:tell tangguo [@qixue]
//如果你的大米的窗口名是sghjjj,那么这个命令能让你的大米把他的气血值告诉你
//值得注意的,大米tell过来的信息中,@qixue的值是sghjjj窗口中变量qixue的值,这条命令可以让你和你的大米配合的更完美.
//相当于直接在sghjjj这个窗口中输入了冒号后面的命令

你可以用#name xxx 来更改窗口名字

9.15 #gauge(新增)

命令格式#gauge number "Title" @variable @maxvariable (表达式)

用途:将2个变量以图形对比的形式表现在一个浮动的条形框内

number:定义浮动条形框的序号
"Title":定义浮动条形框的标题
@variable和@maxvariable分别为你关心的2个变量,比如气血/气血最大值,任务已花费时间/任务总时间等等
(表达式)可以设定一个危险警告,比如 (@maxvariable/5),那么当@variable<(@maxvariable/5)时,用红色显示@variable所占百分比,否则用蓝色显示。

实例:护送任务总时间10分钟
接到任务时{#var time_left 600;#alarm -* {#add time_left -1};#gauge 1 剩余时间 @time_left 600 (60)}
//time_left初始化600秒,用一个每秒触发一次的trigger同步更新@time_left的值,创建一个浮动条形框显示任务剩余时间,当剩余时间小于1分钟时,浮动条形框的颜色变为红色
任务完成时{#untr -*;#gauge 1 off}
//任务完成后删除alarm类型的trigger并且关闭剩余时间显示


通过序号,你可以定义很多个这样的浮动条形框。你可以用下面的命令随时关闭打开某一个或者所有的浮动条形框。
#gauge 1 off    #gauge 1 on
关闭或者打开第一个浮动条形框
#gauge off     #gauge on
关闭或者打开所有的浮动条形框

这个有趣的命令也可以用来显示你的血量或者你正在领悟的技能,Have Fun!

注:类似以上一些实用小命令可能还有很多暂时想不起来,我会随时添加

【内容导航】
第1页:聊聊zmud和机器人 第2页:机器人的核心灵魂
第3页:variable和alias的初级应用以及if语句 第4页:机器人实例-打坐吐纳机器人
第5页:buttons﹑系统变量﹑function 第6页:Variable和Alias的更多应用
第7页:掌控时间 第8页:提高机器人稳定性和适用面
第9页:丰富你的机器人 第10页:机器人实例--朝廷守门机器人
第11页:Path的用法 第12页:variable和alias的进一步应用
第13页:遍历实现的一种方法 第14页:路径的逆转和简化
第15页:实际例子--解决乱入的2种办法
收藏 推荐 打印 | 录入:sbso | 阅读:
相关内容       机器人  zmud 
本文评论   [发表评论]   全部评论 (0)
内容推送
52mud提供
一起回忆泥巴游戏QQ群68186072
52mud官方微信公众平台
热门评论