文字MUD游戏论坛-天下泥潭群英会-水泊梁山

文字MUD游戏论坛-天下泥潭群英会-水泊梁山 (http://www.aolai.org/forums/)
-   『 机器人制作及下载 』 (http://www.aolai.org/forums/f5/)
-   -   怎么判断自己在mud里是否发呆? (http://www.aolai.org/forums/t5105/)

argus 2003-09-26 22:26

正常情况下,我们每隔6分钟问一次任务,tick的设定一般也是6分钟。如果一个灭妖任务无法完成的话,等待的时间是多少?(这个我不清楚,因为我刚玩没多久,没注意过).假设为30分钟吧,30/6=5,如果idle累计到5的话,就认为自己是在发呆吧。

dhxy 2004-12-06 16:24

直接在TICK里面写句让ID不发呆的话吧,支持风月!何必搞的这么复杂呢??

mudy 2004-12-08 06:14

我每次回kz把时间记录下来,每10分钟check一下上次回客站的时间,和当前时间相差20分钟就飞回去。

argus 2004-12-08 19:15

让id不发呆很容易,但关键是我们要干活啊,不干活,老呆在mud里有什么意思?
楼主问的发呆,并不是真的发呆了,而是机器不干活了,比如灭妖机器不灭妖了,quests机器不做任务了等等。
这就是我们所讲的防止发“呆”。
一个再漂亮的机器,不能防止发呆,终究也是一堆废铁,用处不大。因为机器难免会出以外,导致不能正常工作。

至于如何防止,那就见仁见智了。

icper 2004-12-08 22:54

这么老的都被你们翻出来啦!

独孤无情 2004-12-16 17:49

应该比较简单的!

luoyiluoyi888 2005-01-23 00:00

回复: 怎么判断自己在mud里是否发呆?
 
引用:

作者: icper
我的tick里是#say 杀怪去
然后有一个变量isfree是判断当前状态的
如果正在找怪或杀怪,则isfree为0
没找到怪或杀死了怪则回到kz,同时isfree=1
每次#say 杀怪去 时会判断isfree
如果isfree=0,什么也不干
isfree=1,则去向li jing要怪,同时置isfree=0
就这样,但有时因一些不可抗因素
比如机器只响应了部分指令(这种情况我碰到过几次)
又或是机器不是很完善,导致重复响应
还有网速突然变慢也可能导致机器停下来
以前我一直是用一个id finger
当发现我发呆超过一定时间后就tell 我
我这边收到后判断isfree,
如果isfree=1,说明我在kz,不理会
如果isfree=0,说明真的发呆了,做相应的操作
用一个变量垒加的方法我也想过
但是阈值不好确定

大哥懂的真多.我崇拜你

100mangmang 2005-03-01 14:11

回复: 怎么判断自己在mud里是否发呆?
 
厉害呢。。。。。。。。。。。。。。。。

17181473 2005-05-07 23:24

回复: 怎么判断自己在mud里是否发呆?
 
引用:

作者: argus
让id不发呆很容易,但关键是我们要干活啊,不干活,老呆在mud里有什么意思?
楼主问的发呆,并不是真的发呆了,而是机器不干活了,比如灭妖机器不灭妖了,quests机器不做任务了等等。
这就是我们所讲的防止发“呆”。
一个再漂亮的机器,不能防止发呆,终究也是一堆废铁,用处不大。因为机器难免会出以外,导致不能正常工作。

至于如何防止,那就见仁见智了。

完全同意你的看法
不过,好像你什么办法也没有说呀
其实这个问题,我也非常想知道
我的办法是最笨的,就是从来不做循环机器人,每隔一段时间用时间触发给出初始命令
然后判断,最后action。然后就等待下一个时间命令
这样就避免了机器人不过做的情况
遗憾的是这样的机器人不可能完成太过复杂的任务
只是简单的作某一件事情。

17181473 2005-05-07 23:26

回复: 怎么判断自己在mud里是否发呆?
 
引用:

作者: mudy
我每次回kz把时间记录下来,每10分钟check一下上次回客站的时间,和当前时间相差20分钟就飞回去。

另外,mudy的看法,我看可以考虑。
我感觉他的思路和我的接近,并且更加智能化
不过,从另一个角度来说,如果他的判断函数出了问题,就……

这就让我感觉到好像是在用“发呆”避免“发呆”
呵呵


所有时间均为格林尼治时间 +9, 现在的时间是 14:35.

Powered by SPLS
版权所有 2001-2023 水泊梁山
皖ICP备05012024号

站长 fengyue


Content Relevant URLs by vBSEO 3.6.1