Игри

Как да използвам 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“ и поставете горния код вътре в него. След това кликнете върху бутона „Hotkey“ в долната част, както е показано на екранната снимка по-долу:

На следващия екран щракнете върху бутона „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: Burst Mode за Gun в Shooter Game

 

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

# бутони на мишката: ляво = 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 ('')
  • Превключете на Assault Rifle: клавиатура.send_key ('2')
  • Превключете на SMG: клавиатура.send_key ('1')

Тук се съпоставя папката „GameMenu“ ключ и ето как изглежда в играта, която се изпълнява:

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

Малка демонстрация на GIF от този пример (щракнете върху изображението или щракнете с десния бутон и отворете GIF в нов раздел, ако анимацията спира по-долу):

Този метод може да не работи с всички игри, в зависимост от начина, по който те се справят с прозоречно и визуализиране на цял екран. Някои игри не спират, когато фокусът е откраднат, докато други го правят. Ако играта спре на пауза, когато фокусът е загубен, вие по същество сте превърнали игра в реално време в игра на свой ред, използвайки този скрипт AutoKey.

Този пример ще работи с игри за всеки отделен случай. По време на тестването си обаче постигнах доста добри резултати както с родните, така и с Steam Proton / Wine игрите.

Заключение

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

OpenTTD срещу Simutrans
Създаването на собствена транспортна симулация може да бъде забавно, релаксиращо и изключително примамливо. Ето защо трябва да сте сигурни, че изпробв...
Урок за OpenTTD
OpenTTD е една от най-популярните бизнес симулационни игри там. В тази игра трябва да създадете прекрасен транспортен бизнес. Въпреки това, ще започне...
SuperTuxKart за Linux
SuperTuxKart е страхотно заглавие, създадено да ви предостави безплатно изживяването на Mario Kart във вашата Linux система. Играта е доста предизвика...