Simulando o movimento do mouse (ou joystick) com o teclado no Win 7

2

Praticamente o que são as "teclas do mouse" que podem ser ativadas através do Centro de Facilidade de Acesso, apenas aquelas que são inúteis porque são extremamente lentas e têm um atraso no início.

Mais algumas informações: há um jogo que é semelhante a um simulador de vôo, mas o controle de movimento e inclinação são controlados pelo mouse e não há nenhuma opção no jogo para remapear isso para os botões do teclado. Então, o que eu quero é que, se eu pressionar a tecla 4 no teclado numérico (ou alguma outra tecla, não me importo), o jogo reage como se eu estivesse movendo o mouse para a esquerda, sem atraso ou aceleração, da mesma forma que funciona em simuladores de voo normais, onde você usa um teclado por padrão.

Eu não preciso das direções diagonais, apenas para cima / baixo e esquerda / direita seria o suficiente. Como não serei capaz de controlar a velocidade do cursor, precisarei de alguma maneira para definir uma velocidade fixa que pareça correta no jogo, de preferência separadamente para cada eixo.

Edit: Como o mapeamento de algumas teclas para os eixos do joystick também funcionava, tentei encontrar um programa que fizesse isso, mas sem sorte. Parece que todo mundo precisa mapear os botões do joystick para as teclas do teclado, mas não o contrário. Certamente isso não pode ser tão difícil assim?

    
por And G 26.07.2015 / 14:18

1 resposta

2

A solução é chamada AutoHotkey e um tutorial para iniciantes pode ser encontrado aqui .

Este é o meu script:

#Persistent

SetTimer, Main, 1
return

Main:
if (GetKeyState("Up", "P"))
    MouseMove, 0, -25, 0, R
if (GetKeyState("Down", "P") or GetKeyState("NumpadClear", "P"))
    MouseMove, 0, 25, 0, R
if (GetKeyState("Right", "P"))
    MouseMove, 50, 0, 0, R
if (GetKeyState("Left", "P"))
    MouseMove, -50, 0, 0, R
return

NumpadClear é a tecla numérica do meio, então isso permite usar um padrão WASD no teclado numérico (8456).

    
por 17.08.2016 / 00:52