开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 5143|回复: 9
收起左侧

[源码分享] VB调用大漠魔域BOSS自动报警脚本

[复制链接]
发表于 2013-12-18 23:07:44 | 显示全部楼层 |阅读模式   西藏自治区拉萨市
前几天写了个魔域自动喊话,今天再给大家讲讲BOSS自动报警
首先打开VB2008新项目,保存,把大漠插件和字库放在项目保存目录的Debug目录下,
在窗体上建2个命令按钮和1个时钟、一个标签
双击打开
在CLASS FORM1里声明变量
Public dm As New Object ‘创建大漠插件对象
Public 魔域主窗口 As Integer
Public 魔域第1子窗口
As String
Public 发送窗口
As String
Public 聊天窗口
As String
在FORM1_LOAD里

Shell("regsvr32 /s dm.dll") ‘’ 注册大漠插件
dm = CreateObject("dm.dmsoft") ‘实例化大漠对象
dm.SetDict(0, "魔域字库.txt")     ‘调用字库
魔域主窗口 = dm.FindWindow("", "【魔域】") ‘查找魔域主窗口
魔域第1子窗口 = dm.EnumWindow(hwnd1, "", "#32770", 2 + 4 + 16) ‘查找魔域下第一个子窗口,可以用按键抓抓观看魔域所有窗口句柄
在Button1里
  Dim 后台绑定返回值 As Integer
        dm.movewindow(hwnd1, -2, -2)     ‘移动魔域窗口到左边,使之窗口有一小点在外面,如果是WIN7不是外面也可以后台绑定
        后台绑定返回值 = dm.BindWindow(CInt(hwnd2), "dx2", "windows", "normal", 0)   ‘后台绑定,这个不能使用小号,只有开2个魔域
        If 后台绑定返回值 = 0 Then      ‘判断绑定是否成功,成功在按钮1上显示“绑定成功”
            Button1.Text = "绑定失败"
            End
        End If
        Button1.Text = "绑定成功"
      Timer1.Enabled = True        ‘把时钟设为真
Timer1.Interval = 300               ‘300毫秒调用一次时钟程序
        Timer1.Start()                     ‘时钟开始作用
在TIMEER1里面
Dim S As String
        Dim INTX As String = Nothing
        Dim INTY As String = Nothing
        S = dm.Ocr(0, 0, 966, 686, "ffffff-000000", 1)       ‘这是查找BOSS,你要先在字库建立魔域0到9的数字和1个“级” 字库,查找后“S”的值显示为16级或 “XX级”的BOSS
        If (dm.FindStr(0, 0, 966, 686, "级", "ffffff-000000", 1, INTX, INTY)) = 0 Then    ‘魔域窗体里查找“级”的字,如果找到返回值为0,没找到为-1
            Label4.Text = S & “BOSS  ”           ‘找到后在标签上显示XX级BOSS
           BF.SoundLocation = "jin.wav"        ‘调用音乐,音乐也要放在Debug目录下
            BF.Play()                             ‘播放音乐
如果想要人物自己打BOSS那么,要看你是用F1,还是F2,或是人物右键,在后面加上
INTX = CInt(INTX) + 3               ‘将找到BOSS的X坐标转整数后延X轴加3,因为找到的“级”太靠边了
            INTY = CInt(INTY) + 98         ‘将找到BOSS的Y坐标转整数后延Y轴加98,因为找到的“级”在怪物头顶,加98后就到了怪腰间的样子
PostMessage(hwnd2, 516, 2, INTX + INTY * 65536) ' 右键按下         
            PostMessage(hwnd2, 517, 2, INTX + INTY * 65536)  ' 右键放开
            上面2个函数的意思是用右键那个技能攻JBOSS
  End If
在Button2里
Timer1.Enabled = False                 ‘设时钟为假
        Timer1.Stop()                 ‘停止时钟调用
以上是后台绑定窗口后查找BOSS,并在找到BOSS后自动打BOSS,因为魔域不能后台发送键盘按键(据个人了解,如果哪个发现能的话,请告知方法为谢),所以只能用右键技能
如果想在前台的话把绑定模式全部改成“normal”
找到怪后
PostMessage(hwnd2, 512, 2, INTX + INTY * 65536)            ‘鼠标移动到怪的位置
keybd_event(112, 0, 0, 0)                      ‘按下F1键,打怪物
      或   ‘   keybd_event(113, 0, 0, 0)        ‘或者按下F2打怪物
对了要新建个模块声明API
<DllImport("user32.dll", SetLastError:=True, CharSet:=CharSet.Auto)> _
      Public Function PostMessage(ByVal hWnd As Integer, ByVal Msg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Boolean
    End Function
今天就写到这吧,请各位高手指点

签到天数: 1 天

发表于 2020-2-9 21:45:43 | 显示全部楼层   广东省肇庆市
戲子 发表于 2015-9-17 14:23
确定不是直接扫描整图怪物?   魔域是线程接收封包的   人物可以请求获得当前地图任意坐标的地面数组

这个做不到吧,我可以飞随机找到当前地图所有地面数组
回复 支持 反对

使用道具 举报

结帖率:0% (0/4)
发表于 2017-1-20 11:23:40 | 显示全部楼层   江苏省徐州市
本人有魔域2星副本  幻界刷材料 永生 经验石 和9星辅Zhu   神boss   抢摊位 需要联系qq 3539509960
回复 支持 反对

使用道具 举报

发表于 2016-9-23 18:16:53 | 显示全部楼层   陕西省*
这样做不如按键精灵啊
回复 支持 反对

使用道具 举报

结帖率:43% (3/7)
发表于 2015-9-17 14:23:40 | 显示全部楼层   江西省吉安市
确定不是直接扫描整图怪物?   魔域是线程接收封包的   人物可以请求获得当前地图任意坐标的地面数组
回复 支持 反对

使用道具 举报

结帖率:11% (2/19)
发表于 2015-4-26 22:31:11 | 显示全部楼层   安徽省芜湖市
jinwei26 发表于 2013-12-18 23:16
hwnd2是 魔域第1子窗口 ,忘改过来了,对上面要是还不清楚的可以提问

找你找个BOOS报警器吧!联系我qq825566931  备注辅Zhu魔域
回复 支持 反对

使用道具 举报

结帖率:61% (35/57)
发表于 2014-3-7 11:17:46 | 显示全部楼层   海南省琼海市
崇拜你啊。。
回复 支持 反对

使用道具 举报

发表于 2013-12-19 09:36:10 | 显示全部楼层   广东省东莞市
这个游戏太坑爹了,不过还是蛮喜欢这个游戏!
回复 支持 反对

使用道具 举报

结帖率:100% (6/6)
发表于 2013-12-19 01:02:15 | 显示全部楼层   广东省深圳市
很多年的游戏了 游戏各种不平衡 现在基本没人玩了!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-18 23:16:34 | 显示全部楼层   西藏自治区拉萨市
hwnd2是 魔域第1子窗口 ,忘改过来了,对上面要是还不清楚的可以提问
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

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