Имитация движения мыши (или джойстика) с помощью клавиатуры в Win 7

922
And G

В значительной степени то, что делают «клавиши мыши», которые можно активировать через Ease of Access Center, только бесполезны, потому что они чрезвычайно медленные и имеют задержку при запуске.

Немного больше информации: есть игра, в которую я играю, которая похожа на симулятор полета, но рыскание и тангаж контролируются мышью, и в игре нет возможности переназначить их на кнопки клавиатуры. Так что я хочу, чтобы, если я нажму клавишу 4 на цифровой клавиатуре (или какую-то другую клавишу, мне все равно), то игра будет реагировать так, как будто я перемещаю мышь влево, без задержки, ускорения или чего-то еще, так же, как это работает в обычных симуляциях полета, где вы используете клавиатуру по умолчанию.

Мне не нужны диагональные направления, достаточно было бы просто вверх / вниз и влево / вправо. Так как я не смогу управлять скоростью курсора, мне понадобится какой-то способ установить фиксированную скорость, которая будет ощущаться в игре, предпочтительно отдельно для каждой оси.

Редактировать: Так как отображение некоторых клавиш на оси джойстика также будет работать, я попытался найти программу, которая делает это, но безуспешно. Кажется, всем нужно сопоставить кнопки джойстика с клавишами на клавиатуре, но не наоборот. Конечно, это не может быть так сложно?

2
Я попытался отредактировать запись реестра для мышиных клавиш и установить ускорение от минимального значения (1000) до 0, но оно просто продолжало работать, как если бы оно было 1000. Можете ли вы переназначить Pitch and Yaw на что-нибудь еще, например, на консольный контроллер или Джойстик? Jack 9 лет назад 0
Я могу выбирать между мышью и джойстиком. У меня нет джойстика, поэтому я не пробовал, как он работает, но если бы я мог сопоставить клавишу с направлением джойстика, это, вероятно, решило бы и мою проблему. And G 9 лет назад 0

1 ответ на вопрос

2
And G

Решение называется AutoHotkey, и руководство для начинающих можно найти здесь .

Это мой сценарий:

#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 - это средний ключ цифровой клавиатуры, поэтому он позволяет использовать шаблон WASD для цифровой клавиатуры (8456).

Похожие вопросы