shaka 发表于 2007-11-23 20:41:00

关于唱戏机器人的考虑

不太会作机器人,而且手动消遣为主
但是看了看多唱戏机器人,觉得问题最大的地方就是如果一个地方唱过了,再来唱戏就要在周围换地方了

于是这样考虑,提供一个思路看能不能帮助大家

1、其实可以永远在一个地方唱戏而不会出现说大家不想看戏的情况的,从操作来看,有个bug,就是是在你唱戏开始的时候判断这个地方是不是能唱戏;然后在唱戏结束的时候,在这个地方做了标记,说已经唱过戏了,但是在唱戏马上结束的时候有一点时间是id能够移动自己的,也就是说,这个时候你能够忽然转移到一个临近的地方去,于是就把旁边的地方记录成为唱戏过了,而这里还是好好的

2、所以可以考虑在一个地方开始唱戏后,不停的向一个方向移动,如果说busy,就再移动,到不说busy为止,最后唱戏结束后,找回路就是了,这样原来你开始唱戏的地方永远可以开始唱戏

xql 发表于 2007-11-24 00:03:10

Re:关于唱戏机器人的考虑

我想到的是:
一放弃任务
1.去某个区域唱戏就赋值,比如去襄阳就xy 1
2.每唱一次对唱戏的总次数计算,比如cx
3.cx达到某个值,xy就清零
4.判断xy是否等于1,如果等于就放弃该任务,否则去唱戏

二   自动行走(猜想,不懂用#path,只能猜想可能可以通过此方法实现)
1.在唱戏区域设一个点比如华山山脚,尽量选一个各个方向出口都在室外的点,并且不于其他区域连接的room,注意人工判断是否和其他区域连接可以随便找个xkx的单机看目录d下面的区域分布,华山山脚就是个明显的例子和华山村是连接的
2.到达该华山山脚后,如果返回信息是已经唱过,那么就向任意出口挪一步,然后继续唱,不成功就返回华山山脚再任意挪一步,直到能唱为止,唱成功后就返回华山山脚

第二种方法应该可以用一大堆#t+ #t-来实现,不过工作量太大了,希望有高人
能赐教#path的方法

PS:领完任务,输入quest可以直接显示某区域的拼音,那么就可以直接抓那个变量将class和alias都用那个值,可以很省事的作1个tigger就满足全区域,当然啦,路径需要时间去整理,不过已经少了很多判断了~
页: [1]
查看完整版本: 关于唱戏机器人的考虑