Ігри

Як використовувати AutoKey для автоматизації ігор Linux

Як використовувати AutoKey для автоматизації ігор Linux
AutoKey - це утиліта автоматизації робочого столу для Linux та X11, запрограмована на Python 3, GTK та Qt. Використовуючи його сценарії та функціональність MACRO, ви можете автоматизувати натискання клавіш, клацання мишею та більшість частин інтерфейсу робочого столу. Якщо ви шукаєте альтернативу програмі Windows AutoHotkey, AutoKey - найкращий варіант, доступний сьогодні для користувачів Linux.

Зверніть увагу, що це лише програма X11, підтримка Wayland не була додана до програми на момент написання цієї статті.

Деякі функції AutoKey:

Цей посібник покаже кілька прикладів AutoKey, корисних для геймерів Linux. Для початку давайте встановимо пакети Autokey Ubuntu зі своєї сторінки GitHub. Завантажте згадані нижче файли звідси

Після завантаження файлів виконайте наступні команди по порядку:

$ sudo apt install ./ autokey-common_0.95.8-0_всі.деб
$ sudo apt install ./ autokey-gtk_0.95.8-0_всі.деб

Приклад 1: Налаштування Ключ для автоматичного збереження гри

Зазвичай можна бачити багато ігор для ПК ключ для швидкого збереження та для швидкого завантаження. Однак у багатьох інших іграх для ПК, особливо в консольних портах, є нудний спосіб зберегти гру, де вам доведеться переходити по безлічі опцій меню. Ось короткий макет, який я намалював, що ілюструє це (вибачте за мої навички малювання):

Гра хоче, щоб ти вдарив тоді призупиніть гру тоді клавіша зі стрілкою клавіша для збереження гри, після чого ще раз, щоб повернутися до гри. Весь цей процес можна легко автоматизувати та відобразити клавішу за допомогою AutoKey. Перевірте код сценарію нижче:

час імпорту
клавіатура.send_key ('')
час.спати (0.25)
клавіатура.send_key ('')
час.спати (0.25)
клавіатура.send_key ('')
час.спати (0.25)
клавіатура.send_key ('')

Щоб додати цей сценарій до AutoKey, запустіть програму, а потім клацніть на видиму папку або клацніть на створену вами спеціальну папку, щоб виділити її. Натисніть на Файл> Новий> Сценарій опція меню для створення нового сценарію всередині цієї папки, як показано на скріншоті нижче:

Перейменуйте цей скрипт на “Quicksave” і вкладіть у нього вищевказаний код. Потім натисніть кнопку «Гаряча клавіша» внизу, як показано на скріншоті нижче:

На наступному екрані натисніть кнопку “Press to Set”, а потім натисніть ключ, щоб зіставити його зі сценарієм.

“Key: (None)” зміниться на “Key: ".

Клацніть на “OK” та натисніть щоб зберегти сценарій. Завжди пам’ятайте про збереження сценарію, інакше нічого не буде виконано під час натискання відображеної гарячої клавіші.

Налаштування клавіш Quicksave готове до використання. Наступного разу, коли ти натиснеш клавіша, серія натискань клавіш буде виконана по порядку.

Зверніть увагу, що ми змінили функціонал ключ у всьому режимі ОС, доки AutoKey працює і підключений до системного лотка. Щоб обмежити його певним вікном або програмою, вам доведеться вказати правила вікна, натиснувши кнопку «Фільтр вікон» внизу.

Ви можете використовувати той самий сценарій вище, щоб також створити сценарій для швидкого завантаження. Вам просто потрібно видалити рядок для клавішу зі стрілкою, а потім зіставити сценарій ключ.

Якщо ви шукаєте правильні імена ключів для використання в сценаріях AutoKey Python 3, список усіх спеціальних кодів клавіш, що використовуються в AutoKey, можна знайти тут. Будь-який ключ, не згаданий на сторінці вище, може бути вставлений за допомогою одинарних або подвійних лапок. Приклад: клавіатура.send_key ('5'), клавіатура.send_key ('p') тощо.

Приклад 2: Випийте два зілля для здоров’я підряд у рольовій грі

Якщо припустити, що гаряча клавіша п’є зілля для здоров’я у вашій грі , сценарій буде таким:

клавіатура.send_key ('h', повтор = 2)

Значення змінної повторення також можна змінити на будь-яке інше число. Ви можете слідувати крокам у першому прикладі, щоб зіставити сценарій із потрібною гарячою клавішею.

Приклад 3: Режим серійної зйомки для пістолета в грі шутер

 

Використовуючи код нижче, ви можете скласти карту ключ для стрільби з пістолета тричі поспіль. Оригінальний спосіб стріляти в грі - один раз натиснути ліву клавішу миші.

# кнопки миші: ліва = 1, середня = 2, права = 3
миша.click_relative_self (0, 0, 1)
миша.click_relative_self (0, 0, 1)
миша.click_relative_self (0, 0, 1)

Наведений вище сценарій тричі поспіль виконає клацання лівою кнопкою миші. Додаткові оператори можна додати, якщо ви хочете виконати клацання лівою кнопкою більше трьох разів.

Ви можете слідувати крокам у першому прикладі, щоб зіставити сценарій гаряча клавіша.

Приклад 4: Створіть власне меню гри / Перетворіть гру реального часу в покрокову гру

Використовуючи функцію меню списків AutoKey, ми покажемо меню як накладення поверх запущеної гри. Це меню викраде фокус із гри та поверне його після натискання миші на один із пунктів меню. Після повернення фокусу буде виконано автоматичне натискання клавіші, яке викликає функцію всередині гри.

Погляньте на цю картинку:

У папці “GameMenu” я створив підпапку “Show”. І папка “GameMenu”, і “Show” мають дочірні елементи. Ось код, який я помістив усередині кожного дочірнього елемента:

  • Інвентар: клавіатура.send_key ('i')
  • Карта: клавіатура.send_key ('m')
  • Назад до гри: клавіатура.send_key ('')
  • Переключитися на штурмову гвинтівку: клавіатура.send_key ('2')
  • Переключіться на SMG: клавіатура.send_key ('1')

Тут відображається папка “GameMenu” і ось як це виглядає в запущеній грі:

Кожен пункт меню має номер із префіксом перед міткою. Ви можете викликати будь-який пункт меню, натиснувши відповідну цифрову клавішу на клавіатурі. Наприклад, натискання <2> клавіша тут переключить пістолет на автомат.

Невелика демонстрація GIF цього прикладу (клацніть на зображення або клацніть правою кнопкою миші та відкрийте GIF на новій вкладці, якщо анімація зупиняється нижче):

Цей спосіб може не працювати з усіма іграми, залежно від способу їх обробки віконного та повноекранного візуалізації. Деякі ігри не роблять пауз, коли фокус вкрадено, а інші роблять. Якщо гра призупиняється, коли фокус втрачається, ви по суті перетворили гру в режимі реального часу в покрокову гру за допомогою цього сценарію AutoKey.

Цей приклад буде працювати з іграми в кожному конкретному випадку. Однак під час мого тестування я досягнув досить хороших результатів як для власних ігор Steam Proton / Wine.

Висновок

Всі згадані тут приклади є базовими, головним чином для геймерів Linux. Вони охоплюють лише частину потужного API AutoKey. AutoKey може автоматизувати більшу частину вашого робочого процесу, використовуючи його функції сценарію для повсякденного або складного програмного забезпечення. Ще кілька прикладів доступні в офіційній документації програми.

Битва за Веснот 1.13.6 Розробка випущена
Битва за Веснот 1.13.6, випущений минулого місяця, є шостим випуском розробки в 1.13.x, і це забезпечує низку вдосконалень, особливо до інтерфейсу кор...
Як встановити League of Legends на Ubuntu 14.04
Якщо ви шанувальник League of Legends, то це можливість для вас тестувати League of Legends. Зверніть увагу, що LOL підтримується на PlayOnLinux, якщо...
Встановіть останню стратегічну гру OpenRA на Ubuntu Linux
OpenRA - це ігровий движок Libre / Free Real Time Strategy, який відтворює ранні ігри Вествуда, такі як класичний Command & Conquer: Red Alert. Пошире...