Πώς να χρησιμοποιήσετε το AutoKey για αυτοματοποίηση παιχνιδιών Linux

How Use Autokey Automate Linux Games



AutoKey είναι ένα βοηθητικό πρόγραμμα αυτοματισμού επιφάνειας εργασίας για Linux και X11, προγραμματισμένο σε Python 3, GTK και Qt. Χρησιμοποιώντας τις λειτουργίες δέσμης ενεργειών και MACRO, μπορείτε να αυτοματοποιήσετε πατήματα πλήκτρων, κλικ του ποντικιού και τα περισσότερα μέρη μιας διεπαφής επιφάνειας εργασίας. Αν ψάχνετε για μια εναλλακτική λύση στο πρόγραμμα Windows AutoHotkey , Το AutoKey είναι η καλύτερη διαθέσιμη επιλογή σήμερα για χρήστες Linux.

Λάβετε υπόψη ότι πρόκειται μόνο για εφαρμογή X11, η υποστήριξη Wayland δεν έχει προστεθεί στην εφαρμογή κατά τη σύνταξη αυτού του άρθρου.







Μερικές από τις δυνατότητες του AutoKey είναι:



  • Υποστηρίζει συντομογραφίες που μπορούν να επεκτείνουν αυτόματα μερικούς χαρακτήρες σε οποιαδήποτε από τις συνήθεις προτάσεις και μπλοκ κειμένου.
  • Υποστηρίζει την αποστολή αυθαίρετων πληκτρολογήσεων και κλικ του ποντικιού.
  • Υποστηρίζει καθορισμό κανόνων για ένα συγκεκριμένο παράθυρο εφαρμογής.
  • Τα σενάρια Python 3 μπορούν να χρησιμοποιηθούν για τη σύνταξη κανόνων αυτοματισμού.
  • Δυνατότητα ελέγχου λειτουργιών παραθύρων όπως μεγιστοποίηση, αλλαγή μεγέθους και μετακίνηση.
  • Έρχεται με ένα σύνολο προκαθορισμένων παραδειγμάτων για ευκολότερο σενάριο.
  • Δυνατότητα εμφάνισης προσαρμοσμένων αναδυόμενων μενού με μια λίστα επιλογών.
  • Δυνατότητα εγγραφής πληκτρολογήσεων και κλικ του ποντικιού.
  • Δυνατότητα ρύθμισης πλήκτρων πρόσβασης χωρίς τροποποιητικά πλήκτρα.
  • Τα σενάρια αυτοματισμού είναι φορητά και μπορούν να μοιραστούν εύκολα με άλλους χρήστες.

Αυτός ο οδηγός θα σας δείξει μερικά παραδείγματα AutoKey που είναι χρήσιμα για παίκτες Linux. Για να ξεκινήσετε, ας εγκαταστήσουμε πακέτα Autokey Ubuntu από τη σελίδα του GitHub. Κατεβάστε τα αρχεία που αναφέρονται παρακάτω από εδώ



  • autokey-common_x.xx.x-x_all.deb
  • autokey-gtk_x.xx.x-x_all.deb ή autokey-qt_x.xx.x-x_all.deb (λήψη μόνο ενός)

Μετά τη λήψη των αρχείων, εκτελέστε τις ακόλουθες εντολές με τη σειρά:





$sudoκατάλληλοςεγκαθιστώΤο/autokey-common_0.95.8-0_all.deb
$sudoκατάλληλοςεγκαθιστώΤο/autokey-gtk_0.95.8-0_all.deb

Είναι σύνηθες να βλέπουμε πολλά παιχνίδια υπολογιστών να χρησιμοποιούν κλειδί για γρήγορη αποθήκευση και γρήγορη φόρτωση. Ωστόσο, πολλά άλλα παιχνίδια PC, ειδικά οι θύρες κονσόλας, έχουν έναν κουραστικό τρόπο για να αποθηκεύσετε το παιχνίδι όπου πρέπει να πλοηγηθείτε σε πολλές επιλογές μενού. Εδώ είναι μια γρήγορη μακέτα που έχω σχεδιάσει και το απεικονίζει αυτό (δικαιολογήστε τις ικανότητές μου στο σχέδιο):



Το παιχνίδι θέλει να πατήσετε το πλήκτρο για παύση του παιχνιδιού, στη συνέχεια το βέλος, στη συνέχεια το πλήκτρο για να αποθηκεύσετε το παιχνίδι, ακολουθούμενο από το πλήκτρο ξανά για να επιστρέψετε στο παιχνίδι. Όλη αυτή η διαδικασία μπορεί εύκολα να αυτοματοποιηθεί και να αντιστοιχιστεί στο κλειδί χρησιμοποιώντας το AutoKey. Ελέγξτε τον κωδικό δέσμης ενεργειών παρακάτω:

εισαγωγήχρόνος
keyboard.send_key('')
ώρα.κοιμηθείτε(0,25)
keyboard.send_key('')
ώρα.κοιμηθείτε(0,25)
keyboard.send_key('')
ώρα.κοιμήσου(0,25)
keyboard.send_key('')

Για να προσθέσετε αυτό το σενάριο στο AutoKey, ξεκινήστε την εφαρμογή και, στη συνέχεια, κάντε κλικ σε έναν ορατό φάκελο ή κάντε κλικ σε έναν προσαρμοσμένο φάκελο που δημιουργήσατε για να τονίσετε. Κάντε κλικ στο Αρχείο> Νέο> Σενάριο επιλογή μενού για τη δημιουργία ενός νέου σεναρίου εντός αυτού του φακέλου, όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:

Μετονομάστε αυτό το σενάριο σε Quicksave και βάλτε τον παραπάνω κώδικα μέσα σε αυτό. Στη συνέχεια, κάντε κλικ στο κουμπί Hotkey στο κάτω μέρος, όπως φαίνεται στο παρακάτω στιγμιότυπο οθόνης:

Στην επόμενη οθόνη, κάντε κλικ στο κουμπί Πατήστε για ρύθμιση και, στη συνέχεια, πατήστε το πλήκτρο για να το αντιστοιχίσετε στο σενάριο.

Κλειδί:(Κανένας)θα αλλάξει σε Κλειδί:<f5>>Το

Κάντε κλικ στο OK και πατήστε για να αποθηκεύσετε το σενάριο. Να θυμάστε πάντα να αποθηκεύετε το σενάριο, διαφορετικά δεν θα εκτελεστεί τίποτα όταν πατήσετε το αντιστοιχισμένο πλήκτρο πρόσβασης.

Το πλήκτρο πληκτρολόγησης Quicksave είναι τώρα έτοιμο για χρήση. Την επόμενη φορά που θα πατήσετε το πλήκτρο, μια σειρά πατημάτων θα εκτελεστεί με τη σειρά.

Σημειώστε ότι έχουμε αλλάξει τη λειτουργικότητα του κλειδιού σε παγκόσμιο επίπεδο σε όλο το λειτουργικό σύστημα, εφόσον το AutoKey λειτουργεί και είναι συνδεδεμένο στο δίσκο συστήματος. Για να το περιορίσετε σε ένα συγκεκριμένο παράθυρο ή εφαρμογή, θα πρέπει να καθορίσετε κανόνες παραθύρου κάνοντας κλικ στο κουμπί Φίλτρο παραθύρου στο κάτω μέρος.

Μπορείτε να χρησιμοποιήσετε το ίδιο σενάριο παραπάνω για να δημιουργήσετε ένα σενάριο για γρήγορη φόρτωση επίσης. Απλώς πρέπει να αφαιρέσετε τη γραμμή για το πλήκτρο βέλους και, στη συνέχεια, να αντιστοιχίσετε το σενάριο στο κλειδί.

Αν ψάχνετε για σωστά ονόματα κλειδιών για χρήση σε σενάρια AutoKey Python 3, μπορείτε να βρείτε μια λίστα με όλους τους ειδικούς κωδικούς -κλειδιά που μπορούν να χρησιμοποιηθούν στο AutoKey εδώ Το Οποιοδήποτε κλειδί δεν αναφέρεται στην παραπάνω σελίδα μπορεί να εισαχθεί χρησιμοποιώντας μονόκλινα ή διπλά εισαγωγικά. Παράδειγμα: keyboard.send_key (‘5’), keyboard.send_key (‘p’) και ούτω καθεξής.

Παράδειγμα 2: Πιείτε δύο φίλτρα υγείας σε σειρά σε παιχνίδι ρόλων

Αν υποθέσουμε ότι το hotkey για να πιει φίλτρο υγείας στο παιχνίδι σας είναι, το σενάριο θα είναι:

keyboard.send_key('η',επαναλαμβάνω=2)

Η τιμή της μεταβλητής επανάληψης μπορεί να αλλάξει και σε οποιονδήποτε άλλο αριθμό. Μπορείτε να ακολουθήσετε τα βήματα στο πρώτο παράδειγμα για να αντιστοιχίσετε το σενάριο στο επιθυμητό πλήκτρο πρόσβασης.

Παράδειγμα 3: Burst Mode for Gun in Shooter Game

Χρησιμοποιώντας τον παρακάτω κώδικα, μπορείτε να αντιστοιχίσετε το κλειδί για να πυροβολήσετε ένα όπλο τρεις φορές στη σειρά. Ο αρχικός τρόπος λήψης στο παιχνίδι είναι να πατήσετε μία φορά το αριστερό κλικ του ποντικιού.

# κουμπιά ποντικιού: αριστερά = 1, μεσαία = 2, δεξιά = 3
mouse.click_relative_self(0,0,1)
mouse.click_relative_self(0,0,1)
mouse.click_relative_self(0,0,1)

Το παραπάνω σενάριο θα εκτελέσει αριστερό κλικ του ποντικιού τρεις φορές στη σειρά. Μπορείτε να προσθέσετε επιπλέον δηλώσεις εάν θέλετε να εκτελέσετε αριστερό κλικ περισσότερες από τρεις φορές.

Μπορείτε να ακολουθήσετε τα βήματα στο πρώτο παράδειγμα για να αντιστοιχίσετε το σενάριο σε πλήκτρο πρόσβασης.

Παράδειγμα 4: Δημιουργήστε ένα μενού προσαρμοσμένου παιχνιδιού / Μετατρέψτε ένα παιχνίδι σε πραγματικό χρόνο σε ένα παιχνίδι με βάση τη σειρά

Χρησιμοποιώντας τη λειτουργικότητα μενού λίστας του AutoKey, θα εμφανίσουμε ένα μενού ως επικάλυψη πάνω από ένα τρέχον παιχνίδι. Αυτό το μενού θα κλέψει την εστίαση από το παιχνίδι και θα το επιστρέψει αφού εκτελεστεί ένα κλικ του ποντικιού σε ένα από τα στοιχεία του μενού. Μόλις επιστρέψει η εστίαση, θα εκτελεστεί ένα αυτόματο πάτημα πλήκτρου που επικαλείται μια λειτουργία μέσα στο παιχνίδι.

Ρίξτε μια ματιά σε αυτήν την εικόνα:

Στο φάκελο GameMenu, έχω δημιουργήσει έναν υποφάκελο που ονομάζεται Εμφάνιση. Τόσο ο φάκελος GameMenu όσο και ο φάκελος Show έχουν θυγατρικά στοιχεία. Ακολουθεί ο κωδικός που έχω βάλει μέσα σε κάθε θυγατρικό στοιχείο:

  • Απόθεμα: keyboard.send_key (‘i’)
  • Χάρτης: keyboard.send_key (‘m’)
  • Επιστροφή στο παιχνίδι: keyboard.send_key (‘’)
  • Μετάβαση σε Assault Rifle: keyboard.send_key (‘2’)
  • Μετάβαση σε SMG: keyboard.send_key (‘1’)

Εδώ ο φάκελος GameMenu είναι αντιστοιχισμένος στο κλειδί και έτσι φαίνεται μέσα στο τρέξιμο του παιχνιδιού:

Κάθε στοιχείο μενού έχει έναν αριθμό προθέματος πριν από την ετικέτα του. Μπορείτε να επικαλεστείτε οποιοδήποτε στοιχείο μενού πατώντας το αντίστοιχο αριθμητικό πλήκτρο στο πληκτρολόγιό σας. Για παράδειγμα, πατώντας το πλήκτρο εδώ θα μεταβείτε το όπλο σε τουφέκι επίθεσης.

Μια μικρή επίδειξη GIF αυτού του παραδείγματος (κάντε κλικ στην εικόνα ή κάντε δεξί κλικ και ανοίξτε το GIF σε μια νέα καρτέλα εάν η κίνηση σταματήσει παρακάτω):

Αυτή η μέθοδος ενδέχεται να μην λειτουργεί με όλα τα παιχνίδια, ανάλογα με τον τρόπο χειρισμού των παραθύρων και την απόδοση σε πλήρη οθόνη. Ορισμένα παιχνίδια δεν σταματούν όταν κλαπεί η εστίαση, ενώ άλλα. Εάν το παιχνίδι σταματήσει όταν η εστίαση χάνεται, έχετε ουσιαστικά μετατρέψει ένα παιχνίδι σε πραγματικό χρόνο σε παιχνίδι με βάση τη σειρά, χρησιμοποιώντας αυτό το σενάριο AutoKey.

Αυτό το παράδειγμα θα λειτουργήσει με παιχνίδια κατά περίπτωση. Ωστόσο, στις δοκιμές μου, έχω επιτύχει αρκετά καλά αποτελέσματα τόσο με τα φυσικά παιχνίδια όσο και με τα παιχνίδια Steam Proton / Wine.

συμπέρασμα

Όλα τα παραδείγματα που αναφέρονται εδώ είναι βασικά, κυρίως για παίκτες Linux. Καλύπτουν μόνο ένα μέρος του ισχυρού API του AutoKey. Το AutoKey μπορεί να αυτοματοποιήσει μεγάλο μέρος της ροής εργασίας σας χρησιμοποιώντας τις δυνατότητες δέσμης ενεργειών του για καθημερινό ή πολύπλοκο λογισμικό επίσης. Μερικά ακόμη παραδείγματα είναι διαθέσιμα στο επίσημη τεκμηρίωση της εφαρμογής.