Игры

Как использовать AutoKey для автоматизации игр под Linux

Как использовать AutoKey для автоматизации игр под Linux
AutoKey - это утилита автоматизации рабочего стола для Linux и X11, запрограммированная на Python 3, GTK и Qt. Используя его функции сценариев и MACRO, вы можете автоматизировать нажатия клавиш, щелчки мыши и большинство частей интерфейса рабочего стола. Если вы ищете альтернативу программе AutoHotkey для Windows, AutoKey - лучший вариант, доступный сегодня для пользователей Linux.

Обратите внимание, что это только приложение X11, поддержка Wayland не была добавлена ​​в приложение на момент написания этой статьи.

Некоторые из функций AutoKey:

Это руководство покажет вам несколько примеров AutoKey, которые полезны для геймеров Linux. Для начала давайте установим пакеты Autokey Ubuntu со страницы GitHub. Загрузите указанные ниже файлы отсюда

После загрузки файлов выполните следующие команды по порядку:

$ sudo apt install ./ autokey-common_0.95.8-0_all.деб
$ sudo apt install ./ autokey-gtk_0.95.8-0_all.деб

Пример 1: Настройка Ключ для автоматического сохранения игры

Часто можно увидеть, что многие компьютерные игры используют ключ для быстрого сохранения и для быстрой загрузки. Однако во многих других играх для ПК, особенно в консольных портах, есть утомительный способ сохранения игры, когда вам нужно перемещаться по нескольким параметрам меню. Вот небольшой макет, который я нарисовал, который иллюстрирует это (извините за мои навыки рисования):

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

время импорта
клавиатура.send_key ('')
время.спать (0.25)
клавиатура.send_key ('')
время.спать (0.25)
клавиатура.send_key ('')
время.спать (0.25)
клавиатура.send_key ('')

Чтобы добавить этот сценарий в AutoKey, запустите приложение, а затем щелкните видимую папку или щелкните созданную вами настраиваемую папку, чтобы выделить ее. Нажмите на Файл> Создать> Скрипт пункт меню, чтобы создать новый скрипт внутри этой папки, как показано на снимке экрана ниже:

Переименуйте этот скрипт в «Quicksave» и поместите в него приведенный выше код. Затем нажмите кнопку «Hotkey» внизу, как показано на скриншоте ниже:

На следующем экране нажмите кнопку «Нажмите, чтобы установить», а затем нажмите ключ для сопоставления его со сценарием.

«Ключ: (Нет)» изменится на «Ключ: ”.

Щелкните «ОК» и нажмите сохранить сценарий. Всегда не забывайте сохранять скрипт, иначе ничего не будет выполняться, когда вы нажимаете назначенную горячую клавишу.

Быстрое сохранение раскладки клавиатуры теперь готово к использованию. В следующий раз, когда вы нажмете клавиша, серия нажатий будет выполнена по порядку.

Обратите внимание, что мы изменили функциональность ключ глобально во всей ОС, пока AutoKey работает и закреплен на панели задач. Чтобы ограничить его конкретным окном или приложением, вам нужно будет указать правила окна, нажав кнопку «Фильтр окон» внизу.

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

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

Пример 2: выпейте два зелья здоровья подряд в ролевой игре

Предположим, что горячая клавиша для питья зелья здоровья в вашей игре , сценарий будет:

клавиатура.send_key ('ч', повторение = 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» я создал подпапку «Показать». У папок «GameMenu» и «Show» есть дочерние элементы. Вот код, который я поместил в каждый дочерний элемент:

  • Инвентарь: клавиатура.send_key ('я')
  • Карта: клавиатура.send_key ('м')
  • Назад в игру: клавиатура.send_key ('')
  • Switch to Assault Rifle: клавиатура.send_key ('2')
  • Переключиться на SMG: клавиатура.send_key ('1')

Здесь папка «GameMenu» отображается на key и вот как это выглядит внутри запущенной игры:

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

Небольшая демонстрация этого примера в формате GIF (щелкните изображение или щелкните правой кнопкой мыши и откройте GIF в новой вкладке, если анимация остановится ниже):

Этот метод может работать не со всеми играми, в зависимости от того, как они обрабатывают оконный и полноэкранный рендеринг. Некоторые игры не приостанавливаются при краже фокуса, в то время как другие делают. Если игра приостанавливается при потере фокуса, вы, по сути, преобразовали игру в реальном времени в пошаговую, используя этот скрипт AutoKey.

Этот пример будет работать с играми от случая к случаю. Однако в моем тестировании я достиг довольно хороших результатов как с родными играми, так и с играми Steam Proton / Wine.

Заключение

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

Как установить League Of Legends на Ubuntu 14.04
Если вы поклонник League of Legends, то это возможность для вас протестировать League of Legends. Обратите внимание, что LOL поддерживается в PlayOnLi...
Установите последнюю версию игры OpenRA Strategy в Ubuntu Linux
OpenRA - это игровой движок Libre / Free Real Time Strategy, воссоздающий ранние игры Westwood, такие как классическая Command & Conquer: Red Alert. Р...
Установите последнюю версию эмулятора Dolphin для Gamecube и Wii в Linux
Эмулятор Dolphin позволяет вам играть в выбранные вами игры Gamecube и Wii на персональных компьютерах (ПК) Linux. Являясь свободно доступным игровым...