Jak używać Autokey do automatyzacji gier Linux

Jak używać Autokey do automatyzacji gier Linux
Autokey to narzędzie automatyzacji komputerów stacjonarnych dla Linux i X11, zaprogramowane w Python 3, GTK i QT. Korzystając z jego funkcjonalności skryptowych i makro, możesz zautomatyzować naciśnięcia, kliknięcia myszy i większość części interfejsu stacjonarnego. Jeśli szukasz alternatywy dla programu Windows Autohotkey, Autokey jest najlepszą opcją dostępną dla użytkowników Linux.

Zauważ, że jest to tylko aplikacja X11, wsparcie Wayland nie zostało dodane do aplikacji w momencie pisania tego artykułu.

Niektóre z funkcji autokey to:

  • Obsługuje skróty, które mogą automatycznie rozwinąć kilka znaków na dowolne z powszechnie używanych zdań i bloków tekstowych.
  • Obsługuje wysyłanie dowolnych klawiszy i kliknięć myszy.
  • Obsługuje określenie reguł dla określonego okna aplikacji.
  • Skrypty Python 3 mogą być używane do pisania zasad automatyzacji.
  • Możliwość kontrolowania funkcji okiennych, takich jak maksymalizacja, rozmiar i poruszanie.
  • W zestawie zestaw wstępnie skonfigurowanych przykładów do łatwiejszego skryptu.
  • Możliwość wyświetlania niestandardowych okienek menu z listą opcji.
  • Możliwość nagrywania klawiszy i kliknięć myszy.
  • Możliwość ustawiania hotkeys bez klawiszy modyfikatorów.
  • Skrypty automatyzacji są przenośne i można je łatwo udostępniać innym użytkownikom.

Ten przewodnik pokaże kilka przykładów autokey, które są przydatne dla graczy Linux. Aby rozpocząć, zainstalujmy pakiety Autokey Ubuntu ze strony Github. Pobierz pliki wymienione poniżej

  • Autokey-common_x.xx.x-x_all.Deb
  • autokey-gtk_x.xx.x-x_all.Deb lub Autokey-QT_X.xx.x-x_all.Deb (pobierz tylko jeden)

Po pobraniu plików uruchom następujące polecenia w kolejności:

$ sudo apt instal ./Autokey-Common_0.95.8-0_ALL.Deb
$ sudo apt instal ./autokey-gtk_0.95.8-0_ALL.Deb

Przykład 1: Ustawienie klucza do automatycznego oszczędzania gry

Często widać wiele gier komputerowych za pomocą klucza do szybkiego oszczędzania i szybkiego ładowania. Jednak wiele innych gier na PC, zwłaszcza porty konsoli, ma żmudny sposób na zapisanie gry, w której musisz poruszać się po wielu opcjach menu. Oto szybka makieta, którą narysowałem, która to ilustruje (przepraszam moje umiejętności rysowania):

Gra chce, abyś uderzył Key, aby zatrzymać grę, a następnie Arrow Key, a następnie Key, aby zapisać grę, a następnie ponownie, aby wrócić do gry. Cały proces można łatwo zautomatyzować i mapować na klucz za pomocą Autokey. Sprawdź kod skryptu poniżej:

czas importu
klawiatura.send_key ('')
czas.spać (0.25)
klawiatura.send_key ('')
czas.spać (0.25)
klawiatura.send_key ('')
czas.spać (0.25)
klawiatura.send_key ('')

Aby dodać ten skrypt do Autokey, uruchom aplikację, a następnie kliknij widoczny folder lub kliknij niestandardowy folder utworzony przez Ciebie, aby go wyróżnić. Kliknij Plik> nowy> skrypt Opcja menu, aby utworzyć nowy skrypt w tym folderze, jak pokazano na zrzucie ekranu poniżej:

Zmień nazwę tego skryptu na „Quicksave” i umieść powyższy kod w nim. Następnie kliknij przycisk „Hotkey” na dole, jak pokazano na zrzucie ekranu poniżej:

Na następnym ekranie kliknij przycisk „Naciśnij, aby ustaw”, a następnie naciśnij klawisz, aby zmapować go do skryptu.

„Klucz: (Brak)” zmieni się na „Klucz: ".

Kliknij „OK” i naciśnij, aby zapisać skrypt. Zawsze pamiętaj, aby zapisać skrypt, inaczej nic nie zostanie wykonane po naciśnięciu zmapowanego skrótów.

Quicksave Keymapping jest teraz gotowy do użycia. Następnym razem, gdy naciśniesz klawisz, w kolejności zostanie wykonana seria nacisków klawiszowych.

Zauważ, że zmieniliśmy funkcjonalność klucza na całym świecie w całym systemie operacyjnym, o ile Autokey działa i zadokuje się na tacę systemową. Aby ograniczyć go do określonego okna lub aplikacji, musisz określić reguły okna, klikając przycisk „Filtr okna” u dołu.

Możesz użyć tego samego skryptu powyżej, aby utworzyć skrypt również do szybkiego ładowania. Wystarczy usunąć linię klawisza strzałek, a następnie zmapować skrypt na klawisz.

Jeśli szukasz poprawnych nazwisk do użycia w skryptach Autokey Python 3, można znaleźć tutaj listę wszystkich specjalnych kodów kluczowych użytecznych w Autokey. Każdy klucz nie wspomniany na powyższej stronie można wstawić za pomocą pojedynczych lub podwójnych cytatów. Przykład: klawiatura.send_key („5”), klawiatura.send_key („p”) i tak dalej.

Przykład 2: Pij dwie mikstury zdrowotne z rzędu w grze rólowej

Zakładając, że skrótem do picia mikstury zdrowotnej w grze jest to, że scenariusz brzmi:

klawiatura.send_key („h”, powtórz = 2)

Wartość zmiennej powtarzalnej można również zmienić na dowolną inną liczbę. Możesz wykonać kroki w pierwszym przykładzie, aby zmapować skrypt do żądanego skrótów skrótów.

Przykład 3: Tryb wybuchu pistoletu w grze strzelanki

Korzystając z poniższego kodu, możesz zmapować klucz do strzelania z pistoletu trzykrotnie z rzędu. Oryginalnym sposobem strzelania w grze jest naciśnięcie raz lewej myszy.

# przyciski myszy: lewy = 1, środkowy = 2, prawy = 3
mysz.Click_relave_self (0, 0, 1)
mysz.Click_relave_self (0, 0, 1)
mysz.Click_relave_self (0, 0, 1)

Powyższy skrypt wykona lewą mysz kliknij trzy razy z rzędu. Dodatkowe stwierdzenia można dodać, jeśli chcesz wykonać kliknięcie lewym więcej niż trzy razy.

Możesz wykonać kroki w pierwszym przykładzie, aby zmapować skrypt na skrótki.

Przykład 4: Utwórz niestandardowe menu gry / Przekształć grę w czasie rzeczywistym w grę opartą na turze

Korzystając z menu Funkcjonalność Autokey, pokażemy menu jako nakładkę na górę gry działającej. To menu ukradnie Focus z gry i zwróci ją po kliknięciu myszy na jednym z elementów menu. Po zwróceniu skupienia zostanie wykonane zautomatyzowane klawisze, które wywołuje funkcję w grze w grze.

Spójrz na to zdjęcie:

W folderze „GameMenu” stworzyłem podfolder o nazwie „Show”. Zarówno folder „Gamemenu”, jak i „Show” mają przedmioty dziecięce. Oto kod, który umieściłem w każdym elemencie dziecka:

  • Inwentaryzacja: klawiatura.send_key („i”)
  • Mapa: klawiatura.send_key („m”)
  • Powrót do gry: klawiatura.send_key ('')
  • Przełącz na karabin szturmowy: klawiatura.send_key („2”)
  • Przełącz na SMG: klawiatura.send_key („1”)

Tutaj folder „GameMenu” jest mapowany na Key i tak to wygląda wewnątrz gry:

Każda pozycja menu ma prefiks przed jego etykietą. Możesz wywołać dowolny element menu, naciskając odpowiedni klawisz liczby na klawiaturze. Na przykład naciśnięcie tutaj klawisza przełączy pistolet na karabin szturmowy.

Małe demo GIF tego przykładu (kliknij obraz lub kliknij prawym przyciskiem myszy i otwórz GIF w nowej karcie, jeśli animacja zatrzyma się poniżej):

Ta metoda może nie działać ze wszystkimi gier. Niektóre gry nie zatrzymują się, gdy skradzione się, podczas gdy inne. Jeśli gra zatrzymuje się, gdy skupia się na przegranej, zasadniczo przekonwertowałeś grę w czasie rzeczywistym w grę opartą na turze, korzystając z tego skryptu autokey.

Ten przykład będzie działał z grami w poszczególnych przypadkach. Jednak podczas testów osiągnąłem całkiem niezłe wyniki w grach rodzimych i parowych Proton / Wine Games.

Wniosek

Wszystkie wymienione tutaj przykłady są podstawowe, głównie skoncentrowane dla graczy Linux. Obejmują tylko część potężnego API Autokey. Autokey może zautomatyzować dużo twojego przepływu pracy, używając również funkcji scenariuszy do codziennego lub złożonego oprogramowania. W oficjalnej dokumentacji aplikacji dostępnych jest kilka kolejnych przykładów.