鼠标宏设置一键压枪详细教程(鼠标宏,压枪宏详细步骤)
如果有更好的建议或者想看更多关于电子数码技术大全及相关资讯,可以多多关注茶馆百科网。
近十年来,我们的鼠标发展迅速,随着鼠标性能的提高和程序的多样化,使鼠标在完成自身功能的前提下,可以提供更多的按键和自定义功能。
如果你是FPS玩家一定听说过一个叫宏的东西,它就像一个插件软件可以让AK和M4一样稳定,那么宏就不是插件了,宏实现遥遥无期,如果我们要写宏怎么操作呢?这一次,我将讨论什么是宏,它是如何实现的,以及如何使用它。
什么是宏
宏是一种脚本和执行器。b百度Baike认为,在计算机科学中,宏是一种抽象,它根据一系列预定义的规则替换某些文本模式。这是什么意思?基本上,如果我今天将UP+4定义为将鼠标向上移动4个像素,那么我在文档中写入这个句子,程序在文档中读取这个句子并将鼠标向上移动4个像素
我现在写的文本是一个脚本,我在这里写的脚本是宏。它们的意思是一样的,就像菠萝和菠萝一样。
宏是如何实现的
宏的实现离不开软件的支持,鼠标驱动其实是符合USB协议的,比如今天的鼠标和键盘操纵杆HID设备和以前的USB都是免驱动的,而控制软件可以通过鼠标和键盘配合驱动,来实现我们需要的各种功能
刚才说了,鼠标和键盘的宏实现,无非是软件,控制软件可以间接调用驱动程序来达到目的,比如上一段说要把指针移动4个像素,因为设备的性能,我们可以让鼠标来执行脚本,脚本也可以保存到鼠标中,毕竟现在鼠标的存储空间来存储这些字符是很容易的。
当然,也可能有编译或文本压缩,类似于伪代码。
一般来说,我认为有几种形式。一是控制软件本身与驱动程序相连;另一种是控制软件本身只与鼠标通信,鼠标代表驱动软件执行。
一个真正的鼠标宏是什么样的
鼠标宏实际上看起来像程序代码,是伪代码脚本,例如罗技的All-G系列,以及支持Lua脚本的控制软件,Lua脚本是RPG和其他游戏中经常使用的脚本语言
0
拖下去,你会看到脚本的一些部分,它们很密集,不容易看到,因为它们是由控制软件读取的,所以它们看起来不像前一部分那么坚实
综上所述,罗技的配置文件在我看来由三部分组成,键名定义,鼠标配置(包括每个齿轮的DPi),灯光亮度颜色,型号,然后是脚本
如何写一个鼠标宏
鼠标宏,可能很多玩家在被嫌弃后,觉得它臭不可闻,但技术就是技术,哪里去怪人,自定义按键最早用在mmorpg中,比如WOW技能释放,可以通过击键记录的方式触发,宏提供了更高级的形式,角色释放后自动移位,不会因为是驱动层级而被检测为外部。
这里,我以G9X设备为例。考虑到软件成熟度,不选择罗技G HUB控制软件,使用罗技9.0早期版本的游戏软件。
正常的记录宏是这样的,可以实现按键记录,可以完成一系列的功能,比如输入密码,比如一键打开浏览器等等,这里的模式是板载存储模式
如果你使用Lua脚本宏,你可以做更复杂的事情,感觉“这是一个宏”。下面是一个宏的例子,我将尝试向每个人解释清楚
函数OnEvent(event, arg)
if (event=='PROFILE_ACTIVATED') then
——profile已被激活
end
end
上面这个宏,它在配置文件激活时运行,当然它不执行任何东西,它是空的,所以如果你想执行什么,我们必须给它添加一些东西。
让我们来看看一些常见的“事情”,它们在宏观环境中是事件
g_按下g系列键,定制的g系列键在罗技的键盘上大量出现
G_RELEASED G键被释放
M_PRESSED按M系列键
M_RELEASED M系列键释放
0
MOUSE_BUTTON_RELEASED释放鼠标按钮,也就是手指抬起的时候
现在让我们编写一个简单的宏来打开txt文本编辑器,但我建议您使用Windows10附带的代码编辑器并将其复制进来。
function OnEvent(event,arg)
if(event=='MOUSE_BUTTON_PRESSED' and arg==2) then
OutputLogMessage('鼠标键2被按下');
end
end
然后保存文件,非常好,现在您知道如何编写和保存宏了!这是一个很大的进步
现在,你可以打开控制软件了。为了打开强大的功能,必须设置模式,使用PC控制软件来实现该功能
进入宏编辑界面,创建配置文件。由于这是一个实验,它只会在记事本中生效
我们可以尝试将宏导入其中,但我们还没有准备好
右键单击概要文件图标,项目7,并编写一个脚本
将弹出以下窗口,我们可以在其中编辑宏
我刚刚保存了文本文件,我们来复制一下
按Ctrl+S保存宏,然后在记事本窗口中进行实验。按下鼠标右键,下面将显示一条声明,提醒我们的设置。有问号是很正常的,因为我没有字体,我这样写只是为了便于理解
当然,这里你要明白,事件+ arg的值等于指定的按钮,例如,鼠标事件+按钮对应的值等于指定的按钮,键盘G键也是一样,鼠标左键为1,右键为2,中间键为3,其他鼠标也是,至于自定义按钮,请尝试一下
然后我们可以写一些令人兴奋的东西,比如你如何用鼠标宏按枪
实际上,为了保护操作,左键不能绑定到脚本。必须将其中一个鼠标键设置为左键。您还应该注意到,在刚刚编写脚本的界面中无法识别左键。因此,我们需要重置鼠标
侧面的按钮设置了一个按钮,作为鼠标左键
鼠标左键随机设置为其他键
另一种说明这一点的方法是在C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessories中设置名为mspaint.exe的宏应用程序,它与Notepad一样经典
然后,为了识别左键,我们在脚本触发时添加一个句子
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
movemouserrelatiative(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(不是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——在键被释放时禁用down宏
OutputLogMessage('Release')
end
end
function AK()
ShotTime=0——这是左键按下的时间
repeat
if (IsMouseButtonPressed(1)) then
如果射击时间是480,那么——如果时间少于480个单位,向下移动2.5个位置
MoveMouseRelative(0, 2.5)
elseif ShotTime 2400 then——如果超过480个单位,但小于2400个单位,移动4.5个位置,增加振幅
MoveMouseRelative(0, 4.5)
0
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——在键被释放时禁用down宏
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——如果键被按下并且按键宏开关打开,则执行
如果射击时间是480,那么——如果时间少于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(不是IsOnClick)——鼠标已经抬起,退出
end
我怎么把枪换成不同的枪?我就不写了
总结
罗技宏使用的是Lua脚本,它本身很难编写和可读。当然,如果你从来没有接触过代码和脚本,它是非常困难的,至少从第一句话就会头疼,这是正常的,如果你阅读和理解,那么恭喜你,你应该属于2%的人口在我看来。是的,我想只有2%
也许你在这里还有一些疑问,比如这里的宏是不是插件,宏当然是插件,宏属于外部程序的执行,当然它比那些纯软件比如D3D叠加UI绘制透视图框,并且读取非内存的内存地址,它在某种程度上是一个硬件插件,它是由驱动程序执行的。
本文主要介绍了关于鼠标宏设置一键压枪详细教程(鼠标宏,压枪宏详细步骤)的相关养殖或种植技术,电子数码栏目还介绍了该行业生产经营方式及经营管理,关注电子数码发展动向,注重系统性、科学性、实用性和先进性,内容全面新颖、重点突出、通俗易懂,全面给您讲解电子数码技术怎么管理的要点,是您电子数码致富的点金石。
以上文章来自互联网,不代表本人立场,如需删除,请注明该网址:http://seotea.com/article/1466375.html