北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
楼主: szybd

渡深百M留念,共享藏经阁任务机器人制作全过程

[复制链接]
 楼主| 发表于 2014-1-4 12:08:58 | 显示全部楼层
原型系统如果效果良好,就可以做为最终系统来用。如果原型系统在某个方面有缺陷,根据具体问题针对性解决就可以了。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2014-1-4 12:53:14 | 显示全部楼层
回复 17# pinkagaric


这个思路不错,szybd发布任务全自动,吸引sg注意力,之后就是破解、反破解、加密、解密的过程。这样一来,能牵制sg很长时间无暇他顾。北侠上的玩家可以踏踏实实过几天安稳日子,不用天天过测试服的日子啦。szybd简直太伟大了,不过也有坏处那些cjg全自动暂时没法出动了,有些得罪老id.
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2014-1-4 15:11:29 | 显示全部楼层
哦,共享个机器人的制作过程,还会得罪老ID啊,真如此的话,哪些老ID未免太小气了。嘿嘿!
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2014-1-4 17:14:51 | 显示全部楼层
这个帖子就像一个本顶级牛逼的武林秘籍一样,学成里面的武功差不多就能成为超级赛亚人了。
问题是大部分人都是文盲,比如我就怎么看都看不懂。
不过这个思路对于错错、静电这一级别的估计有用。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2014-1-4 19:07:36 | 显示全部楼层
回复  pizzagoo


    膜拜技术帝。求分享。
feehoo 发表于 2014-1-3 07:36 PM



    我可不是技术帝,目前还是不能解决二次乱入的问题,而且刷屏的厉害,说白了就是通过look当前room的所有出口,发生乱入后比较当前room是前一个room的哪个出口的房间
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2014-1-4 19:12:27 | 显示全部楼层
这个帖子没有代码只有模模糊糊的想法,基本属于除了炫耀之外的废品,
教学贴应该贴上代码,一行一行的加注 ...
huacuoh 发表于 2014-1-4 06:10 PM



    错错是不是现在没心思做机器人了,这个比你的推车机器人难度可要小多了吧
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2014-1-4 20:50:31 | 显示全部楼层
呵呵,没到代码的地步了啊。需要代码的时候自然就上代码了。稍安勿躁。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2014-1-5 18:43:03 | 显示全部楼层
本帖最后由 feehoo 于 2014-1-5 10:45 AM 编辑

回复 30# szybd


    今天木有更新。顶一下别沉了。
其实我觉得渡深完全可以写个比较体系的mush教程。目前网上流传最广的教程都在北侠了。不过像小刀、静电这些前辈写的都是通用型新手教程。如现在这般做案例教学,先分享思路再提供关键代码的帖子真是太少了,而且也是十分有价值的。
我觉得在北侠最大的乐趣就是做机器人了。在不挑战大神们底线的基础上讲讲机器人,学学编程,寓教于乐,这也许正是文字mud吸引人的地方。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2014-1-6 12:30:17 | 显示全部楼层
周末要陪家人,上网时间不多。今天上午开发了一下原型系统,下面继续分享原型系统的实现过程。
一个系统要能实现自动运转,它必须能够识别各种情况,结合自身状态,做出合理反应,并调整自身状态。
识别情况:是通过触发器来实现的。
自身状态:是通过全局变量来保存的。
合理反应:就是执行某些函数。
调整自身状态:就是保存自身状态的全局量的值变化了
自动机器人不断的重复这个过程,直到自身的状态满足了结束条件,任务就终止了。
以上说的是一般原理,下面就针对我们的藏经阁任务机器人进行具体分析
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2014-1-6 12:44:15 | 显示全部楼层
首先我们用cjgstate来保存自身最主要的状态。
我们用cjgon()函数作为机器人的启动函数
在藏经阁机器人启动前:cjgstate = 'none',
藏经阁机器人启动后:cjgstate = 'init',启动时把所有的触发器初始化。执行
      cjgtriggerinit()--这里初始化了哪些触发器,我们下文根据具体需要识别的情况逐步展开分析。
要求藏经阁机器人在启动前,自身已经化妆好---当然化妆也可以自动化实现,但我们的机器人不考虑这个
在cjgstate == 'init'的情况下,如果碰到黄眉僧,自动"ask huangmei seng about 嵌入藏经阁"
这就需要第一个触发器:
   name = "cjg1"
   match="^[>\\s]*拈花寺住持 黄眉僧\\(Huangmei seng\\).*"
   cmd = "cjgstart()"
   addmytriggerzzhp(name,match,cmd)--这个函数简单封装了mush的AddTrigger()
一旦触发,自动执行函数cjgstart()
  这个触发器的初始化,就在前面提到的cjgtriggerinit()进行。

cjgstart()做些什么呢?
很简单:
        if cjgstate == "init" then
                Execute("ask huangmei seng about 潜入藏经阁")
        end
就一件事:ask huangmei seng about 潜入藏经阁
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-9-22 02:20 AM , Processed in 0.009063 second(s), 12 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表