Mud 版 (精华区)
发信人: Baggio (傻瓜牌生活), 信区: Mud
标 题: 自动画地图的机器人
发信站: 紫 丁 香 (Fri Apr 30 15:00:23 1999), 转信
------------------------------------------------------------------------
自动画地图的机器人
作者:River
在zmud中提供了一个内建的地图编辑器可以帮助我们绘制mud世界的地图,避免在神秘莫
测的mud世界中迷途不返。为了绘制一张完整的地图,需要走遍这个世界的每一个角落,
这实在是一件费时而且乏味的事情。利用zmud提供的有关命令和函数,我们可以编写一
个自动绘制地图的机器人(下载),简单快速的完成这项工作。
一、配置zmud的automappr
为了使automapper可用,需要针对不同的mud对automapper进行一些简单的配置,具体配
置方法参见地图详解。以下以《西游记》为例,简要说明配置过程:
1、打开automapper,选择菜单edit/preferences...;
2、在strings的look command中填入look;
3、在full parsing、brief parsing、look parsing三页中的exit pattern中填入“的
出口是”,exit types选whole words;
4、在brief parsing页中将BRIEF Parsing order 框中的Room description删除;
完成上述步骤,即可在《西游记》中使用automapper了,如果需要名副其实的auto,这
只是万里长征的第一步。
二、修改speedwalking中的方向代码
单击zmud顶行按钮Paths,选择Directions页,将其中的代码l改为m,别忘了改动与其相
对应的代码h中的Reverse code:l。之所以需要修改方向代码,是因为在机器人运行时需
要用的到这些代码中,l与mud命令look重复。
三、触发
在triggers中增加class map,该类中包括以下triggers:
#TRIGGER {的出口是} {#wait 5000;0map} {map} 548
#TRIGGER {^什么} {#gag} {map} 548
#TRIGGER {闲聊} {#gag} {map} 548
#TRIGGER {谣言} {#gag} {map} 548
#TRIGGER {离开} {#gag} {map} 548
上述triggers中,第一条的延时请根据网络速度自行调整,别名0map在下面会说明。其余
几条的功能都是删除有可能对地图数据产生干扰的信息,通常可以用tune all off来避免
大多数干扰,其他的干扰信息,例如:
太阳已经高高地挂在东方的天空中
xx走了过来...等等
请使用#gag或#nomap命令自行添加删除。
四、添加aliases
在zmud的中aliases中添加以下内容:
#ALIAS start {pass=1;#t+ map}
#ALIAS h {nw}
#ALIAS j {ne}
#ALIAS k {sw}
#ALIAS m {se}
#ALIAS 0map {mexit=%numwords(%roomexit(),|);
#if (%null(%roomnote(,))) {%roomnote(,##)} {%roomnote(,%roomnote(,)#)};
#math passn %len(%roomnote(,))/2;
#if (@passn>@mexit) {%roomnote(,);
#math passn @pass+1;
#math pass @pass+1};
#if (@passn>@mexit) {passn=1};
#if (@pass>3) {#t- map;pass=1};
#exec %word(%roomexit(),@passn,|)}
至此,自动的地图绘制者正式完成,你只需打开地图编辑器,按下Explore键,输入start;
look就可以了。
五、注意事项
1、按照%roomexit()函数的输出顺序,最好从地图的西南角开始运行,如果从东南角开始
,可使变量passn=mexit-passn+1;
2、对于较大区域(zone)的地图,本程序通常不能一次性完成整个地图的绘制工作,当
程序停止时,你可以移动到地图的边缘,再次start;
3、当遇到有npc阻拦而无法进入的room时,程序会自动停止,此时需按下automapper的
off键,然后重新开始,以免造成混乱;
4、zmud的automapper不能表示su,nd等方向的room,但用户可以将通过su、nd等方向连
接的区域(zone)用automapper提供的teleport功能连接起来,具体做法请参考zmud的
帮助文件。
5、如有任何疑问、意见和建议请与 river@kali.com.cn 联系。
--
※ 来源:.紫 丁 香 bbs.hit.edu.cn.[FROM: Baggio.hit.edu.c]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.085毫秒