文档章节

网页游戏仙侠道自动拔剑工具

北风其凉
 北风其凉
发布于 2014/05/28 20:45
字数 971
阅读 68
收藏 0

1.关于本文

仙侠道自动拔剑工具是为了节省仙侠道的拔剑时间而设计的自动化工具。虽然有非常好用的《仙仙助手》辅助工具,但该辅助工具被系统检测到后会锁定玩家体力,因此我用按键精灵制作了一个拔剑工具,自动拔剑以节省时间。本工具通过识别画面指定点位的颜色来确定应不应该拔剑,今天(2014年5月28日)的仙侠道版本是R38,如果要使用本工具,复制代码后请仔细校对一遍计算出的各点坐标。

2.实现自动拔剑的方法

下图是剑山拔剑的一张图,取左上角的剑字中的一个像素为原点,计算出其他点的偏移量。每次拔剑都从高到低扫描,遇到能拔的剑就直接拔起,延迟一段时间后开始下一轮扫描。

剑字原点的寻找方法如下图所示(x:50 y:144 的那张,颜色为405D69)

在游戏中的拔剑规则为:第一次拔剑从败亡铁剑开始,每次拔一把剑,每次拔剑中,有小概率可以在下次拔更高等级的剑,否则下次能且只能拔败亡铁剑。

本脚本的拔剑策略为:每次拔剑从最高等级的剑向最低等级的剑扫描,拔等级最高的剑(也就是遇到的第一个能拔的剑)。等级最高的可拔剑上方会有黄色标记,通过该标记判断当前哪个剑可拔。

3.相关控件

刚进入程序的时候需要先单击“寻找坐标”,系统自动搜索到“剑”字的原点,并确定拔各个剑需要判断的点位。

4.脚本源码

'神仙道 剑山拔剑 自动脚本

'标记点:该拔到哪个剑时,该剑上面的标记颜色 x,y
'从1-5依次是 铁阔魔宝神 五种类型的剑
Dim signx1, signx2, signx3, signx4, signx5
Dim signy1, signy2, signy3, signy4, signy5
Dim drawx1, drawx2, drawx3, drawx4, drawx5
Dim drawy1, drawy2, drawy3, drawy4, drawy5

'事件:单击“寻找坐标”按钮
Event frmDraw.btnSearch.Click

    '“剑”字左上角,撇横之间的一个暗色
    Dim x, y
    
    '找到颜色为 "405D69" 的点
    FindColor 0, 0, 1000, 500, "405D69", x, y
    
    '再次确认点(x,y)就是要找的点
    If GetPixelColor(x - 2, y) <> "060606" Then 
        MsgBox "定位失败"
        Exit Event
    End If
    If GetPixelColor(x + 1, y) <> "79B1C9" Then 
        MsgBox "定位失败"
        Exit Event
    End If 
    
    'MoveTo x, y
    
    '败亡铁剑
    signx1 = x + 85
    signy1 = y + 327
    drawx1 = x + 94
    drawy1 = y + 371
    
    '败亡阔剑
    signx2 = x + 220
    signy2 = y + 254
    drawx2 = x + 216
    drawy2 = y + 317
    
    '败亡魔剑
    signx3 = x + 339
    signy3 = y + 194
    drawx3 = x + 323
    drawy3 = y + 258
    
    '败亡宝剑
    signx4 = x + 97
    signy4 = y + 144
    drawx4 = x + 112
    drawy4 = y + 206
    
    '败亡神剑
    signx5 = x + 201
    signy5 = y + 5
    drawx5 = x + 208
    drawy5 = y + 81

    MsgBox "坐标寻找完毕,可以开始拔剑了"
    
    '坐标寻找完毕,可以开始拔剑了
    '下面这句话要写两次,具体原因我也不知道。。。
    frmDraw.btnDraw.Enabled = True
    frmDraw.btnDraw.Enabled = True 

    '初始化随机数生成器
    Randomize

End Event

'事件:单击“开始拔剑”按钮
Event frmDraw.btnDraw.Click

    Dim counter
    counter = frmDraw.ipbCount.Text
    
    '开始拔剑,次数由输入框 frmDraw.ipbCount 指定
    Do
        
        '从高级剑开始检测,如果哪个剑上方有黄色标识则拔起该剑
        If GetPixelColor(signx5, signy5) = "00C7FA" Then 
            MoveTo drawx5, drawy5
            LeftClick 1
            Goto COMPLETE
        End If
        If GetPixelColor(signx4, signy4) = "00C7FA" Then 
            MoveTo drawx4, drawy4
            LeftClick 1
            Goto COMPLETE
        End If
        If GetPixelColor(signx3, signy3) = "00C7FA" Then 
            MoveTo drawx3, drawy3
            LeftClick 1
            Goto COMPLETE
        End If
        If GetPixelColor(signx2, signy2) = "00C7FA" Then 
            MoveTo drawx2, drawy2
            LeftClick 1
            Goto COMPLETE
        End If
        If GetPixelColor(signx1, signy1) = "00C7FA" Then 
            MoveTo drawx1, drawy1
            LeftClick 1
            Goto COMPLETE
        End If    
        
        Rem COMPLETE
        
        '延时一个随机的时间(1-2秒)
        Delay 1000 + Int((1000 * Rnd) + 1)
        
        counter = counter - 1
    
    Loop Until counter = 0
    
    MsgBox "拔剑完毕!"

End Event

END

© 著作权归作者所有

北风其凉

北风其凉

粉丝 119
博文 498
码字总数 463468
作品 4
朝阳
程序员
私信 提问
期待手机用户,电脑用户,网页用户混战的大型网游平台的诞生

WEB游戏 SNS : 开心农场 已经火了好一阵的开心农场,上班族玩的乐不思蜀,呵呵 看来还是网民力量大 开心农场是用flash编写的一些互动的小游戏,和很多类似的WEB游戏不同之处,是融合在自己的...

大猪
2010/04/07
211
0
周末放松一下 —— 用浏览器玩中文 DOS 游戏

三国志、仙剑奇侠传、金庸群侠传、大航海时代、三国演义……周末既然宅在家,不如重温一波这些经典的中文 DOS 游戏吧~!

局长
2018/09/08
14
0
广州【要玩娱乐】诚聘 IOS手游开发程序员

岗位职责: 负责iOS平台手机客户端软件的研发和维护。 岗位要求: 1. 具有1年以上iPhone(或者Mac)开发经验,熟悉iOS架构,有android游戏开发经验者也可; 2. 具有 Objective-C 编程经验,熟练...

yaowanyf
2012/05/11
584
9
正在刷屏的“养鲲游戏”,光凭盗图,竟然还能火?

从年后开始,在各大网络平台和App的广告推荐位上,开始频繁出现“鲲”的身影。 “开局一条鲲,进化全靠吞!”、“进化失败,竟渡劫骨鲲”、“噬鲲、巨猿”、“鲲只排名第三、霸王以鲲为食”…...

张书乐
2018/07/04
0
0
.net可以开发Android和iOS了!已经成为事实!

很多初学者误以为Android、IOS开发只能使用Java、ObjectC等语言进行开发,其实借助于Mono技术我们可以使用C#/.Net编写Android、IOS程序。由于C#的高效开发和Mono的完美跨平台,这项技术目前已...

八一戒
2013/06/10
42K
19

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周四乱弹 —— 当你简历注水但还是找到了工作

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @花间小酌 :#今日歌曲推荐# 分享成龙的单曲《男儿当自强》。 《男儿当自强》- 成龙 手机党少年们想听歌,请使劲儿戳(这里) @hxg2016 :刚在...

小小编辑
今天
2.7K
22
靠写代码赚钱的一些门路

作者 @mezod 译者 @josephchang10 如今,通过自己的代码去赚钱变得越来越简单,不过对很多人来说依然还是很难,因为他们不知道有哪些门路。 今天给大家分享一个精彩的 GitHub 库,这个库整理...

高级农民工
昨天
3
0
用好项目管理工具,人人都可以成为项目经理

现在市面上的项目管理工具越来越多了,但是大多数都是一些协同工具或轻量项目管理工具。如果是多团队、跨部门使用或者企业级的项目管理,从管理思想到工具运用,需要适应企业的业务流程体系,...

cs平台
昨天
12
0
只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
昨天
69
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
昨天
32
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部