北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 3188|回复: 1

请教个多行信息统计的问题(zmud721)

[复制链接]
发表于 2011-7-20 14:14:20 | 显示全部楼层 |阅读模式
向各位请教个问题,困扰了好久 我用的zmud721
我玩的这个mud中在接任务时显示的类似验证码之类的图像
我想用机器人识别出来



我的思路是将其中的所有行抓取下来,然后数其中点亮颜色个数,然后再和标准进行比较,选择最接近的。
但是在编机器人时遇到了许多困难
第一条路:如何将所有行抓取下来,而且要保留颜色信息      用%line??
第二条路:不抓取行,用颜色触发
#tri {#%e[1;33m#%* } {#add countnumber 1}
#tri {#%e[1;33mm#%* } {#add countnumber 2}
。。。
但是这样做的后果就是每一行只能对trigger触发一次,比如上面图片中的第一行有两个点亮的符号,但是却只统计一次。
求教了。

北大侠客行MUD,中国最好的MUD

[ 本帖最后由 zixiao 于 2011-7-20 02:43 PM 编辑 ]
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2011-7-24 18:27:47 | 显示全部楼层
带着颜色抓, 要选中"ANSI trigger"

分析亮点的话用trigger不太合适.
如果你用类似于^(*)$的trigger去触发, 在抓到内容后, 如果trigger里的处理命令太长, 一时处理不完, 那下一条触发会直接修改%1里的值.
我的建议是, 如果在这段图形显示之前有一段固定的文字的可以抓的话, 你可以用这段文字做个trigger, 启动一个class, 这个class里只有一个trigger就是^(*)$
在这个抓到内容之后, 存入一个数组
在这个图形结束后, 如果有固定的文字可以做触发, 或者图形的高度是固定的, 关闭这个class, 进入图形处理过程
你可以用pos函数, len函数, trim函数来处理这个字符串数组. zmud里直接写起来不方便, 可以先写段伪码.
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-17 01:39 AM , Processed in 0.009257 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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