Cómo usar Autokey para automatizar los juegos de Linux

Cómo usar Autokey para automatizar los juegos de Linux
Autokey es una utilidad de automatización de escritorio para Linux y X11, programada en Python 3, GTK y QT. Usando su funcionalidad de secuencia de comandos y macro, puede automatizar KeyPresses, clics del mouse y la mayoría de las partes de una interfaz de escritorio. Si está buscando una alternativa al programa de Windows Autohotkey, Autokey es la mejor opción disponible hoy para los usuarios de Linux.

Tenga en cuenta que esta es solo una aplicación X11, el soporte de Wayland no se ha agregado a la aplicación al momento de escribir este artículo.

Algunas de las características de autokey son:

  • Admite abreviaturas que pueden expandir automáticamente algunos caracteres en cualquiera de sus oraciones y bloques de texto comúnmente utilizados.
  • Admite el envío de pulsaciones arbitrarias y clics del mouse.
  • Admite especificar reglas para una ventana de aplicación específica.
  • Los scripts de Python 3 se pueden usar para escribir reglas de automatización.
  • Capacidad para controlar las funciones de la ventana como maximizar, cambiar el tamaño y el movimiento.
  • Viene con un conjunto de ejemplos preconfigurados para scripting más fácil.
  • Capacidad para mostrar ventanas emergentes de menú personalizadas con una lista de opciones.
  • Capacidad para grabar pulsaciones de teclas y clics del mouse.
  • Capacidad para configurar teclas de acceso rápido sin teclas modificadoras.
  • Los scripts de automatización son portátiles y se pueden compartir fácilmente con otros usuarios.

Esta guía le mostrará algunos ejemplos de autokey que son útiles para los jugadores de Linux. Para comenzar, instalemos paquetes de Ubuntu de autokey desde su página de GitHub. Descargue los archivos mencionados a continuación desde aquí

  • autokey-common_x.xx.X-x_all.debutante
  • autokey-gtk_x.xx.X-x_all.Deb o Autokey-QT_X.xx.X-x_all.Deb (descargar solo uno)

Después de descargar los archivos, ejecute los siguientes comandos en orden:

$ sudo apt instalación ./Autokey-Common_0.95.8-0_ de todos.debutante
$ sudo apt instalación ./Autokey-GTK_0.95.8-0_ de todos.debutante

Ejemplo 1: Clave de configuración para el ahorro de juegos automáticos

Es común ver muchos juegos de PC usando la tecla para guardar rápido y para una carga rápida. Sin embargo, muchos otros juegos de PC, especialmente los puertos de consola, tienen una forma tediosa de guardar el juego donde tienes que navegar a través de múltiples opciones de menú. Aquí hay una maqueta rápida que he dibujado que ilustra esto (disculpe mis habilidades de dibujo):

El juego quiere que presionas la tecla para pausar el juego, luego Arrow Key, luego Key para guardar el juego, seguido de una clave nuevamente para volver al juego. Todo este proceso se puede automatizar y asignar fácilmente a la clave utilizando Autokey. Consulte el código de script a continuación:

tiempo de importación
teclado.tecla Enviar('')
tiempo.dormir (0.25)
teclado.tecla Enviar('')
tiempo.dormir (0.25)
teclado.tecla Enviar('')
tiempo.dormir (0.25)
teclado.tecla Enviar('')

Para agregar este script a autokey, inicie la aplicación y luego haga clic en una carpeta visible o haga clic en una carpeta personalizada creada por usted para resaltarla. Haga clic en Archivo> Nuevo> Script Opción de menú para crear un nuevo script dentro de esa carpeta, como se muestra en la captura de pantalla a continuación:

Cambie el nombre de este script a "Quicksave" y coloque el código anterior dentro de él. Luego haga clic en el botón "Hotkey" en la parte inferior, como se muestra en la captura de pantalla a continuación:

En la pantalla siguiente, haga clic en el botón "Presione para establecer" y luego presione la tecla para asignarla al script.

"Clave: (ninguna)" cambiará a "clave: ".

Haga clic en "Aceptar" y presione para guardar el script. Recuerde siempre guardar el script, de lo contrario, no se ejecutará nada cuando presione la tecla de acceso rápido asignada.

Quicksave Keymapping ahora está listo para ser utilizado. La próxima vez, cuando presione la tecla, se ejecutará una serie de prensas de teclas en orden.

Tenga en cuenta que hemos cambiado la funcionalidad de la clave a nivel mundial en todo el sistema operativo, siempre que Autokey se ejecute y acople a la bandeja del sistema. Para restringirlo a una ventana o aplicación en particular, deberá especificar las reglas de la ventana haciendo clic en el botón "Filtro de ventana" en la parte inferior.

Puede usar el mismo script anterior para crear un script para una carga rápida también. Solo tiene que eliminar la línea para la tecla de flecha y luego asignar el script a la tecla.

Si está buscando nombres de claves correctos para usar en Scripts de Autokey Python 3, se puede encontrar una lista de todos los códigos de teclas especiales en Autokey aquí. Cualquier clave que no se mencione en la página anterior se puede insertar utilizando citas simples o dobles. Ejemplo: teclado.send_key ('5'), teclado.send_key ('P') y así sucesivamente.

Ejemplo 2: Beba dos pociones de salud seguidas en un juego de juego de roles

Suponiendo que la tecla de acceso rápido para beber poción de salud en su juego es, el guión sería:

teclado.send_key ('h', repetir = 2)

El valor de la variable de repetición también se puede cambiar a cualquier otro número. Puede seguir los pasos en el primer ejemplo para asignar el script a su tecla de acceso rápido deseado.

Ejemplo 3: Modo de ráfaga para la pistola en un juego de disparos

Usando el código a continuación, puede mapear la tecla para disparar una pistola tres veces en una fila. La forma original de disparar en el juego es presionar el clic del mouse de izquierda una vez.

# botones del mouse: izquierda = 1, medio = 2, derecha = 3
ratón.click_relative_self (0, 0, 1)
ratón.click_relative_self (0, 0, 1)
ratón.click_relative_self (0, 0, 1)

El script de arriba ejecutará el clic del mouse izquierdo tres veces seguidas. Se pueden agregar declaraciones adicionales si desea ejecutar a la izquierda, haga clic más de tres veces.

Puede seguir los pasos en el primer ejemplo para asignar el script a la tecla de acceso rápido.

Ejemplo 4: Cree un menú de juego personalizado / convierta un juego en tiempo real en un juego basado en el turno

Usando la funcionalidad del menú de lista de Autokey, mostraremos un menú como una superposición además de un juego de ejecución. Este menú robará el enfoque del juego y lo devolverá después de que se ejecute un clic del mouse en uno de los elementos del menú. Una vez que se devuelve el enfoque, se ejecutará una tecla de tecla automatizada que invoca una función dentro del juego.

Echa un vistazo a esta foto:

En la carpeta "Gamemenu", he creado una subcarpeta llamada "Show". La carpeta "Gamemenu" y "Show" tiene elementos infantiles. Aquí está el código que he puesto dentro de cada elemento infantil:

  • Inventario: teclado.send_key ('i')
  • Mapa: teclado.send_key ('m')
  • Volver al juego: teclado.tecla Enviar('')
  • Cambiar al rifle de asalto: teclado.send_key ('2')
  • Cambiar a SMG: teclado.send_key ('1')

Aquí la carpeta "Gamemenu" se asigna a la clave y así es como se ve dentro del juego de ejecución:

Cada elemento de menú tiene un número prefijado antes de su etiqueta. Puede invocar cualquier elemento de menú presionando la tecla Número correspondiente en su teclado. Por ejemplo, presionar la tecla aquí cambiará el arma a rifle de asalto.

Una pequeña demostración de GIF de este ejemplo (haga clic en la imagen o haga clic derecho y abra el GIF en una nueva pestaña si la animación se detiene a continuación):

Es posible que este método no funcione con todos los juegos, dependiendo de la forma en que manejan ventana y representación de pantalla completa. Algunos juegos no se detienen cuando se roba el enfoque mientras que otros lo hacen. Si el juego se detiene cuando se pierde el enfoque, esencialmente ha convertido un juego en tiempo real en un juego basado en el turno usando este guión autokey.

Este ejemplo funcionará con juegos caso por caso. Sin embargo, en mis pruebas, he logrado resultados bastante buenos con los juegos de protones / vinos nativos y de Steam.

Conclusión

Todos los ejemplos mencionados aquí son básicos, principalmente enfocados para los jugadores de Linux. Cubren solo una parte de la poderosa API de Autokey. Autokey puede automatizar gran parte de su flujo de trabajo utilizando sus funciones de secuencia de comandos para el software cotidiano o complejo. Algunos ejemplos más están disponibles en la documentación oficial de la aplicación.