Hvordan bruke Autokey for å automatisere Linux -spill

Hvordan bruke Autokey for å automatisere Linux -spill
Autokey er et stasjonær automatiseringsverktøy for Linux og X11, programmert i Python 3, GTK og QT. Ved hjelp av skripting og makrofunksjonalitet kan du automatisere tastaturer, museklikk og de fleste deler av et skrivebordsgrensesnitt. Hvis du leter etter et alternativ til Windows -program AutoHotkey, er Autokey det beste alternativet som er tilgjengelig i dag for Linux -brukere.

Merk at dette bare er en X11 -applikasjon, Wayland -støtte har ikke blitt lagt til søknaden i skrivende stund denne artikkelen.

Noen av Autokey -funksjonene er:

  • Støtter forkortelser som automatisk kan utvide noen få tegn til noen av dine ofte brukte setninger og tekstblokker.
  • Støtter å sende vilkårlige tastetrykk og museklikk.
  • Støtter spesifisering av regler for et spesifikt applikasjonsvindu.
  • Python 3 -skript kan brukes til å skrive automatiseringsregler.
  • Evne til å kontrollere vindusfunksjoner som å maksimere, endre størrelse og flytte.
  • Leveres med et sett med forhåndskonfigurerte eksempler for enklere skripting.
  • Evne til å vise tilpassede menypopups med en liste over valg.
  • Evne til å registrere tastetrykk og museklikk.
  • Evne til å sette hurtigtaster uten modifiserende nøkler.
  • Automatiseringsskript er bærbare og kan enkelt deles med andre brukere.

Denne guiden vil vise deg noen Autokey -eksempler som er nyttige for Linux -spillere. For å komme i gang, la oss installere Autokey Ubuntu -pakker fra GitHub -siden. Last ned filene nevnt nedenfor herfra

  • Autokey-Common_x.xx.x-x_all.Deb
  • Autokey-GTK_X.xx.x-x_all.Deb eller Autokey-QT_X.xx.x-x_all.Deb (last ned bare en)

Etter å ha lastet ned filene, kjører du følgende kommandoer i rekkefølge:

$ sudo apt installasjon ./autokey-common_0.95.8-0_all.Deb
$ sudo apt installasjon ./AUTOKEY-GTK_0.95.8-0_all.Deb

Eksempel 1: Innstilling av nøkkel for automatisk spillsparing

Det er vanlig å se mange PC -spill som bruker nøkkel for hurtigsparing og for rask lasting. Imidlertid har mange andre PC -spill, spesielt konsollporter en kjedelig måte å lagre spill der du må navigere gjennom flere menyalternativer. Her er en rask mockup jeg har tegnet som illustrerer dette (unnskyld tegneferdighetene mine):

Spillet vil at du skal treffe Key for å pause spillet, deretter Arrow Key, deretter Key for å lagre spillet, etterfulgt av Key igjen for å gå tilbake til spillet. Hele prosessen kan enkelt automatiseres og kartlegges til tast ved hjelp av Autokey. Sjekk ut skriptkoden nedenfor:

Importer tid
tastatur.send_key ('')
tid.søvn (0.25)
tastatur.send_key ('')
tid.søvn (0.25)
tastatur.send_key ('')
tid.søvn (0.25)
tastatur.send_key ('')

For å legge til dette skriptet til Autokey, kan du starte appen og deretter klikke på en synlig mappe eller klikke på en tilpasset mappe opprettet av deg for å fremheve den. Klikk på Fil> Nytt> Skript Menyalternativ for å opprette et nytt skript i den mappen, som vist på skjermdumpen nedenfor:

Gi dette skriptet til "Quicksave" og legg ovennevnte kode inni det. Klikk deretter på “Hotkey” -knappen nederst, som vist på skjermdumpen nedenfor:

På neste skjermbilde klikker du på "Trykk for å stille inn" -knappen og trykke deretter på tasten for å kartlegge den til skriptet.

“Nøkkel: (Ingen)” vil endres til “Nøkkel: ”.

Klikk på “OK” og trykk for å lagre skriptet. Husk alltid å lagre manuset, ellers blir ingenting utført når du trykker på den kartlagte hurtigtasten.

QuickSave Keymapping er nå klar til å brukes. Neste gang du trykker på tasten, vil en serie tastetrykk bli utført i orden.

Legg merke til at vi har endret funksjonaliteten til nøkkelen globalt i hele OS, så lenge Autokey kjører og kannet til systembrettet. For å begrense det til et bestemt vindu eller applikasjon, må du spesifisere vindusregler ved å klikke på "Window Filter" -knappen nederst.

Du kan bruke det samme skriptet ovenfor for å lage et skript også for rask lasting. Du må bare fjerne linjen for piletasten og deretter kartlegge skriptet til tasten.

Hvis du leter etter riktige nøkkelnavn som skal brukes i Autokey Python 3 -skript, kan du finne en liste over alle spesielle nøkkeloder som er brukbare i Autokey. Enhver nøkkel som ikke er nevnt på siden over, kan settes inn ved hjelp av enkelt- eller dobbeltsitater. Eksempel: tastatur.send_key ('5'), tastatur.send_key ('p') og så videre.

Eksempel 2: Drikk to helsedrikker på rad i et rollespill

Forutsatt at hurtigtasten skal drikke helse -potion i spillet ditt er, ville manuset være:

tastatur.send_key ('h', gjenta = 2)

Verdien på gjenta variabelen kan også endres til et hvilket som helst annet nummer. Du kan følge trinnene i det første eksemplet for å kartlegge manuset til ønsket hurtigtast.

Eksempel 3: Burst -modus for pistol i et skytterspill

Ved hjelp av koden nedenfor kan du kartlegge tasten for å skyte en pistol tre ganger på rad. Den opprinnelige måten å skyte i spillet er å trykke på venstre museklikk en gang.

# Museknapper: venstre = 1, midten = 2, høyre = 3
mus.click_relative_self (0, 0, 1)
mus.click_relative_self (0, 0, 1)
mus.click_relative_self (0, 0, 1)

Ovennevnte skript vil utføre venstre museklikk tre ganger på rad. Ekstra utsagn kan legges til hvis du vil utføre venstre klikk mer enn tre ganger.

Du kan følge trinnene i det første eksemplet for å kartlegge manuset til hurtigtast.

Eksempel 4: Lag en tilpasset spillmeny / Turn et sanntidsspill til et svingbasert spill

Ved hjelp av liste -menyfunksjonaliteten til Autokey, vil vi vise en meny som et overlegg på toppen av et løpespill. Denne menyen vil stjele fokus fra spillet og returnere det etter at et museklikk er utført på et av menyelementene. Når fokuset er returnert, vil et automatisert tastetrykk bli utført som påkaller en funksjon i spillet.

Ta en titt på dette bildet:

I "gamemenu" -mappen har jeg opprettet en undermappe som heter "show". Både "Gamemenu" og "Show" -mappen har barneartikler. Her er koden jeg har lagt inn i hvert barnelement:

  • Inventar: tastatur.send_key ('jeg')
  • Kart: tastatur.send_key ('m')
  • Tilbake til spillet: tastatur.send_key ('')
  • Bytt til angrepsrifle: tastatur.send_key ('2')
  • Bytt til SMG: tastatur.send_key ('1')

Her er "gamemenu" -mappen kartlagt til Key, og det er slik det ser ut som Inside Running Game:

Hvert menyelement har et nummer prefiks før etiketten. Du kan påkalle et hvilket som helst menyelement ved å trykke på den tilsvarende nummertasten på tastaturet. For eksempel å trykke på tasten her vil bytte pistolen til angrepsrifle.

En liten GIF -demo av dette eksemplet (klikk på bildet eller høyreklikk og åpne GIF i en ny fane hvis animasjon stopper nedenfor):

Denne metoden fungerer kanskje ikke med alle spill, avhengig av hvordan de håndterer vindus og fullskjerm-gjengivelse. Noen spill tar ikke pause når fokuset blir stjålet mens andre gjør det. Hvis spillet tar en pause når fokuset går tapt, har du i hovedsak konvertert et sanntidsspill til et svingbasert spill ved hjelp av dette Autokey -skriptet.

Dette eksemplet vil fungere med spill fra sak til sak. Imidlertid har jeg oppnådd ganske gode resultater med både native og steam proton / vinspill.

Konklusjon

Alle eksemplene som er nevnt her er grunnleggende, hovedsakelig fokusert for Linux -spillere. De dekker bare en del av Autokeys kraftige API. Autokey kan automatisere mye av arbeidsflyten din ved å bruke skriptfunksjonene for hverdagslige eller komplekse programvare også. Noen flere eksempler er tilgjengelige i den offisielle dokumentasjonen av appen.