              [1;37m〖  风起云涌 帮助系统 〗[2;37;0m                                  
                     [1;22m新观念机器人[2;37;0m             

    大家知道，玩mud都用zmud等工具来实现一系列的触发，路径等等
功能每当网络速度太慢而导致你的指令无法及时送出的时候,你一定会
有把机器砸掉的冲动,尤其是看到屏幕突然不动,等传过来的时候已经在
黄泉路上,实在是很不爽的一种事情。     
    基于这种考虑,我想实现服务器端触发的概念,即允许玩家事先自
定义一些简单的trigger,在服务器对用户发出这些信息之前就有机会
触发这些trigger,执行一系列事先定义好的命令.和alias一起,client
端可以变的更"瘦",最终能彻底淘汰zmud是最好了,不过,相信80%的时候
,zmud都是在用来快速走路和触发一些简单的trigger,然后是timer。
   这样一来,虽然比zmud还差些,不过也已经可以用个最破的telnet来
舒服的玩mud了,计划中还包括的简单提供复杂的alias，即一个alias可
以输入多个命令，代替zmud的路径；还有离线练功，鉴于大家都是学生，
没有太多时间耗在mud上面，我在考虑一种在玩家离线之后由系统来继续
练功的可能，那么类似打坐，学习之类烦琐枯燥而又耗时的工作可以让服
务器帮你完成，你要做的仅仅是事先设定一个个系列的好triggers。 :)
    目前server-side trigger只支持子串匹配和正则表达式的匹配,还
不能够把匹配的变量取出来，但是可以匹配带颜色的pattern,我想在不久
的将来，这些都会实现。
    关于trigger的用法可以如下，其好坏大家可以一起讨论：

指令格式 : trigger <触发信息> <触发后欲执行之命令>

 当你从系统接收到<触发信息>的时候,可以让系统自动执行一个 
 或者一系列预先定义好的指令(可以是你定义的alias).   例如:         
'trigger 英俊男子身着布衣走了过来。 hi' 会在
出现“英俊男子身着布衣走了过来。”的时候自动执行一个 "hi" 的指令。        
 'trigger' 後不加参数则列出你所有的trigger。
 'trigger sc' 会消除 sc 这个trigger。 
 (如果你设定过这个trigger的话)
 'trigger on' 会打开trigger触发。
 'trigger off'会关闭trigger的触发。
 'trigger xxxx $gag' 会不显示所有包含xxxx的信息。比如敲这个指令
 'trigger 流星雨 $gag',这样你就看不到他的一切话了。
 'trigger OnDisconnect quit' 会在你断线的时候自动执行 'quit' 指令,
当然也可以是别的指令。
                                              小兔子(xtuzi)
                                               2001年7月8日