斩断跟踪窃密的“黑手”
zMUD即学即用
目前,绝大部分中文MUD游戏是免费的。但玩MUD游戏,需要使用专用的客户端软件。在Windows平台上最优秀的MUD客户端软件是Zuggsoft开发的zMUD。zMUD
是一个共享软件。包括基于Windows 95/NT平台的32-bit版本(不支持Win32s)和基于Windows 3.x,Windows
95/NT,OS/2(Windows Mode)平台的16-bit版本。你可以到http://www.zuggsoft.com下载其最新版本。中文MUD资讯站“泥巴城堡”(http://ezMUD.163.net)也提供zMUD的下载。
zMUD采用图形化界面,使用非常简单,并且内置了非常强大的机器人系统(由Aliases、Trigger和Variables等部分组成),可以为玩MUD游戏提供很多方便和乐趣。zMUD所提供的各种工具需要用户根据不同的MUD进行定制。并且所有工具均可以在离线方式下定制。下面我们就以目前使用最广泛的zMUD4.62为例,来介绍一下zMUD的一些基本工具。
一、 连接向导的使用
第一次使用zMUD,首先会弹出注册窗口。此时选择Evaluate,开始试用。
如果你使用的是5.x版本,此时单击NEW按钮;如果是4.62则单击Use the Connection Wizard to create a
NEW character按钮。这时会弹出创建连接窗口。在窗口中你会看到一些zMUD为用户准备好的MUD列表,选择相应的MUD名称,你就可以很方便地连接到这些MUD。但这些MUD都是英文的,如果希望连接到中文MUD,你必须自己来输入连接所需的MUD地址。
MUD的地址分为Host和Port两个部分。比如中文MUD“天龙八部”的地址为:
Host tlbb.kunpeng.net.cn
Port 8888
你只要将它们填入窗口的相应位置(如图1)即可。下面就可以按Connect按钮进行连接了。

第一次连接到MUD站点,MUD系统会提示你输入一些信息,比如英文名字,中文名字,设定密码,电子邮件地址,性别等。一般情况下,当你按提示输入完英文名字和中文名字之后,zMUD会认为你输入的是姓名和密码,会自动弹出Auto-logoin
Wizard窗口,这个窗口中的设置是为今后自动连接到MUD站点使用的。由于此时的连接信息不正确,应选择No来关闭该窗口,然后继续按MUD中的提示输入接下来的信息。完成后会有两种情况出现:第一种情况时,MUD会提示你等待收取电子邮件,该邮件中会包含你的注册信息及系统为你分配的密码。得到这个密码后,再次连接到MUD,输入你的英文名字和邮件中的密码,zMUD会再次弹出Auto-logoin
Wizard窗口,这时可以按Yes按钮,完成该窗口的设置(如图2)。这样,当你以后再连接到这个MUD时,zMUD会自动完成输入姓名和密码的工作。第二种情况时,系统会允许你使用自己所制定的密码。这时,你不用等待电子邮件的到来就可以进入MUD世界了。但不要忘了在下次连接时完成Auto-logoin
Wizard窗口的设定。

收集中文MUD站点的地址非常的困难,不过还好,“泥巴城堡”已经为玩家收集了上百个中文MUD站点的地址,并且制成了Cmudlist for zMUD,可以在zMUD中直接调用。你可以到http://ezMUD.163.net下载其最新版本。根据你使用的zMUD版本不同,你可以选择相应的Cmudlist进行下载。如果你使用的是zMUD4.62,下载Cmudlist之后将其解压到任意目录下,用mudlist.doc替代zMUD所在目录下的同名文件。现在就可以启动zMUD,选择Use
the Connection Wizard to create a NEW character,再选择MUD Connector (big),这时你就可以看到中文MUD导航列表了。在列表中选择要玩的MUD,然后按Connect按钮即可连接(如图3)。Cmudlist
for zMUD5.x版本的使用过程与4.62类似,在此就不再复述了。

二、Aliases的使用
在zMUD中,Aliases是最常用的一个工具。它可以将一个较长的命令由一个较短的命令替代,使用起来也比较方便。
命令格式:#ALIAS 简化名 {命令内容}
在一些MUD中,向师傅学习需要输入以下指令:
learn <技能> from master with <精神>
我们可以用#alias lm {learn %1 from master with %2}来完成命令的简化。其中的%1和%2代表任意的字母和数字,在这里我们将其用来代替<技能>和<精神>。在使用时,就可以输入
lm force 1 来代替learn force from master with 1 了。当然,还可以将命令进一步简化成#alias lf
{learn force from master with 30}。这样,我们就可以直接输入lf来学习force了。第二种方法在使用时比较方便,但需要定制多个aliases。
Aliases的另一个常见用途就是简化行走路径。比如可以使用#alias fw {w;w;w;n;n;n;#wa 1000;e;e;e;s;fillwater}来完成从某地到某地然后灌水的任务。其中,#wa
1000是延时命令。如果你使用alias来执行很长的一串命令,中间一定要加入延时,否则会得到MUD中监督机制的特殊待遇(比如被审判官抓走)。延时1000为一秒。注意,各个命令之间要用“;”号隔开。
常用aliases:
#alias ex {exercise 30}
#alias eq {exert recover 30}
#alias es {exert refresh 30}
#alias gc {get all from corpse}
#alias sb {study book 30}
以此类推,你去摸索适合自己的alias吧。
注意:在使用alias时,一定不要用与现有命令同名的简化命令,这将会使原有命令失效。比如:#alias l {learn %1 from master
with %2},这样会使原有的l(look)命令失效。
如果你觉得使用上面讲的命令行方式定制aliases比较麻烦,你也可以使用图形向导的方式来定制aliases。仍然以向师傅学习的命令为例。首先单击zMUD的aliases按钮,这时会弹出一个设制窗口。按下New按钮,并按照图4所示填入相关内容,然后按Save按钮,就完成了aliase的设定。这里需要注意的是,zMUD4.62中定制aliase时,如果需要输入多个命令,在各个命令之间必须加上“;”号,而在5.22中各个命令之间只要加入回车即可。

多数MUD系统本身就提供了aliase命令,可以使用“help aliase”查询。但建议不要去使用MUD中的aliase,而是用zMUD提供的,这主要是因为MUD中的aliase定制和更改起来都不太方便,而且还要花费上网时间。
三、Trigger的使用
Trigger是zMUD中最强大也是最复杂的工具。它强大得可以帮你自动完成你要做的任何事情;它复杂得要求你要有程序员的头脑才能很好地驾驭它。如果想制作出强大的Trigger脚本(机器人),需要综合运用zMUD中的各种工具。由于本文是入门篇,所以只介绍一些Trigger的基本概念。
Trigger可以根据所获得的信息自动做出判断和反应。
命令格式:#TRIGGER {pattern} {command}
当屏幕上显示的信息与pattern中的描述相同时,就会执行command中的命令。比如:
#trigger {看起来想杀死你} {#beep}
这是一个自动报警的机器人,如果有人对你下kill命令,屏幕上就会出现“某某看起来想杀死你”的文字。这时候,你的计算机就会用你指定的beep
sound来报警(在zMUD4.62中设定beep sound,首先单击工具条中的sound按钮,然后单击beep sound后面的文件夹,指定一个.wav或.mid文件即可。在5.22中单击Prefs按钮,然后选择Sound即可)。
做好了trigger不要忘记为它起一个名字,当你输入#trigger {看起来想杀死你} {#beep} alarm,你就建立了一个叫alarm的trigger。这有什么用吗?当然有用啦!一般情况下,你可能会拥有一大堆trigger,它们都有各自的用途。当你为它们起了名字,你就可以根据不同情况来决定打开或关闭相应的trigger。指令为:
#T+ 名字(打开一个trigger)
#T- 名字(关闭一个trigger)
同样你可以使用图形向导的方式来定制Trigger(如图5),方法类似于aliases,这里就不再复述。

四、实例介绍
zMUD中提供的工具非常多,除了上面讲的aliases和trigger之外还有variable、tick timer、paths、maps等等。如果想做出功能强大的自动“机器人”就要综合利用这些工具,并且经常要将多个trigger联合使用。这里我为你准备了一个实例。这是一个简单实用的trigger。它的作用是将各个交流频道的信息使用一个专用窗口显示。
很多玩家为了在做机器人时还能聊天,常常采用Multi-login(重复登陆),登陆一个专门聊天的dummy。使用机器人练功本来就是犯规的,再Multi-login就更加重了系统负担。如果使用聊天窗口,就可以大大减少Multi-login的人数。当然,即使你不使用Multi-login,聊天窗口也是很有用的。比如高手练功时,一次战斗可能持续很长时间,在这期间,你就可以使用专门的窗口来聊天,而不会被战斗信息所影响。
聊天窗口的使用非常简单。你只要在zMUD中输入一下指令即可:
#TRIGGER {闲聊} {#CAP 2 chat;} chat
#TRIGGER {说道} {#CAP 2 chat;} chat
#TRIGGER {谣言} {#CAP 2 chat;} chat
#TRIGGER {告诉你} {#CAP 2 chat;} chat
#TRIGGER {回答你} {#CAP 2 chat;} chat
这个Trigger脚本使用了zMUD中的CAPTURE命令,从而完成信息的捕获。如果你对捕获的原理有兴趣,可以查阅zMUD中关于CAPTURE
TEXT的帮助内容。在这里为了保险起见我将信息捕捉了两行,如果你认为没必要可以改为一行:
#TRIGGER {闲聊} {#CAP 1 chat;} chat
#TRIGGER {说道} {#CAP 1 chat;} chat
#TRIGGER {谣言} {#CAP 1 chat;} chat
#TRIGGER {告诉你} {#CAP 1 chat;} chat
#TRIGGER {回答你} {#CAP 1 chat;} chat
当你在zMUD中设制完了机器人或其它工具后,一定别忘了存盘。在zMUD的菜单中点击SETTINGS --> SAVE。
如果你希望对zMUD的使用有更多的了解,请到“六脉神剑”中去看其它的文章。