雷蛇標(biāo)準(zhǔn)版壓槍宏(雷蛇鼠標(biāo)宏怎么設(shè)置吃雞壓槍腳本)

    本文主要介紹雷蛇標(biāo)準(zhǔn)版壓槍宏(雷蛇鼠標(biāo)宏怎么設(shè)置吃雞壓槍腳本),下面一起看看雷蛇標(biāo)準(zhǔn)版壓槍宏(雷蛇鼠標(biāo)宏怎么設(shè)置吃雞壓槍腳本)相關(guān)資訊。
    我們的鼠標(biāo)最近十年發(fā)展很快。隨著性能的提升和方案的多樣化,鼠標(biāo)在完成自身功能的前提下,可以提供更多的按鍵和定制功能。
    如果你是fps玩家,你一定聽說過一個(gè)叫宏的東西,可以讓ak和m4像外掛軟件一樣穩(wěn)定。那么,宏是不是一個(gè)插件,宏離得很遠(yuǎn)呢?想寫一個(gè)宏應(yīng)該怎么做?這一次,我將談?wù)撌裁词呛暌约八侨绾螌?shí)現(xiàn)的。
    它是如何工作的?
    什么是宏
    什么是宏?目前我們說的宏,其實(shí)就是一個(gè)腳本,一個(gè)執(zhí)行器。百度百科上說,計(jì)算機(jī)科學(xué)中的宏是一種抽象,按照一系列預(yù)定義的規(guī)則,替換一定的文本模式。那么這句話是什么意思呢?粗略地說,
    舉個(gè)例子,今天我把短語(yǔ)“向上4”定義為鼠標(biāo)向上移動(dòng)4個(gè)像素,那么如果我在文檔中寫這句話,程序在文檔中讀這句話的時(shí)候,會(huì)向上移動(dòng)鼠標(biāo) 4個(gè)像素。
    此刻寫的文字是腳本,這里的腳本是宏。它們的意思是一樣的,就像菠蘿和鳳梨(閩南話發(fā)音為菠蘿)。
    宏是如何實(shí)現(xiàn)的?
    宏的實(shí)現(xiàn)離不開軟件的支持。鼠標(biāo)驅(qū)動(dòng)程序?qū)嶋H上符合usb協(xié)議。例如,hid設(shè)備(如鼠標(biāo)鍵盤搖桿)在當(dāng)前和以前的usb下是免驅(qū)動(dòng)的。
    控制軟件可以通過鼠標(biāo)鍵盤與驅(qū)動(dòng)程序配合,實(shí)現(xiàn)我們需要的各種功能。
    剛才說了鼠標(biāo)鍵盤的宏的實(shí)現(xiàn)無非是軟件,控制軟件通過間接調(diào)用驅(qū)動(dòng)程序就可以達(dá)到目的,比如前段提到的指針移動(dòng)4個(gè)像素,因?yàn)樵O(shè)備性能的提升,
    我們可以讓鼠標(biāo)執(zhí)行腳本,腳本也可以保存到鼠標(biāo)。畢竟現(xiàn)在把這些字符存放在鼠標(biāo)的存儲(chǔ)空間是很容易的。
    當(dāng)然也可能有編譯或者文本壓縮,類似偽代碼。
    總的來說,我個(gè)人認(rèn)為有幾種形式。一種是控制軟件本身鏈接到驅(qū)動(dòng)程序,另一種是控制軟件本身只與鼠標(biāo)通信,由其代為執(zhí)行,由驅(qū)動(dòng)程序軟件實(shí)現(xiàn)。
    實(shí)鼠標(biāo)宏呢?
    鼠標(biāo)宏實(shí)際上看起來像程序代碼,但它是偽代碼和腳本。比如羅技全線g系列,控制軟件支持lua script,這是一種經(jīng)常在rpg等游戲中使用的腳本語(yǔ)言。
    我從網(wǎng)上找了一個(gè)羅技鼠標(biāo)槍宏,作為這個(gè)例子。因?yàn)樗褂脁ml格式,所以我們可以簡(jiǎn)單地打開它。這部分圖主要是鼠標(biāo)配置文件。
    向下拖動(dòng),則會(huì)看到腳本的部分,密密麻麻的并不容易查看,因?yàn)檫@部分是交由控制軟件讀取所以就沒有前面部分有依有據(jù)的樣子
    總的來說,羅技的配置文件在我看來是以三部分組成,按鍵名稱定義,鼠標(biāo)配置c包括各檔位的dpi,燈的亮度顏色,型號(hào),然后才是腳本
    如何寫鼠標(biāo)宏
    鼠標(biāo)宏,可能很多玩家在被惡心過后,就覺得這東西臭不可聞,不過技術(shù)是技術(shù),用在哪里歸咎于人,自定義按鍵最開始的宣傳點(diǎn)是mmorpg中所用的,比如wow中技能釋放,
    可以通過按鍵記錄的方式,一鍵觸發(fā)出來,而宏則提供了更高級(jí)的形式,釋放后角色自動(dòng)位移,并且因?yàn)槭球?qū)動(dòng)層級(jí)所以不會(huì)被檢測(cè)為外掛,咳咳。
    這邊我以g9x設(shè)備為例,考慮到軟件成熟度,不選用羅技g hub控制軟件,使用早期9.0版本的logitech 游戲軟件。
    正常記錄宏是這樣的,可以實(shí)現(xiàn)鍵盤按鍵記錄,可以完成一系列功能,比如輸入密碼,比如一鍵打開瀏覽器,等等等,這里模式是板載存儲(chǔ)模式
    如果是用lua腳本的宏,就可以實(shí)現(xiàn)更復(fù)雜的功能,也讓人覺得'這才是宏',下面舉例一段宏,我也會(huì)盡量讓所有人理解
    functiononevent(event,arg)
    if(event=='profile_activated')then
    --profilehasbeenactivated
    end
    end
    上面的這一段宏,是在配置文件激活的時(shí)候運(yùn)行,當(dāng)然這一段什么功能也沒有執(zhí)行,他是空的,你如果要執(zhí)行什么我們必須要添加一些東西到里面。
    我們來認(rèn)識(shí)一下,常用的一些'事情',在宏文件中是event
    g_pressed 按下g系列的按鍵,g系列自定義鍵在羅技的鍵盤上有挺多
    g_released g按鍵釋放
    m_pressed 按下m系列的按鍵
    m_released m系列按鍵釋放
    mouse_button_ pressed 按下鼠標(biāo)按鈕
    mouse_button_released 松開鼠標(biāo)按鈕,也就是你手指抬起的時(shí)候
    現(xiàn)在我們來寫一個(gè)簡(jiǎn)單的宏,打開txt文本編輯器,當(dāng)然我更建議你使用windows10自帶的代碼編輯器,把這些復(fù)制進(jìn)去。
    function onevent(event,arg)
    if(event=='mouse_button_pressed' and arg==2) then
    outputlogmessage('鼠標(biāo)按鍵2按下了');
    end
    end
    然后保存文件,做的非常好,你現(xiàn)在已經(jīng)掌握了如何寫和保存宏了!這可是一大進(jìn)步
    現(xiàn)在,可以打開控制軟件,為了開啟強(qiáng)大的功能我們必須設(shè)置為使用pc端控制軟件來實(shí)現(xiàn)功能的模式
    進(jìn)入宏編輯界面,新建一個(gè)配置文件,因?yàn)槭菍?shí)驗(yàn)所以就先只在記事本.exe里面生效
    保存后界面如下,我們可以試試把宏導(dǎo)入進(jìn)去,當(dāng)然現(xiàn)在還沒到時(shí)候
    在配置文件圖標(biāo)處右鍵,第七項(xiàng),編寫腳本
    彈出如下窗口,可以在這里編輯我們的宏
    剛剛不是保存了文本文件嗎,復(fù)制過來看看吧
    ctrl+s保存宏然后就可以在記事本窗口下實(shí)驗(yàn)了,按動(dòng)鼠標(biāo)右鍵,下方會(huì)有提示我們?cè)O(shè)置好的語(yǔ)句。都是問號(hào)是正常的因?yàn)闆]有字庫(kù),我寫的只是為了方便理解
    當(dāng)然到這你應(yīng)該明白了,事件要再加上arg這個(gè)數(shù)值才等于指定的按鈕,比如鼠標(biāo)事件+按鈕對(duì)應(yīng)的數(shù)值,才等于具體是哪個(gè)按鈕,鍵盤g按鍵什么的也是一樣的,
    鼠標(biāo)左鍵是1,右鍵是2,中按鍵是3,其他鼠標(biāo)也是,至于自定義按鍵嘛,這個(gè)請(qǐng)自行嘗試了
    然后我們可以寫點(diǎn)激動(dòng)人心的東西,比如來理解下用鼠標(biāo)宏要怎么壓槍
    使用鼠標(biāo)宏壓槍
    其實(shí),為了保護(hù)操作,左鍵是不能綁定腳本的,鼠標(biāo)必須有一個(gè)按鍵必須被設(shè)置為左鍵,在剛剛寫腳本的界面你應(yīng)該也會(huì)發(fā)現(xiàn)不能讓左鍵被識(shí)別。也因此,我們得重新設(shè)置一下鼠標(biāo)
    側(cè)面的按鍵設(shè)置一個(gè)按鈕,作為鼠標(biāo)的左鍵
    鼠標(biāo)左鍵,就隨意設(shè)置為其他按鍵了
    另外為了方便演示,設(shè)置畫圖也就是mspaint.exe作為宏應(yīng)用程序,這個(gè)軟件簡(jiǎn)直和記事本一樣經(jīng)典,
    它的位置在c:\programdata\microsoft\windows\start menu\programs\accessories
    再然后,要讓左鍵識(shí)別,我們要在腳本觸發(fā)的時(shí)候加上一句
    enableprimarymousebuttonevents(true)
    接下來要了解幾段話,下面這一段話是在鼠標(biāo)當(dāng)前坐標(biāo)下相對(duì)進(jìn)行移動(dòng)的,x是橫向移動(dòng),y就是豎向移動(dòng)
    movemouserelative(x,y)
    1,我們可以寫一個(gè)這樣的宏,每次點(diǎn)擊鼠標(biāo)左鍵就可以讓鼠標(biāo)的坐標(biāo)向下移動(dòng)一段距離,下面這一段復(fù)制到編輯器里面可以直接看到效果
    function onevent(event, arg)
    if (event=='profile_activated') then
    enableprimarymousebuttonevents(true) --加上這句后,左鍵也可以隨便觸發(fā)腳本
    elseif event=='profile_deactivated' then
    isonclick=false
    end
    if(event=='mouse_button_pressed' and arg==1) then
    movemouserelative(0, 4) 每次點(diǎn)擊左鍵向下移動(dòng)4單位
    end
    end
    2,擴(kuò)展一下,按住鼠標(biāo)左鍵的時(shí)候,坐標(biāo)會(huì)自動(dòng)向下,松開左鍵的時(shí)候,停止,這樣一個(gè)簡(jiǎn)單的壓槍宏就完成了
    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 --按下的時(shí)候,翻轉(zhuǎn)一下,false變true
    ak --這是壓槍的函數(shù)
    end
    if (event=='mouse_button_released' and arg==1) then
    isonclick=false
    outputlogmessage('release')
    end
    end
    function ak
    repeat
    if (ismousebuttonpressed(1)) then --如果鼠標(biāo)左鍵按下了,就執(zhí)行向下移動(dòng)2.5個(gè)位置的語(yǔ)句
    movemouserelative(0, 2.5)
    sleep(30)
    end
    until(not isonclick) 按鍵沒按下,退出
    end
    隨便加的圖
    3,再擴(kuò)展一下,隨著按下時(shí)間的變化,移動(dòng)坐標(biāo)的幅度也變化,我想你們也不會(huì)去看,直接復(fù)制然后試試就行了
    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 --用于記錄鼠標(biāo)按下
    ak
    end
    if (event=='mouse_button_released' and arg==1) then
    isonclick=false --松開按鍵的時(shí)候,讓向下移動(dòng)的宏失效
    outputlogmessage('release')
    end
    end
    function ak
    shottime=0 --這里是左鍵一直按著的時(shí)間
    repeat
    if (ismousebuttonpressed(1)) then
    if shottime 480 then --時(shí)間小于480個(gè)單位的時(shí)候,向下移動(dòng)2.5個(gè)位置
    movemouserelative(0, 2.5)
    elseif shottime 2400 then --如果大于480單位,但是小于2400單位的時(shí)候,移動(dòng)4.5個(gè)位置,增大幅度
    movemouserelative(0, 4.5)
    else --其他時(shí)候,比如時(shí)間大于2400單位就移動(dòng)5.5個(gè)位置
    movemouserelative(0, 5.5)
    end
    end
    shottime=shottime + 30
    sleep(30)
    until(not isonclick)
    end
    如果要開關(guān),也就是說,有時(shí)候要用有時(shí)候不要用壓槍宏,那我們就設(shè)置一個(gè)側(cè)面的按鍵用于解決這個(gè)問題,它就用來啟用或者禁用宏
    function onevent(event, arg)
    if (event=='profile_activated') then
    enableprimarymousebuttonevents(true)
    macrostate=false --用于開關(guān)壓槍宏
    elseif event=='profile_deactivated' then
    isonclick=false
    end
    if(event=='mouse_button_pressed' and arg==1) then
    isonclick=not isonclick --用于記錄鼠標(biāo)按下
    ak
    end
    if (event=='mouse_button_released' and arg==1) then
    isonclick=false --松開按鍵的時(shí)候,讓向下移動(dòng)的宏失效
    end
    if (event=='mouse_button_pressed' and arg==5) then
    --當(dāng)你按下側(cè)邊按鍵時(shí)候,切換宏啟用的開關(guān),從而控制壓槍的啟動(dòng)的停用
    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 --這里是左鍵一直按著的時(shí)間
    repeat
    if (ismousebuttonpressed(1) and macrostate) then --如果按鍵按下了,并且壓槍宏開關(guān)是開的時(shí)候則執(zhí)行
    if shottime 480 then --時(shí)間小于480個(gè)單位的時(shí)候,向下移動(dòng)2.5個(gè)位置
    movemouserelative(0, 2.5)
    elseif shottime 2400 then --如果大于480單位,但是小于2400單位的時(shí)候,移動(dòng)4.5個(gè)位置,增大幅度
    movemouserelative(0, 4.5)
    else --其他時(shí)候,比如時(shí)間大于2400單位就移動(dòng)5.5個(gè)位置
    movemouserelative(0, 5.5)
    end
    end
    shottime=shottime + 30 --左鍵按下的持續(xù)時(shí)間在這變化,這要依據(jù)暫停時(shí)間進(jìn)行修改
    sleep(30)
    until(not isonclick) --鼠標(biāo)已經(jīng)抬起了,退出
    end
    如何切換槍械,對(duì)應(yīng)不同的槍?這個(gè)融會(huì)貫通一下就行了吧,我就不寫了
    總結(jié)羅技宏用的是lua腳本,本身編寫難度和可讀性我個(gè)人是覺得還不錯(cuò),當(dāng)然了,如果你從未接觸過代碼和腳本,那是有很大難度的,至少?gòu)牡谝痪溟_始就會(huì)頭疼,這很正常,如果你看了后理解了,
    那恭喜你,你在我的想法中應(yīng)該是屬于2%的人群,是的,我覺得能看懂的只有2%
    可能你到這里還有一些疑問,比如這里的這種宏是不是外掛,宏當(dāng)然是外掛,宏本來就屬于在執(zhí)行外部程序,當(dāng)然這比那些純軟件的比如d3d覆蓋ui繪制透視框的,還有讀取內(nèi)存地址的非內(nèi)存掛來說,可能更高級(jí)一點(diǎn),
    它一定程度來說是硬件外掛,是通過驅(qū)動(dòng)程序執(zhí)行的。

    vivo手機(jī)怎么傳送文件到電腦(vivo手機(jī)資料如何傳到電腦)
    聯(lián)想手機(jī)的恢復(fù)出廠設(shè)置密碼(聯(lián)想手機(jī)恢復(fù)出廠設(shè)置方法)
    安裝系統(tǒng)怎么安裝,電腦怎么裝系統(tǒng)啊
    win7打印機(jī)脫機(jī)狀態(tài)怎么解除(win7打印機(jī)脫機(jī)怎么重新連接)
    游戲電腦用于辦公(玩游戲的電腦適合辦公嗎)
    雷蛇標(biāo)準(zhǔn)版壓槍宏(雷蛇鼠標(biāo)宏怎么設(shè)置吃雞壓槍腳本)
    抖音里的回關(guān)是什么意思啊(抖音里的回關(guān)是什么意思呀)
    2400g核顯(amd2400g核顯相當(dāng)于什么顯卡)
    beats耳機(jī)丟了有追蹤嗎怎么找回(beats耳機(jī)丟了有定位嗎)
    小米note4怎么隱藏應(yīng)用,小米11怎么隱藏應(yīng)用
    如何裝雙硬盤雙系統(tǒng),雙硬盤雙系統(tǒng)如何安裝需詳細(xì)安裝過程
    電腦硬盤合并分區(qū)后數(shù)據(jù)全部丟失,電腦拆下來的硬盤怎么合并分區(qū)
    蘋果7電池壞了怎么辦,iphone電池壞了怎么辦
    兩塊機(jī)械硬盤怎么連到電腦上,一臺(tái)電腦怎么用兩個(gè)機(jī)械硬盤
    魅族pro5怎么設(shè)置指紋支付
    qq里字體怎么改字體大小(qq怎么修改字體大小)
    三星手機(jī)G6000怎么卡刷,三星g6000手機(jī)參數(shù)
    蘋果4airplay怎么操作,蘋果AIRPLAY怎么弄軟件還是什么看游戲里說用這個(gè)能在電視上玩
    iphone13電池容量多大(蘋果13手機(jī)電池容量多少)
    三星s5660怎么刷機(jī),S5660如何刷機(jī)啊
    主站蜘蛛池模板: 国产乱码精品一区二区三区麻豆 | 成人区人妻精品一区二区不卡网站 | 精品国产一区二区三区久 | 日韩精品久久一区二区三区| 亚洲毛片不卡av在线播放一区| 在线视频精品一区| 国产精品福利一区二区| 亚洲国产精品无码久久一区二区| 国产观看精品一区二区三区| 国产精品一区二区香蕉| 狠狠做深爱婷婷久久综合一区| 亚洲电影国产一区| 久久精品国产一区二区三区肥胖 | 天天爽夜夜爽人人爽一区二区 | 无码国产精品一区二区免费虚拟VR| 中文无码精品一区二区三区| 人妻无码一区二区三区| 一区二区三区久久精品| 亚洲片一区二区三区| 亚洲成人一区二区| 欧洲精品无码一区二区三区在线播放| 国产福利电影一区二区三区久久久久成人精品综合 | 无码夜色一区二区三区| 在线欧美精品一区二区三区| 蜜臀Av午夜一区二区三区| 亚洲国产视频一区| 亚洲AV无码一区二区大桥未久| 国产91大片精品一区在线观看| 国产一区二区三区影院| 中文字幕人妻AV一区二区| 无码日韩人妻av一区免费| 国产成人一区二区精品非洲| 精品免费AV一区二区三区| 国产伦精品一区二区免费| 国产成人久久精品一区二区三区 | 日韩最新视频一区二区三| 日韩欧美一区二区三区免费观看| 国产精品无码一区二区三区不卡| 国产一区在线视频观看| 国产美女口爆吞精一区二区| 文中字幕一区二区三区视频播放|