Kako uporabiti AutoKey za avtomatizacijo iger Linux

How Use Autokey Automate Linux Games



AutoKey je namizni avtomatizacijski pripomoček za Linux in X11, programiran v Pythonu 3, GTK in Qt. S svojim skriptiranjem in funkcijo MACRO lahko avtomatizirate pritiske tipk, klike miške in večino delov namiznega vmesnika. Če iščete alternativo programu Windows AutoHotkey , AutoKey je danes najboljša možnost za uporabnike Linuxa.

Upoštevajte, da je to samo aplikacija X11, Waylandova podpora v času pisanja tega članka ni bila dodana.







Nekatere funkcije AutoKey so:



  • Podpira okrajšave, ki lahko samodejno razširijo nekaj znakov v katerega koli od pogosto uporabljanih stavkov in besedilnih blokov.
  • Podpira pošiljanje poljubnih pritiskov tipk in klikov miške.
  • Podpira določanje pravil za določeno okno aplikacije.
  • Skripte Python 3 lahko uporabite za pisanje pravil avtomatizacije.
  • Sposobnost nadzora okenskih funkcij, kot so povečanje, spreminjanje velikosti in premikanje.
  • Prihaja z naborom vnaprej konfiguriranih primerov za lažje skriptiranje.
  • Možnost prikaza pojavnih oken menija po meri s seznamom možnosti.
  • Sposobnost snemanja pritiskov tipk in klikov miške.
  • Možnost nastavitve bližnjičnih tipk brez modifikacijskih tipk.
  • Skripti za avtomatizacijo so prenosni in jih je mogoče preprosto deliti z drugimi uporabniki.

Ta priročnik vam bo pokazal nekaj primerov AutoKey, ki so uporabni za igralce Linuxa. Za začetek namestimo pakete Autokey Ubuntu s strani GitHub. Spodaj navedene datoteke prenesite iz tukaj



  • autokey-common_x.xx.x-x_all.deb
  • autokey-gtk_x.xx.x-x_all.deb ali autokey-qt_x.xx.x-x_all.deb (prenesite samo enega)

Po prenosu datotek zaženite naslednje ukaze:





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

Pogosto je videti veliko računalniških iger, ki uporabljajo ključ za hitro shranjevanje in hitro nalaganje. Vendar pa imajo številne druge računalniške igre, zlasti konzolna vrata, dolgočasen način za shranjevanje igre, kjer se morate pomikati po več možnostih menija. Tukaj je hitra risba, ki sem jo narisal (oprostite mi risarske sposobnosti):



Igra želi, da pritisnete tipko za zaustavitev igre, nato puščično tipko, nato tipko za shranjevanje igre, nato pa še tipko za vrnitev v igro. Celoten postopek je mogoče enostavno avtomatizirati in preslikati v ključ s pomočjo AutoKey. Oglejte si spodnjo kodo skripta:

uvozčas
tipkovnica.send_key('')
čas.spi(0,25)
tipkovnica.send_key('')
čas.spi(0,25)
tipkovnica.send_key('')
čas.spi(0,25)
tipkovnica.send_key('')

Če želite ta skript dodati v AutoKey, zaženite aplikacijo in nato kliknite na vidno mapo ali kliknite na mapo po meri, ki ste jo ustvarili, da jo označite. Kliknite na Datoteka> Novo> Skript možnost menija za ustvarjanje novega skripta v tej mapi, kot je prikazano na spodnjem posnetku zaslona:

Preimenujte ta skript v Quicksave in vanj vnesite zgornjo kodo. Nato kliknite gumb Hotkey na dnu, kot je prikazano na spodnjem posnetku zaslona:

Na naslednjem zaslonu kliknite gumb Pritisnite za nastavitev in nato pritisnite tipko, da jo preslikate v skript.

Ključ:(Nobena)spremeni v ključ:<f5>.

Kliknite V redu in pritisnite, da shranite skript. Vedno ne pozabite shraniti skripta, sicer ne pritisnete ničesar, ko pritisnete preslikano bližnjico.

Preslikava tipk Quicksave je zdaj pripravljena za uporabo. Naslednjič, ko pritisnete tipko, se zaporedoma izvede vrsta pritiskov tipk.

Upoštevajte, da smo globalno spremenili funkcionalnost ključa v celotnem operacijskem sistemu, dokler je AutoKey zagnan in priklopljen na sistemsko ploščo. Če ga želite omejiti na določeno okno ali aplikacijo, morate določiti pravila oken s klikom na gumb Window Filter na dnu.

Z istim zgornjim skriptom lahko ustvarite tudi skript za hitro nalaganje. Odstraniti morate le vrstico za puščično tipko in nato preslikati skript v ključ.

Če iščete pravilna imena ključev za uporabo v skriptah AutoKey Python 3, lahko najdete seznam vseh posebnih kod ključev, ki jih je mogoče uporabiti v programu AutoKey tukaj . Vsak ključ, ki ni omenjen na zgornji strani, je mogoče vstaviti z enojnimi ali dvojnimi narekovaji. Primer: keyboard.send_key ('5'), keyboard.send_key ('p') itd.

Primer 2: Popijte dva zdrava napitka v vrsti v igri vlog

Ob predpostavki, da je bližnjica za pitje zdravja v vaši igri, bi bil scenarij naslednji:

tipkovnica.send_key('h',ponovite=2)

Vrednost ponovljive spremenljivke lahko spremenite tudi v katero koli drugo številko. Za preslikavo skripta na želeno bližnjico lahko sledite korakom v prvem primeru.

Primer 3: Način rafala za pištolo v strelski igri

S spodnjo kodo lahko preslikate ključ, da trikrat zapored streljate s pištolo. Prvotni način streljanja v igri je, da enkrat pritisnete levi gumb miške.

# gumbov miške: levo = 1, sredina = 2, desno = 3
mouse.click_relative_self(0,0,1)
mouse.click_relative_self(0,0,1)
mouse.click_relative_self(0,0,1)

Zgornji skript bo trikrat zapored izvedel levi klik miške. Dodatne izjave lahko dodate, če želite levi klik izvajati več kot trikrat.

Za preslikavo skripta v bližnjico lahko sledite korakom v prvem primeru.

Primer 4: Ustvarite meni igre po meri / spremenite igro v realnem času v igro po vrsti

S funkcijo menija seznama programa AutoKey bomo meni prikazali kot prekrivanje na vrhu igre, ki se izvaja. Ta meni bo ukradel fokus igre in ga vrnil po kliku miške na eno od postavk menija. Ko se fokus vrne, se izvede samodejni pritisk tipke, ki prikliče funkcijo v igri.

Oglejte si to sliko:

V mapi GameMenu sem ustvaril podmapo Show. Mapa GameMenu in Show imata podrejene elemente. Tu je koda, ki sem jo vnesel v vsak podrejeni predmet:

  • Zaloga: keyboard.send_key ('i')
  • Zemljevid: keyboard.send_key ('m')
  • Nazaj na igro: keyboard.send_key (‘’)
  • Preklopi na jurišno puško: keyboard.send_key ('2')
  • Preklopi na SMG: keyboard.send_key ('1')

Tukaj je mapa GameMenu preslikana v ključ in tako izgleda v teku igre:

Vsak element menija ima pred oznako predpono. S pritiskom na ustrezno številčno tipko na tipkovnici lahko prikličete kateri koli element menija. Na primer, če tukaj pritisnete tipko, boste pištolo preusmerili v jurišno puško.

Majhen predstavitev GIF tega primera (kliknite sliko ali desni klik in odprite GIF na novem zavihku, če se animacija spodaj ustavi):

Ta metoda morda ne bo delovala z vsemi igrami, odvisno od načina obdelave oken in celozaslonskega upodabljanja. Nekatere igre se ne ustavijo, ko se ukrade fokus, druge pa. Če se igra ustavi, ko se izgubi fokus, ste s tem skriptom AutoKey v bistvu pretvorili igro v realnem času v igro po vrsti.

Ta primer bo deloval z igrami za vsak primer posebej. Vendar sem pri testiranju dosegel precej dobre rezultate tako z domačimi kot s Steam Proton / Wine igrami.

Zaključek

Vsi tukaj omenjeni primeri so osnovni, namenjeni predvsem igralcem Linuxa. Zajemajo le del zmogljivega API -ja AutoKey. AutoKey lahko avtomatizira veliko vašega delovnega toka s svojimi skriptnimi funkcijami tudi za vsakodnevno ali zapleteno programsko opremo. Še nekaj primerov je na voljo v uradna dokumentacija aplikacije.