AutoKey kasutamine Linuxi mängude automatiseerimiseks

How Use Autokey Automate Linux Games



AutoKey on lauaarvutite automatiseerimise utiliit Linuxile ja X11 -le, programmeeritud Python 3, GTK ja Qt. Skriptide ja MACRO funktsioonide abil saate automatiseerida klahvivajutusi, hiireklõpsu ja enamikku töölaua liidese osi. Kui otsite alternatiivi Windowsi programmile AutoHotkey , AutoKey on täna Linuxi kasutajatele parim valik.

Pange tähele, et see on ainult X11 rakendus, Waylandi tuge pole selle artikli kirjutamise ajal rakendusele lisatud.







Mõned AutoKey funktsioonid on järgmised:



  • Toetab lühendeid, mis võivad automaatselt mõne märgi laiendada mis tahes teie tavaliselt kasutatavateks lauseteks ja tekstiplokkideks.
  • Toetab suvaliste klahvivajutuste ja hiireklõpsude saatmist.
  • Toetab reeglite määramist konkreetse rakenduse akna jaoks.
  • Python 3 skripte saab kasutada automatiseerimisreeglite kirjutamiseks.
  • Võimalus juhtida akna funktsioone, nagu maksimeerimine, suuruse muutmine ja liigutamine.
  • Kaasas komplekt eelkonfigureeritud näiteid skriptimise hõlbustamiseks.
  • Võimalus kuvada kohandatud menüü hüpikuid valikute loendiga.
  • Võimalus salvestada klahvivajutusi ja hiireklõpsu.
  • Võimalus määrata kiirklahve ilma muutmisklahvideta.
  • Automatiseerimisskriptid on kaasaskantavad ja neid saab hõlpsasti teiste kasutajatega jagada.

See juhend näitab teile mõningaid AutoKey näiteid, mis on kasulikud Linuxi mängijatele. Alustuseks installime Autokey Ubuntu paketid selle GitHubi lehelt. Laadige alla allpool nimetatud failid siin



  • autokey-common_x.xx.x-x_all.deb
  • autokey-gtk_x.xx.x-x_all.deb või autokey-qt_x.xx.x-x_all.deb (laadige alla ainult üks)

Pärast failide allalaadimist käivitage järgmised käsud järgmises järjekorras:





$sudoasjakohanepaigaldada./autokey-common_0.95.8-0_all.deb
$sudoasjakohanepaigaldada./autokey-gtk_0.95.8-0_all.deb

On tavaline, et paljud arvutimängud kasutavad võtit kiireks salvestamiseks ja kiireks laadimiseks. Kuid paljudel teistel arvutimängudel, eriti konsooliportidel, on tüütu viis mängu salvestamiseks, kus peate liikuma mitme menüüvaliku vahel. Siin on minu joonistatud kiire makett, mis illustreerib seda (vabandage minu joonistusoskust):



Mäng soovib, et mängu peatamiseks vajutate klahvi, seejärel nooleklahvi, seejärel mängu salvestamiseks klahvi, millele järgneb uuesti mängu naasmiseks klahv. Kogu seda protsessi saab hõlpsalt automatiseerida ja AutoKey abil võtmeks kaardistada. Vaadake allolevat skripti koodi:

importaega
klaviatuur.saatmise_klahv('')
aeg.magama(0,25)
klaviatuur.saatmise_klahv('')
aeg.magama(0,25)
klaviatuur.saatmise_klahv('')
aeg.magama(0,25)
klaviatuur.saatmise_klahv('')

Selle skripti lisamiseks AutoKey -sse käivitage rakendus ja seejärel klõpsake nähtaval kaustal või klõpsake selle koostamiseks teie loodud kohandatud kaustal. Kliki Fail> Uus> Skript menüüst, et luua sellesse kausta uus skript, nagu on näidatud alloleval ekraanipildil:

Nimetage see skript ümber Quicksave'iks ja pange ülaltoodud kood selle sisse. Seejärel klõpsake allosas nuppu Kiirklahv, nagu on näidatud alloleval ekraanipildil:

Järgmisel ekraanil klõpsake nuppu Vajutage, et määrata ja seejärel vajutage klahvi, et see skriptiga kaardistada.

Võti:(Puudub)muutub võtmeks:<f5>.

Skripti salvestamiseks klõpsake nuppu OK ja vajutage. Ärge unustage alati skripti salvestada, vastasel juhul ei täideta kaardistatud kiirklahvi vajutamisel midagi.

Kiirklahvide võtmekaardistamine on nüüd kasutamiseks valmis. Järgmine kord, kui vajutate klahvi, täidetakse järjekorras klahvivajutusi.

Pange tähele, et oleme muutnud võtme funktsionaalsust kogu OS -is kogu maailmas, kuni AutoKey töötab ja on süsteemisalve dokitud. Selle piiramiseks konkreetse akna või rakendusega peate määrama akna reeglid, klõpsates allosas nuppu Aknafilter.

Sama skripti saate kasutada ka kiire laadimise skripti loomiseks. Peate lihtsalt eemaldama nooleklahvi joone ja seejärel skripti võtmega kaardistama.

Kui otsite õigeid võtme nimesid, mida kasutada AutoKey Python 3 skriptides, leiate kõigi AutoKey -s kasutatavate spetsiaalsete võtmekoodide loendi. siin . Kõiki ülaltoodud lehel nimetamata võtmeid saab sisestada ühe- või kahekordse jutumärgiga. Näide: keyboard.send_key (‘5’), keyboard.send_key (‘p’) ja nii edasi.

Näide 2: Jooge rollimängus järjest kaks tervisejooki

Eeldades, et kiirklahv teie mängus tervisejooki joob, on skript järgmine:

klaviatuur.saatmise_klahv('h',korrata=2)

Korduva muutuja väärtust saab muuta ka mis tahes muu numbri jaoks. Skripti vastendamiseks soovitud kiirklahviga saate järgida esimeses näites toodud samme.

Näide 3: tulirelva mängus püssi režiim

Kasutades allolevat koodi, saate kaardistada võtme kolm korda järjest tulistamiseks. Algne viis mängus pildistamiseks on vajutada hiire vasakut nuppu üks kord.

# hiire nuppu: vasak = 1, keskmine = 2, parem = 3
mouse.click_relative_self(0,0,1)
mouse.click_relative_self(0,0,1)
mouse.click_relative_self(0,0,1)

Ülaltoodud skript käivitab hiire vasaku nupu kolm korda järjest. Täiendavaid avaldusi saab lisada, kui soovite vasakklõpsu teha rohkem kui kolm korda.

Skripti kiirklahvile kaardistamiseks võite järgida esimese näite juhiseid.

Näide 4: looge kohandatud mängumenüü / muutke reaalajas mäng käigupõhiseks mänguks

Kasutades AutoKey loendimenüü funktsionaalsust, näitame menüüd ülekattena jooksva mängu peal. See menüü varastab mängult fookuse ja tagastab selle pärast ühe menüüelemendi hiireklõpsu tegemist. Kui fookus on tagastatud, käivitatakse automaatne klahvivajutus, mis kutsub esile mängu sisese funktsiooni.

Vaadake seda pilti:

Kausta GameMenu olen loonud alamkausta nimega Show. Nii kaustas GameMenu kui ka Show on alamüksused. Siin on kood, mille olen iga alamüksuse sisse pannud:

  • Inventar: keyboard.send_key („i”)
  • Kaart: keyboard.send_key ('m')
  • Tagasi mängu juurde: keyboard.send_key ('')
  • Lülitage ründerelvale: keyboard.send_key ('2')
  • Lülitu SMG -le: keyboard.send_key ('1')

Siin kaardistatakse GameMenu kaust võtmega ja see näeb välja jooksva mängu sees:

Igal menüüelemendil on ees silt ees number. Saate käivitada mis tahes menüüelemendi, vajutades klaviatuuril vastavat numbriklahvi. Näiteks siin klahvi vajutamine muudab relva ründerelvaks.

Selle näite väike GIF -demo (klõpsake pildil või paremklõpsake ja avage GIF uuel vahelehel, kui animatsioon peatub allpool):

See meetod ei pruugi kõigi mängudega töötada, sõltuvalt sellest, kuidas nad akendega ja täisekraanil renderdavad. Mõned mängud ei peatu, kui fookus on varastatud, teised aga peatuvad. Kui mäng peatub, kui fookus on kadunud, olete selle AutoKey skripti abil reaalajas mängu põhimõtteliselt omakordapõhiseks mänguks teisendanud.

See näide töötab mängudega iga juhtumi puhul eraldi. Kuid oma testimisel olen saavutanud päris häid tulemusi nii kohalike kui ka Steam Proton / Wine mängudega.

Järeldus

Kõik siin mainitud näited on põhilised, keskendudes peamiselt Linuxi mängijatele. Need hõlmavad ainult osa AutoKey võimsast API -st. AutoKey saab paljusid teie töövooge automatiseerida, kasutades oma skriptimisfunktsioone ka igapäevase või keeruka tarkvara jaoks. Veel mõned näited on lehel ametlik dokumentatsioon rakendusest.