当前位置:梁山文学城 网络泥巴中文文字mud综合门户网站 泥潭帮助 网络泥巴中文文字mud综合门户网站 zMud帮助 网络泥巴中文文字mud综合门户网站

 机器人小技巧

机器人小技巧

精彩泥巴推荐

标题 作者 内容

作者:未知    更新时间:2004-11-03   阅读次数: 2532 次  

相关评论:0 篇   暂时无人对本文评分! 关键字:机器,robot,zmud

来源:水泊梁山之天下泥潭http://www.aolai.org(来源有误请尽快联系本站管理员

机器人小技巧

首先声明,我对编机器人不是很在行。以前自己用过的机器人基本上是靠打着“拿来主意”的招牌共产过来的

。这篇文章主要是写给一些新手看的,希望对他们今后编机器人能够有所帮助。用一句比较流行的话来结束这

段开场白吧:兄弟抛块砖,有玉的尽管砸过来! 

一:关于应付pk。 

1,自动提示 你是否有过这样的经历:挂上一个机器人,然后去做别的事情(比如上BBS),过了一会回去一

看,竟然被别人PK了。为了防止这种情况,我们可以做一个自动提示的trigger。只要一句话就可以实现: 

#TRIGGER {^看起来(*)想杀死你!} {pker=%1;#mess 救命呀,@pker要杀我啦 !} {} 519 

(直接在zmud的命令栏中输入即可,下同) 

这样,当有人要杀你的时候。zmud就会自动弹出一个对话窗进行提示。顺便说一下,这里还需要考虑到一些特

殊的pk方法,例如冰刀,瞌睡虫,迷魂,蚀月之类。原理同上,不再赘述。 

2,自动保护 首先,可以在受重伤的情况下quit。这也是大家经常使用的方法。例如: 

#TRIGGER {^( 你受伤过重,已经有如风中残烛,随时都可能断气。 )} {quit} {quit} 519 

#TRIGGER {^( 你已经陷入半昏迷状态,随时都可能摔倒晕去。 )} {quit} {quit} 519 

#TRIGGER {^( 你受伤过重,已经奄奄一息,命在旦夕了。 )} {quit} {quit} 519 

#TRIGGER {^( 你上一个动作还没有完成,不能退出。)} {#wa 500;quit} {quit} 519 

注意最后一句话一定不能少,以防止你在busy的状态下遭到pk。顺便说一个命令:#di,输入后,zmud就会自动断

线。在一些mud中,是不能对断线的玩家进行攻击的,所以可以利用这个命令进行断线保护。:)) 

3,自动记录 如何知道你不在的时候,是谁PK了或者试图PK你呢?这里有两种方法可以实现。 

第一种:使用zmud的自动记录功能。只要在zmud的file菜单中选择new log,指定保存目录和保存文件名。或者

直接使用#log命令,例如,输入#log abc.txt,即可生成abc.txt的记录文件。想停止输入时输入#log即可。这样

zmud就可以将所有的内容都储存成为txt文件。这样,只要打开该文件,你就可以看到自己不在的时候发生的

所有事情了。 

第二种:通过trigger将pker的id,中文名字记录下来,推荐使用。方法为: 

#TRIGGER {^看起来(*)想杀死你!} {pker=%1;id here;alias pker @pker} {} 519 

#TRIGGER {(@pker)(%s)= (%x)} {pkid=%1;alias pkid @pkid;#case %random(1,4) {chat @pkid,我会

报仇的} {chat @pkid,我记住你了} {chat @pkid,为什么要杀我?} {chat @pkid,走着瞧!} } {1} 519 

#TRIGGER {^你死了。} {#t+ rumor} {die} 519 

#TRIGGER {【谣言】某人:洒水车被(*)吃掉} {pker=%1;alias pker @pker;#t- rumor} {rumor} 518

 } {rumor} 518 

这样就可以把最后一个要杀你的玩家的id设为alias中的pkid,中文名字为alias中的pker,并且随机给他一个警

告(玩家可以根据自己的喜好更改这些警告)。如果你不幸被杀,它还可以把系统的谣言记录下来,即使pker变成

别的玩家也无所遁形。这样,不管你下一次使用的是不是同一台机器。只要进入游戏,看一下自己设定的alia

s中的pker和pkid。就可以知道仇家是谁了。 

4,防止误触发 

先举两个误触发的例子。例如,我在chat中谈道自己被妖怪打得不行,随便说了一句

“【闲聊】洒水车(Sanfeng):( 你已经陷入半昏迷状态,随时都可能摔倒晕去。 )”。 

这就有可能触发你的自动保护trigger,导致你quit。这是无意的误触发。还有一些恶意的误触发更令人讨厌。

举个例子,我和你在一起打山妖或者是水蛭精。你的trigger是当潜能为100时就飞回去和师父学武功。我就可

以在你身边“say 潜能: 100”,把你赶走。嘿嘿,够阴险吧? 

解决误触发也很简单在。首先,可以在需要触发的语句前加一个^(shift+6)符号。这就是用来防止误触发的,

可以强制pattern从每行的开头开始匹配。其次,可以通过#t+和#t-命令来开启或关闭一类trigger,从而避免误

触发。例如上面通过记录谣言来确认pker的trigger就是使用的这个方法:先将记录谣言的trigger起个名字(我

用的是rumor)。当系统出现“你死了”的提示后,用#t+ rumor命令打开rumor类trigger。而rumor这个trigge

r本身,可以在记录完pker的名字以后将自己关闭(#t- rumor)。这样,就不 

会再被触发了。顺便介绍一个命令:#ig,这是一个很有用的命令,它使zmud禁用所有的trigger.(就是在zmud

下角的枪形图标上打叉的效果) 

二,关于全自动机器人。 

所谓的“全自动机器人”是指能够长时间运行,无须人看管的机器人。 

长时间运行,首先就需要解决食物和饮水的问题。这里以西游记450为例:

可以做一个自动判断食物的trigger,当食物小于某一固定数值(例如100)的时候,就去天竺买一颗 

“养身丹”补充。具体方法为: 

#TRIGGER {食物:%s(%d)/ 400%s} {food=%1;#if (@food<100) {fly tianzhu;#8 w;s 

;s;e;buy dan from hou;eat dan}} {food} 519 

(这里的数值400为食物最大值,因人而异) 

无人看管,就需要自动连线来应付断线。自动连线主要有两种方法。 

第一种是设置alias,方法为: 

#ALIAS atconnect {gb;no;YOURNAME;YOURPASSWORD} 

这种方法比较简单,易用,推荐使用。不过需要注意的是,这样一来,你的PASSWORD就被储存在ALI

AS之中了。如果不是在自己的机器上的话,最好不要SAVE,这样ZMUD被关闭后就找不到你的trigger

了。或者干脆及时删除。 

第二种是用trigger。 

第一句:#TRIGGER {您的英文名字:} {%char} { autolog} 963 

第二句:#TRIGGER {请输入密码:} {%pass;#T- autolog} { autolog} 963 

其实,当你的character第一次连线进入的时候,zmud都会提问你是否设置自动连线的。只要选择“YES”即

可。此时,你的PASSWORD将会以*****的形式被储存下来。这也是极不安全的,只要使用一些黑客软件

(例如snadboy)就可以轻松破解,从而获得你的密码。 

还有一种特殊情况:mudos重启或者你由于发生意外被迫quit。此时,你重新连进游戏后,进入的是南城客栈或

者其它你save的地方,而且身上除了法宝和钱之外一无所有。这种情况,可以用一些特殊的语句来触发。所谓

特殊的语句,就是指只有当你第一次连线进入的时候才会出现的提示的话。例如: “目前权限:(*)”等等。 

如果因为遇到pker或者其它情况而不想自动连线。可以通过更改密码的方法来破坏自动连线。 

要想实现机器人的全自动,需要考虑到非常多的情况。但是,无论如何仔细,也没有绝对的把握保证你的机器

人不出问题。一般来讲,越是复杂的机器人就越容易出错,越容易停下来。万一出现这种情况,该怎么办呢?

这就需要用到finger命令了。finger 某人,就可以得知有关该玩家的连线,权限等资料。例如:finger sanfe

ng就可以看到: 

英文代号: sanfeng 

姓 名: 洒水车 

权限等级: (player) 

电子邮件地址: 不告诉你 

上次连线: Fri Aug 25 10:35:34 2000 

洒水车目前正在连线中。 

当该玩家连续60秒以上未输入任何命令时,就会出现如下的话: 

洒水车目前正在连线,已发呆 100 秒钟。 

利用finger命令,我们就可以应付机器人停止的意外情况了。先找一个 dummy,放在南城客栈,set no_accept

(防止别人用毒刀暗算)。每隔60秒就finger你的主id,如果出现发呆的情况下就tell他一句话。而当主ID接

收到dummy发送的信息后就可以继续运行了。 

5 关于自动升级。

很多自动的机器人都是打架长潜能,然后去和师父学武功的。当你的武功比师父低的时候,机器人很好做。但

是,到了后期,你的武功高于师父,就需要判断是否学够了。否则,将会浪费大量的潜能。 

下面这个trigger可以进行自动判断(这个是针对xyj450的原码的) 

#TRIGGER {基本轻功*%s(%d)/(*)$ } {#if %eval((%1+1)*(%1+1)-%trim(%2))<0 {...} {...} } {} 519 

上面是以基本轻功为例的。 

三,杂七杂八 

先说说一个简单的命令:#cap。这个命令 可以把你想要的信息抓下来,在另外一个窗口储存下来,从而方便浏

览。例如,你想把所有聊天的内容放到talk窗口中去,就可以用下面这个trigger来实现。 

#TRIGGER {【} {#cap talk} {} 519 

一些人气很旺的站点,由于在线玩家比较多,所以聊天内容也很多,从而导致聊还动速度过快。既然我们已经

用#cap命令将聊天内容抓到talk窗口中,就可以用#gag命令把主窗口中的聊天内容摒闭掉。方法为: 

#TRIGGER {【} {#gag} {} 519 

这样,即使打开聊天频道,聊天的内容也不会出现在你的主窗口中了。 

#gag命令还可以摒闭掉你不想看到的内容,例如某某人走了过来什么的。 

对一些重要的或者是敏感的字符,例如你要杀的妖怪,仇家,黄金什么的,可以用#cw或#co来改变颜色,达到便

于识别的目的。。#cw可以使一个字符串改变颜色,#co可以使字符串所在的整行改变颜色。 

#TRIGGER {洒水车} {#cw 10} {} 519 

如果想让一个颜色更亮丽一些,就在它原来的值上加8,比如9就表示更亮的兰色;如果是想改变背景的颜色,

就将它原来的值乘16;比如要想得到红色的背景则使用的颜色代码为64;改变前景的字体要再加上128。 

比如: 

#co 159 设置最后接受的一行文本是蓝底粗黑白体(1*16+15+128) 

其中的10代表亮绿色。至于具体哪个数字对应什么颜色嘛,大家自己慢慢试验吧,呵呵@_@ 

最后,再简单说说zmud中的button,key,status以及paths,也就是按钮,宏键,状态条和自动行走。 

我们可以把一些常用的命令做成按钮。只要在Action菜单中选择Make button即可(或者直接ctrl+b)。可以设

置button的位置,种类,尺寸,颜色,开启或者关闭时的显示等等。至于具体的做法则很简单,不再多说。如

果你看不太懂英语的话,可以下载一个中文版的zmud。 

keys就是用某一个键值代替具体的命令。例如,可以用F12代替quit(方便逃命的说)。zmud提供了一些默认的

宏键。小键盘区的方向键就分别表示south,north,east,west等。可以用如下的方法设置宏键:按ctrl+k键,zm

ud会提示你“Press key combination to define/edit”,按下你想要定义的键(例如F12),这时zmud又会提

示你“Enter definat ion for this key”,输入你想要用宏键代替的命令(例如quit)。 

状态条还是蛮有用处的。它可以提示你要做的任务或者是要灭的妖怪的名字,更可以帮你计算做任务或者是灭

妖的速度和效率。比如用状态条来记录要灭的妖,灭妖次数以及奖励。先定义一个trigger来提取相应的变量(

假设@yaoguai和@jiangli分别为灭妖对象和奖励数目)。再用鼠标右击状态条,选Define status bar,在sta

tus line里输入“要灭的妖:@yaoguai”和“奖励:@jiangli”。至于次数统计,先在变量中定义“jiang”的数

的settings选项中还可以设置更改每走一步的时间间隔。默认数值为五秒,太长了。开始自动行走也很简单,

比如先做一个走遍长安城的paths,并命名为changan,这时只要输入#slow changan(这是慢速行走,如果想快速

行走,使中间没有时间间隔,输入“.changan”),就可以按照既定的路径行走了,当你想停下来的时候,输入

#stop即可。如果你走错了方向,你可以用#BACKUP 来走回去。#REVERSE还可以让你反方向行走

。 

自动行走是建立在定义好的方向上的,如north 等,可以增加这些定义做更多的事,比如增加o 作为open doo

r;那么你就可以在走动中开门入房了了. 

【本页链接】http://www.aolai.org/article/2004-11/article-1099415037.htm

返回水泊梁山首页    返回本目录    上一篇: 如何使用proxy上MUD    下一篇: 关于赌博
   我要评论 姓名:
  内容:  请控制字数少过128个中文字
  天书: 
   我要评分 分数:  介于0.00~5.00之间,满分5分!   
   相关评论( 本文暂无相关评论)

搜索泥巴妙文

更多泥潭帮助妙文

  我是一个叛徒 [295]
  我的判师 [346]
  判师隆中对 [1346]
  招聘督察 [66]
  关于取经ITEM [1950]
  关于取经NPC的问题 [1399]
  我的夜 [85]
  西游记2000总站取经13-24 [10123]
  西游记2000总站取经1-12 [11989]
  西游记各种技能的介绍 ( [8892]
  西游记 兵器大赏 [3973]
  取经小西天过关纪录 [2004]
  取经通天河过关log [1601]
  二十八关取经之第六关 [2174]
  火焰山过关秘籍 [2432]
  二十八关取经之第一关 [3053]
  痴风梦月的技能最强篇-- [6063]
  杀尽天下唐僧-给spls的新 [2186]