Kaip naudoti „AutoKey“ automatizuoti „Linux“ žaidimus

How Use Autokey Automate Linux Games



AutoKey yra „Linux“ ir „X11“ darbalaukio automatizavimo programa, užprogramuota „Python 3“, „GTK“ ir „Qt“. Naudodami scenarijus ir MACRO funkcijas, galite automatizuoti klavišų paspaudimus, pelės paspaudimus ir daugumą darbalaukio sąsajos dalių. Jei ieškote alternatyvos „Windows“ programai „AutoHotkey“ , „AutoKey“ yra geriausias šiandien prieinamas pasirinkimas „Linux“ vartotojams.

Atminkite, kad tai tik „X11“ programa, „Wayland“ palaikymas nebuvo pridėtas prie programos rašant šį straipsnį.







Kai kurios „AutoKey“ funkcijos yra šios:



  • Palaiko santrumpas, kurios gali automatiškai išplėsti kelis simbolius į bet kuriuos dažniausiai naudojamus sakinius ir teksto blokus.
  • Palaiko savavališkų klavišų paspaudimų ir pelės paspaudimų siuntimą.
  • Palaiko konkretaus programos lango taisyklių nurodymą.
  • „Python 3“ scenarijai gali būti naudojami automatikos taisyklėms rašyti.
  • Galimybė valdyti lango funkcijas, pvz., Padidinti, keisti dydį ir judėti.
  • Pateikiamas iš anksto sukonfigūruotų pavyzdžių rinkinys, kad būtų lengviau rašyti scenarijus.
  • Galimybė rodyti pasirinktinius meniu iššokančius langus su pasirinkimų sąrašu.
  • Galimybė įrašyti klavišų paspaudimus ir pelės paspaudimus.
  • Galimybė nustatyti sparčiuosius klavišus be modifikavimo klavišų.
  • Automatikos scenarijai yra nešiojami ir gali būti lengvai bendrinami su kitais vartotojais.

Šis vadovas parodys keletą „AutoKey“ pavyzdžių, naudingų „Linux“ žaidėjams. Norėdami pradėti, įdiekime „Autokey Ubuntu“ paketus iš jo „GitHub“ puslapio. Atsisiųskite toliau nurodytus failus iš čia



  • autokey-common_x.xx.x-x_all.deb
  • autokey-gtk_x.xx.x-x_all.deb arba autokey-qt_x.xx.x-x_all.deb (atsisiųsti tik vieną)

Atsisiuntę failus, vykdykite šias komandas tokia tvarka:





$sudotinkamasdiegti./autokey-common_0.95.8-0_ all.deb
$sudotinkamasdiegti./autokey-gtk_0.95.8-0_ all.deb

Įprasta matyti daugybę kompiuterinių žaidimų naudojant raktą, kad būtų galima greitai išsaugoti ir greitai įkelti. Tačiau daugelis kitų kompiuterinių žaidimų, ypač konsolės prievadai, yra nuobodus būdas išsaugoti žaidimą, kuriame turite naršyti per kelias meniu parinktis. Čia yra mano nupieštas greitas maketas, kuris tai iliustruoja (atleiskite mano piešimo įgūdžius):



Žaidimas nori, kad paspaustumėte klavišą, kad sustabdytumėte žaidimą, tada rodyklės klavišą, tada klavišą, kad išsaugotumėte žaidimą, o po to dar kartą paspauskite klavišą, kad grįžtumėte į žaidimą. Visas šis procesas gali būti lengvai automatizuotas ir susietas su raktu naudojant „AutoKey“. Peržiūrėkite žemiau esantį scenarijaus kodą:

importaslaikas
klaviatūra.siųsti_raktą('')
laikas.miegoti(0,25)
klaviatūra.siųsti_raktą('')
laikas.miegoti(0,25)
klaviatūra.siųsti_raktą('')
laikas.miegoti(0,25)
klaviatūra.siųsti_raktą('')

Norėdami pridėti šį scenarijų prie „AutoKey“, paleiskite programą, tada spustelėkite matomą aplanką arba spustelėkite jūsų sukurtą pasirinktinį aplanką, kad jį paryškintumėte. Spustelėkite Failas> Naujas> Scenarijus meniu parinktį, kad sukurtumėte naują scenarijų tame aplanke, kaip parodyta žemiau esančioje ekrano kopijoje:

Pervardykite šį scenarijų į „Quicksave“ ir įdėkite į jį aukščiau esantį kodą. Tada spustelėkite „Hotkey“ mygtuką apačioje, kaip parodyta žemiau esančioje ekrano kopijoje:

Kitame ekrane spustelėkite mygtuką Paspauskite, kad nustatytumėte, tada paspauskite klavišą, kad susietumėte jį su scenarijumi.

Raktas:(Nė vienas)pasikeis į raktą:<f5>.

Spustelėkite Gerai ir paspauskite, kad išsaugotumėte scenarijų. Visada nepamirškite išsaugoti scenarijaus, kitaip paspaudus susietą spartųjį klavišą niekas nebus vykdoma.

„Quicksave“ raktų atvaizdavimas dabar paruoštas naudoti. Kitą kartą, kai paspausite klavišą, eilė klavišų paspaudimų bus vykdoma eilės tvarka.

Atminkite, kad mes pakeitėme rakto funkcijas visame pasaulyje, kol veikia „AutoKey“ ir prijungtas prie sistemos dėklo. Jei norite apriboti tam tikrą langą ar programą, turėsite nurodyti lango taisykles spustelėdami lango filtro mygtuką apačioje.

Galite naudoti tą patį aukščiau esantį scenarijų, kad sukurtumėte ir greito įkėlimo scenarijų. Jums tereikia pašalinti rodyklės klavišo eilutę ir tada susieti scenarijų su raktu.

Jei ieškote teisingų raktų pavadinimų, kuriuos naudoti „AutoKey Python 3“ scenarijuose, galite rasti visų specialių „AutoKey“ naudojamų raktų kodų sąrašą. čia . Bet kurį raktą, nepaminėtą aukščiau esančiame puslapyje, galima įterpti naudojant vieną arba dvi kabutes. Pavyzdys: keyboard.send_key („5“), keyboard.send_key („p“) ir pan.

2 pavyzdys: vaidmenų žaidime išgerkite du sveikatos gėrimus iš eilės

Darant prielaidą, kad greitasis klavišas jūsų žaidime gers sveikatos gėrimą, scenarijus būtų toks:

klaviatūra.siųsti_raktą('h',kartoti=2)

Kartojimo kintamojo reikšmę taip pat galima pakeisti į bet kurį kitą skaičių. Jei norite susieti scenarijų su norimu sparčiuoju klavišu, galite atlikti pirmojo pavyzdžio veiksmus.

3 pavyzdys: šaudymo žaidimo ginklo sprogimo režimas

Naudodami žemiau esantį kodą, galite pažymėti klavišą šaudyti iš pistoleto tris kartus iš eilės. Originalus būdas šaudyti žaidime yra vieną kartą paspausti kairįjį pelės klavišą.

# pelės mygtukai: kairė = 1, vidurys = 2, dešinė = 3
mouse.click_relative_self(0,0,1)
mouse.click_relative_self(0,0,1)
mouse.click_relative_self(0,0,1)

Aukščiau pateiktas scenarijus tris kartus iš eilės vykdys kairįjį pelės klavišą. Jei norite spustelėti kairįjį klavišą daugiau nei tris kartus, galite pridėti papildomų teiginių.

Jei norite susieti scenarijų su sparčiuoju klavišu, galite atlikti pirmojo pavyzdžio veiksmus.

4 pavyzdys: sukurkite pasirinktinio žaidimo meniu / paverskite žaidimą realiuoju laiku žaidimu

Naudodami „AutoKey“ sąrašo meniu funkcijas, mes rodysime meniu kaip perdangą ant veikiančio žaidimo. Šis meniu pavogs žaidimo dėmesį ir grąžins jį, kai pelės klavišas bus spustelėtas ant vieno iš meniu elementų. Kai fokusas bus grąžintas, bus įvykdytas automatinis klavišo paspaudimas, kuris iškviečia žaidimo funkciją.

Pažvelkite į šią nuotrauką:

„GameMenu“ aplanke sukūriau poaplankį „Rodyti“. Tiek „GameMenu“, tiek „Show“ aplanke yra antrinių elementų. Štai kodas, kurį įdėjau į kiekvieną antrinį elementą:

  • Sąrašas: keyboard.send_key („i“)
  • Žemėlapis: keyboard.send_key („m“)
  • Grįžti į žaidimą: keyboard.send_key ('')
  • Perjungti į šautuvą: keyboard.send_key („2“)
  • Perjungti į SMG: keyboard.send_key („1“)

Čia „GameMenu“ aplankas susietas su raktu ir štai kaip jis atrodo veikiančio žaidimo viduje:

Kiekvienas meniu elementas prieš numerį turi priešdėlį. Galite iškviesti bet kurį meniu elementą paspausdami atitinkamą klaviatūros skaičių klavišą. Pavyzdžiui, paspaudus klavišą, ginklas bus perjungtas į šautuvą.

Maža šio pavyzdžio GIF demonstracija (spustelėkite animaciją arba spustelėkite paveikslėlį dešiniuoju pelės mygtuku ir atidarykite GIF naujame skirtuke):

Šis metodas gali neveikti visuose žaidimuose, atsižvelgiant į tai, kaip jie elgiasi su langais ir viso ekrano atvaizdavimu. Kai kurie žaidimai nesustoja, kai fokusas pavogtas, o kiti daro. Jei žaidimas sustoja, kai prarandamas dėmesys, iš esmės konvertavote žaidimą realiuoju laiku į žaidimą, pagrįstą ėjimais, naudodami šį „AutoKey“ scenarijų.

Šis pavyzdys veiks su žaidimais kiekvienu konkrečiu atveju. Tačiau testuodamas pasiekiau gana gerų rezultatų tiek su vietiniais, tiek su „Steam Proton / Wine“ žaidimais.

Išvada

Visi čia paminėti pavyzdžiai yra pagrindiniai, daugiausia skirti „Linux“ žaidėjams. Jie apima tik dalį galingos „AutoKey“ API. „AutoKey“ gali automatizuoti daug jūsų darbo eigos, naudodama savo scenarijų funkcijas kasdienei ar sudėtingai programinei įrangai. Dar keletas pavyzdžių rasite oficiali dokumentacija iš programos.