本文主要介绍雷蛇标准版压枪宏(雷蛇鼠标宏怎么设置吃鸡压枪脚本),下面一起看看雷蛇标准版压枪宏(雷蛇鼠标宏怎么设置吃鸡压枪脚本)相关资讯。
我们的鼠标最近十年发展很快。随着性能的提升和方案的多样化,鼠标在完成自身功能的前提下,可以提供更多的按键和定制功能。
如果你是fps玩家,你一定听说过一个叫宏的东西,可以让ak和m4像外挂软件一样稳定。那么,宏是不是一个插件,宏离得很远呢?想写一个宏应该怎么做?这一次,我将谈论什么是宏以及它是如何实现的。
它是如何工作的?
什么是宏
什么是宏?目前我们说的宏,其实就是一个脚本,一个执行器。百度百科上说,计算机科学中的宏是一种抽象,按照一系列预定义的规则,替换一定的文本模式。那么这句话是什么意思呢?粗略地说,
举个例子,今天我把短语“向上4”定义为鼠标向上移动4个像素,那么如果我在文档中写这句话,程序在文档中读这句话的时候,会向上移动鼠标 4个像素。
此刻写的文字是脚本,这里的脚本是宏。它们的意思是一样的,就像菠萝和凤梨(闽南话发音为菠萝)。
宏是如何实现的?
宏的实现离不开软件的支持。鼠标驱动程序实际上符合usb协议。例如,hid设备(如鼠标键盘摇杆)在当前和以前的usb下是免驱动的。
控制软件可以通过鼠标键盘与驱动程序配合,实现我们需要的各种功能。
刚才说了鼠标键盘的宏的实现无非是软件,控制软件通过间接调用驱动程序就可以达到目的,比如前段提到的指针移动4个像素,因为设备性能的提升,
我们可以让鼠标执行脚本,脚本也可以保存到鼠标。毕竟现在把这些字符存放在鼠标的存储空间是很容易的。
当然也可能有编译或者文本压缩,类似伪代码。
总的来说,我个人认为有几种形式。一种是控制软件本身链接到驱动程序,另一种是控制软件本身只与鼠标通信,由其代为执行,由驱动程序软件实现。
实鼠标宏呢?
鼠标宏实际上看起来像程序代码,但它是伪代码和脚本。比如罗技全线g系列,控制软件支持lua script,这是一种经常在rpg等游戏中使用的脚本语言。
我从网上找了一个罗技鼠标枪宏,作为这个例子。因为它使用xml格式,所以我们可以简单地打开它。这部分图主要是鼠标配置文件。
向下拖动,则会看到脚本的部分,密密麻麻的并不容易查看,因为这部分是交由控制软件读取所以就没有前面部分有依有据的样子
总的来说,罗技的配置文件在我看来是以三部分组成,按键名称定义,鼠标配置c包括各档位的dpi,灯的亮度颜色,型号,然后才是脚本
如何写鼠标宏
鼠标宏,可能很多玩家在被恶心过后,就觉得这东西臭不可闻,不过技术是技术,用在哪里归咎于人,自定义按键最开始的宣传点是mmorpg中所用的,比如wow中技能释放,
可以通过按键记录的方式,一键触发出来,而宏则提供了更高级的形式,释放后角色自动位移,并且因为是驱动层级所以不会被检测为外挂,咳咳。
这边我以g9x设备为例,考虑到软件成熟度,不选用罗技g hub控制软件,使用早期9.0版本的logitech 游戏软件。
正常记录宏是这样的,可以实现键盘按键记录,可以完成一系列功能,比如输入密码,比如一键打开浏览器,等等等,这里模式是板载存储模式
如果是用lua脚本的宏,就可以实现更复杂的功能,也让人觉得'这才是宏',下面举例一段宏,我也会尽量让所有人理解
functiononevent(event,arg)
if(event=='profile_activated')then
--profilehasbeenactivated
end
end
上面的这一段宏,是在配置文件激活的时候运行,当然这一段什么功能也没有执行,他是空的,你如果要执行什么我们必须要添加一些东西到里面。
我们来认识一下,常用的一些'事情',在宏文件中是event
g_pressed 按下g系列的按键,g系列自定义键在罗技的键盘上有挺多
g_released g按键释放
m_pressed 按下m系列的按键
m_released m系列按键释放
mouse_button_ pressed 按下鼠标按钮
mouse_button_released 松开鼠标按钮,也就是你手指抬起的时候
现在我们来写一个简单的宏,打开txt文本编辑器,当然我更建议你使用windows10自带的代码编辑器,把这些复制进去。
function onevent(event,arg)
if(event=='mouse_button_pressed' and arg==2) then
outputlogmessage('鼠标按键2按下了');
end
end
然后保存文件,做的非常好,你现在已经掌握了如何写和保存宏了!这可是一大进步
现在,可以打开控制软件,为了开启强大的功能我们必须设置为使用pc端控制软件来实现功能的模式
进入宏编辑界面,新建一个配置文件,因为是实验所以就先只在记事本.exe里面生效
保存后界面如下,我们可以试试把宏导入进去,当然现在还没到时候
在配置文件图标处右键,第七项,编写脚本
弹出如下窗口,可以在这里编辑我们的宏
刚刚不是保存了文本文件吗,复制过来看看吧
ctrl+s保存宏然后就可以在记事本窗口下实验了,按动鼠标右键,下方会有提示我们设置好的语句。都是问号是正常的因为没有字库,我写的只是为了方便理解
当然到这你应该明白了,事件要再加上arg这个数值才等于指定的按钮,比如鼠标事件+按钮对应的数值,才等于具体是哪个按钮,键盘g按键什么的也是一样的,
鼠标左键是1,右键是2,中按键是3,其他鼠标也是,至于自定义按键嘛,这个请自行尝试了
然后我们可以写点激动人心的东西,比如来理解下用鼠标宏要怎么压枪
使用鼠标宏压枪
其实,为了保护操作,左键是不能绑定脚本的,鼠标必须有一个按键必须被设置为左键,在刚刚写脚本的界面你应该也会发现不能让左键被识别。也因此,我们得重新设置一下鼠标
侧面的按键设置一个按钮,作为鼠标的左键
鼠标左键,就随意设置为其他按键了
另外为了方便演示,设置画图也就是mspaint.exe作为宏应用程序,这个软件简直和记事本一样经典,
它的位置在c:\programdata\microsoft\windows\start menu\programs\accessories
再然后,要让左键识别,我们要在脚本触发的时候加上一句
enableprimarymousebuttonevents(true)
接下来要了解几段话,下面这一段话是在鼠标当前坐标下相对进行移动的,x是横向移动,y就是竖向移动
movemouserelative(x,y)
1,我们可以写一个这样的宏,每次点击鼠标左键就可以让鼠标的坐标向下移动一段距离,下面这一段复制到编辑器里面可以直接看到效果
function onevent(event, arg)
if (event=='profile_activated') then
enableprimarymousebuttonevents(true) --加上这句后,左键也可以随便触发脚本
elseif event=='profile_deactivated' then
isonclick=false
end
if(event=='mouse_button_pressed' and arg==1) then
movemouserelative(0, 4) 每次点击左键向下移动4单位
end
end
2,扩展一下,按住鼠标左键的时候,坐标会自动向下,松开左键的时候,停止,这样一个简单的压枪宏就完成了
function onevent(event, arg)
if (event=='profile_activated') then
enableprimarymousebuttonevents(true)
elseif event=='profile_deactivated' then
isonclick=false --这是记录按键按下了没有的,一开始是没有
end
if(event=='mouse_button_pressed' and arg==1) then
isonclick=not isonclick --按下的时候,翻转一下,false变true
ak --这是压枪的函数
end
if (event=='mouse_button_released' and arg==1) then
isonclick=false
outputlogmessage('release')
end
end
function ak
repeat
if (ismousebuttonpressed(1)) then --如果鼠标左键按下了,就执行向下移动2.5个位置的语句
movemouserelative(0, 2.5)
sleep(30)
end
until(not isonclick) 按键没按下,退出
end
随便加的图
3,再扩展一下,随着按下时间的变化,移动坐标的幅度也变化,我想你们也不会去看,直接复制然后试试就行了
function onevent(event, arg)
if (event=='profile_activated') then
enableprimarymousebuttonevents(true)
elseif event=='profile_deactivated' then
isonclick=false
end
if(event=='mouse_button_pressed' and arg==1) then
isonclick=not isonclick --用于记录鼠标按下
ak
end
if (event=='mouse_button_released' and arg==1) then
isonclick=false --松开按键的时候,让向下移动的宏失效
outputlogmessage('release')
end
end
function ak
shottime=0 --这里是左键一直按着的时间
repeat
if (ismousebuttonpressed(1)) then
if shottime 480 then --时间小于480个单位的时候,向下移动2.5个位置
movemouserelative(0, 2.5)
elseif shottime 2400 then --如果大于480单位,但是小于2400单位的时候,移动4.5个位置,增大幅度
movemouserelative(0, 4.5)
else --其他时候,比如时间大于2400单位就移动5.5个位置
movemouserelative(0, 5.5)
end
end
shottime=shottime + 30
sleep(30)
until(not isonclick)
end
如果要开关,也就是说,有时候要用有时候不要用压枪宏,那我们就设置一个侧面的按键用于解决这个问题,它就用来启用或者禁用宏
function onevent(event, arg)
if (event=='profile_activated') then
enableprimarymousebuttonevents(true)
macrostate=false --用于开关压枪宏
elseif event=='profile_deactivated' then
isonclick=false
end
if(event=='mouse_button_pressed' and arg==1) then
isonclick=not isonclick --用于记录鼠标按下
ak
end
if (event=='mouse_button_released' and arg==1) then
isonclick=false --松开按键的时候,让向下移动的宏失效
end
if (event=='mouse_button_pressed' and arg==5) then
--当你按下侧边按键时候,切换宏启用的开关,从而控制压枪的启动的停用
if not macrostate then
outputlogmessage('switch macro on')
macrostate=not macrostate
else
outputlogmessage('switch macro off')
macrostate=not macrostate
end
end
end
function ak
shottime=0 --这里是左键一直按着的时间
repeat
if (ismousebuttonpressed(1) and macrostate) then --如果按键按下了,并且压枪宏开关是开的时候则执行
if shottime 480 then --时间小于480个单位的时候,向下移动2.5个位置
movemouserelative(0, 2.5)
elseif shottime 2400 then --如果大于480单位,但是小于2400单位的时候,移动4.5个位置,增大幅度
movemouserelative(0, 4.5)
else --其他时候,比如时间大于2400单位就移动5.5个位置
movemouserelative(0, 5.5)
end
end
shottime=shottime + 30 --左键按下的持续时间在这变化,这要依据暂停时间进行修改
sleep(30)
until(not isonclick) --鼠标已经抬起了,退出
end
如何切换枪械,对应不同的枪?这个融会贯通一下就行了吧,我就不写了
总结罗技宏用的是lua脚本,本身编写难度和可读性我个人是觉得还不错,当然了,如果你从未接触过代码和脚本,那是有很大难度的,至少从第一句开始就会头疼,这很正常,如果你看了后理解了,
那恭喜你,你在我的想法中应该是属于2%的人群,是的,我觉得能看懂的只有2%
可能你到这里还有一些疑问,比如这里的这种宏是不是外挂,宏当然是外挂,宏本来就属于在执行外部程序,当然这比那些纯软件的比如d3d覆盖ui绘制透视框的,还有读取内存地址的非内存挂来说,可能更高级一点,
它一定程度来说是硬件外挂,是通过驱动程序执行的。
vivo手机怎么传送文件到电脑(vivo手机资料如何传到电脑)
联想手机的恢复出厂设置密码(联想手机恢复出厂设置方法)
安装系统怎么安装,电脑怎么装系统啊
win7打印机脱机状态怎么解除(win7打印机脱机怎么重新连接)
游戏电脑用于办公(玩游戏的电脑适合办公吗)
雷蛇标准版压枪宏(雷蛇鼠标宏怎么设置吃鸡压枪脚本)
抖音里的回关是什么意思啊(抖音里的回关是什么意思呀)
2400g核显(amd2400g核显相当于什么显卡)
beats耳机丢了有追踪吗怎么找回(beats耳机丢了有定位吗)
小米note4怎么隐藏应用,小米11怎么隐藏应用
如何装双硬盘双系统,双硬盘双系统如何安装需详细安装过程
电脑硬盘合并分区后数据全部丢失,电脑拆下来的硬盘怎么合并分区
苹果7电池坏了怎么办,iphone电池坏了怎么办
两块机械硬盘怎么连到电脑上,一台电脑怎么用两个机械硬盘
魅族pro5怎么设置指纹支付
qq里字体怎么改字体大小(qq怎么修改字体大小)
三星手机G6000怎么卡刷,三星g6000手机参数
苹果4airplay怎么操作,苹果AIRPLAY怎么弄软件还是什么看游戏里说用这个能在电视上玩
iphone13电池容量多大(苹果13手机电池容量多少)
三星s5660怎么刷机,S5660如何刷机啊