说在开头
AHK网游有风险
AHK网游有风险
AHK网游有风险
AHK是什么?全名autohotkey,简单讲自动热键,可以帮你XXXX之类的...
说起来起初为了流放之路而去用的AHK,那个时候没有启明石药剂附魔,药侠玩的很难受.更别说整理背包/地雷之类的手感问题.所以就开始研究起了AHK.
经过我不断的努力(并没有),终于实现了很多以前从未设想过的功能
渐渐的有时候我开始有种错觉,写代码要比玩游戏快乐当然前提也是要代码不BUG的时候才会有的错觉.
所以就有了本期的内容
至于能写多久还是要看大家的反馈吧!
先写几期,后面有没有就看大家了.
第一期入门篇 一键喝药(热键触发/延迟/发送按键)
第二期进阶篇 一键地雷(抬起检测/循环写法/随机延迟)
第三期进阶篇2 一键选角小退/回城/藏身处 (发送文字/长按检测/双击检测)
第四期进阶篇3 自动喝药技能/按住和连点 (一键开关循环喝药/连点)
我也不想教安装呀...就算个小门槛吧~
丢个B站参考视频,讲的比较详细可以看一下.
软件代码什么的,在附件哈自己按照视频安装下
AHK作为比较好用的热键触发类型的编程语言,入门其实很简单的.我尽量讲的详细点,好让大家能尽快上手.
至于缺点的话,基本上国内网游的话属于被禁止使用的第三方软件,和按键精灵类似,有封禁风险,所以使用需谨慎.
WIN+E 打开文件资源编辑器,在查看中找到文件扩展名✔勾选
将代码复制到txt中
保存关闭
找到保存好的TXT文件,F2重命名,然后把.txt 改成 .ahk 后双击运行即可
按对应热键即可触发对应功能.
其实在现在这个版本基本已经不是地雷开荒了,在远古版本地雷就是神,俗称的"帝雷"不是吹的,还有最早期的烟雾地雷更是神技,可惜已经被DE砍废了.
原来能增加长时间的30%的移动速度,基本上在开荒中的位移技能中无人能及,基本上必带
地雷作为老牌比较墨迹的技能之一,主要还是比较繁琐的输出方式,毕竟能一键刷图,就不会按两个,所以如果能一键启动的话,那么就更舒服了.
本期就将给大家带来经典的一键D雷的讲解
本期要讲解的代码如下,可自行下载附件直接复制.
一定要看第一期打打基础一定要看第一期打打基础一定要看第一期打打基础
在地雷的使用中,我们可以回想下具体的使用流程
按下地雷技能→等待一定时间堆积地雷数→抬起地雷技能→按D(地雷引爆键)完成输出
所以我们只要通过模拟按键的方式即可完成整个动作
首先是触发热键的部分
地雷的写法很多,因为实际q按下后,就会释放技能所以不用写按下的命令,所以我们就写抬起后,触发D的命令即可
在AHK中抬起的命令可以这么写,简单易懂
q UP:: (当X键抬起时触发命令)
或者说我们不用热键触发的方式,也可以写在命令中,以再次检测的方式进行触发
KeyWait, q (当X键状态切换时触发命令)
因为如果某键位作为热键触发后,实际上这个键位本身的效果就没了,所以为了让原本的功能可以使用,我们可以在触发时候这么写
~+某键 :: (~波浪键就是让键位同时触发原本的功能和AHK触发的热键功能,$是可 以让AHK热键也触发本身的键位的命令)
所以按下地雷技能键是要这么写的
~ q ::
注意在热键::还是标签: 之后一定要➕ return 作为结束语句为结尾,这样就不会向下运行了.
sleep 延迟
上一期我们讲了sleep 延迟 的使用功能,可以让脚本等待自己设计的时间,这一次讲点进阶的命令,随机延迟
在AHK中生成随机数的命令是
Random
这个命令由,3部分组成,输出变量名,最小/最大值
在执行过程中,会在最小最大值中随机产生一个数值,并且输出到变量值中可以随时调用,很是方便
所以随机延迟的命令就是
Random, RO1, 1,100 (在1~100中随机生成一个数值,并且赋值成给RO1)
Sleep,% RO1 (sleep 命令调用RO1变量)
注意,在sleep 等等需要数值的命令中调用变量的时候需要解释,所以% 变量名 或者%变量名%都是可以使用的.
为了方便调用所以我们这边把随机延迟写成函数可以直接调用
在AHK中函数的写法是这样的,括号中的a,b之类的是可以直接传在函数中的命令中的!
函数名(a,b)
{代码....a,,,b}
所以可以这么写
我们在命令中调用时候,直接这样写
ROLL(1,100) 即可完成全套 随机延迟1~100豪秒的命令
上一期有小伙伴留言说两瓶跑速药水怎么连续使用
实际上可以把代码无限复制的话就可以连续使用了
但怎么来说比较笨,所以我们可以用AHK提供循环的命令来写
LOOP 和 settimer 来写
loop的写法是
loop,X(循环几次,不写整数的话就无限循环)
{代码..... }想要停止的话需要break 或 return 的命令
所以在本案例中我们使用循环3次去触发地雷引爆键,为什么要连续触发,是因为地雷丢的太多了的话引爆时间可以更快点,这个你可以随时就修改,并不要紧
写法是,我把引爆键改成o了,需要大家自行修改自己的按键
都是前面和第一期讲到的讲到的命令,自行理解吧.
settimer 就比较简单了
想达成无限循环的话,可以这么写,函数名()或者标签名 :
settimer,函数或者标签.负整数,0,正整数,OFF
函数或者标签对应的要执行的功能的集.
负整数,代表多少豪秒后运行一次
0,没有延迟运行一次后继续运行,无限循环
正整数,运行一次后有多少豪秒的延迟再次运行
OFF 关闭循环/OFF 关闭循环/OFF 关闭循环 (很重要)
在案例中,我们打算当地雷键抬起后,延迟一定毫秒后,自动触发引爆键
所以写法的话就是这样的
settimer 会调用之前提到的mine函数 延迟350豪秒后运行一次
整体流程就能实现了
看到这里相信大家通过的我的讲解加上自己的实操就能轻松写出,并且可以自行修改了吧
假如说你有两瓶跑速药水,如果你一键喝药的话,是不是就会浪费一瓶的效果,而且你想一直循环喝...
所以这个时候我们可以怎么写?
留个小作业吧
不会写的话可以附件查看哦
by MADAOMADAO
更新于 2023-01-04