【教程】找色找图之找血条.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
【教程】找色找图之找血条

1 为什么写找血条? 生命值在网游中是最关键、最敏感、最值得关注的参数之一,而血条作为人物生命值的直观展现,几乎所有的实用脚本都要与血条打交道,几乎所有的实用脚本都首先关注人物的生死存亡,几乎所有的打怪练级加PK类网游脚本都首先提供自动加红加蓝等基础功能,在简单游平台上,您提供的脚本要是不提供加红加蓝功能,上网、出门还真不好意思和别的简单游作者打招呼! 生命值/血值,因其颜色一般为红色所以又叫“红”,相应地把补充生命值叫做“加血”、“加红”或者“补红”等等。同样的,HP值/法力值/魔法值,因其颜色一般为蓝色所以又叫“蓝”,同时把补充魔法值叫做“加蓝”或者“补蓝”等等。找血条和找蓝条的原理类似,区别只在于颜色不同,因此在这里我们只介绍找血条的方法。 找血条技术是一门很基础的技术,其应用范围之广令人发指: 找血条是循环找怪打怪的基础。在小地图上,利用鼠标点击和遍历地图上的所有地点,查找是否存在血条,以此判断此处是否存在怪物,实现自动找怪打怪。 找血条是补红补蓝的基础。实现自动补红补蓝的基础就是能够自动地、准确地判断人物是否已经缺红缺蓝。 …… 目前得到血条的数值一般有三种方式:找内存法、解析封包法、找色找图法。找内存方法是一种最直接、最根本、最有效的方法,只要能得到生命值的内存地址,得到生命值就如探囊取物一般,如果你的胆子再稍微大一点,甚至可以修改生命值。所以,找内存法可以说是最锋利的倚天剑,“倚天一出,谁与争锋”!当然武器越锋利也越容易伤到自己,使用内存方法需要冒较大的风险,一旦被封的话一定让你痛不欲生,欲哭无泪,哭爹喊娘,欲仙欲死!而且网游厂商对内存读取之类的技术深恶痛绝,会采用各种技术例如动态内存等来防止第三方轻易读取内存,读取与反读取内存的较量也是一个永恒的话题。截获和解析游戏封包的方法的优缺点和读取内存法类似,优点是解决方案比较直接和彻底,但是封包的加解密,协议分析都比较困难,且动态变化。 找色找图法是一种较为中庸的方法,不强大不张扬,不温不火,却又比较保险。看似功能有限,只能完成一些基本的血条查找功能,甚至在大多数DirectX游戏中无法后台运行,但是正如正家基本拳脚功夫一样,一旦练得精熟,在高手的使唤下却又能显得颇为强大。 如上所述缘由,本文对已有找血条的方法进行小结,以便新手学习和查看。 ====================我是分割线============================== 2 读血条的一般方法 生命值在网游中的展现有如下几种方式:横向的血条、竖向的血条、圆形的血球、不规则型等,其读取和判断的原理大致相同,所以下面将以横向血条为示例进行讲述。在第2小节中,我们假设所有颜色都是固定的,血条颜色固定为红色,无血的颜色(血条底色)固定为黑色,如下图所示。具体编写脚本时,我们可以先抓一个满血的颜色,再抓一个空血的颜色,然后替换脚本中的0000FF(红色)和000000(黑色),依葫芦画瓢写出脚本即可。 2011-3-24 20:19 上传 下载附件 (13.3 KB) 读取/判断血条基于这样一个基本原理,当血条数值改变时,相应位置的血条颜色就会由血条颜色变成血条底色。按照判断方式的不同,补血的时机有两种: 2011-3-24 20:19 上传 下载附件 (2.56 KB) 一、以血条的颜色作为判断依据。在需要补血的地方取点判断,如上图绿色箭头所指示位置,如果该点颜色为血条颜色,那么表示血量充足,不需要做任何事情,否则需要补血。按键精灵的示例脚本如下: IfColor 100,100,0000FF,0 //如果点(100,100)的颜色为红色 Else? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?//不做任何事情 KeyPress 114,1? ?? ?? ?? ?? ? //否则,按补血快捷键F3 EndIf 二、以血条底色作为判断依据。在需要补血的地方取点判断,同样如上图绿色箭头所指示位置,如果该点为血条底色,那么表示血量已经低于安全血量,需要补血。否则不需要补血。 IfColor 100,100,000000,0 //如果点(100,100)的颜色为黑色 KeyPress 114,1? ?? ?? ?? ?? ? //按补血快捷键F3 Else? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?//否则,不做任何事情 EndIf 以上讲的是固定位置的血量比例的判断,例如我们只在血量为30%,坐标为(100,100)的地方进行判断,如果加血的位置不固定,而由用户灵活给定,由血量的数值计算出判断点坐标的方法如下: 如果血条是均匀的,假设血条开头的横坐标为a,血条末尾的横坐标为b,假设补血比例为x(0x1),那么判

文档评论(0)

wj38429 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档