Существуют широко известные программы, позволяющие выполнять скрипты по нажатию клавиш (например AutoHotkey). Эти программы используют для перехвата нажатий клавиш простой метод, называемый hooking. Однако в некоторых играх (например в Mortal Kombat XL) стоит защита, и там такой подход не работает. Программа MaKros работает на уровне драйвера операционной системы, поэтому будет работать в абсолютно любом приложении. Также преимуществом MaKros является то, что комбу можно прервать в любой момент.
Видеодемонстрация: https://www.youtube.com/watch?v=ozy5-q20ZT0
ВНИМАНИЕ! Программа работает только с клавиатурой. С геймпадом не работает. Это не является недостатком, так как на клавиатуре куча кнопок, на которые можно назначить разные комбинации.
Программа состоит из двух частей: драйвер клавиатуры и собственно сама программа. Драйвер взят отсюда: https://github.com/oblitum/Interception. Когда вы устанавливаете драйвер, в папку c:\Windows\System32\drivers\ копируются два файла: keyboard.sys и mouse.sys.
- Зайдите в папку Драйвер
- Запустите InstallDriver.bat от администратора (правой кнопкой на InstallDriver.bat и "Запуск от имени администратора")
- Перезагрузите компьютер
- Зайдите в папку MaKros
- Запустите MaKros.exe (это скомпилированный пример скрипта)
- Нажмите Num Lock для активации скрипта
- Проверьте работу программы в любом текстовом редакторе (какие кнопки нажимать смотрите ниже)
- Завершите программу нажатием F12
Пример демонстрирует работу программы в игре Mortal Kombat XL.
Q - командный захват Горо, когда персонаж справа от противника.
E - командный захват Горо, когда персонаж слева от противника.
X - нижний удар, а затем кулачная прогулка (когда персонаж слева от противника).
M - нижний удар, а затем кулачная прогулка (когда персонаж справа от противника).
Можно назначать на кнопки не только спецприемы, но и длинные комбинации. При этом очень важно иметь возможность прервать выполнение длинной комбы в любой момент. Если противник заблокировал первые удары, то игроку нужно мгновенно вернуть себе контроль над персонажем.
Удерживать F - длинная комба, когда противник справа от персонажа.
Удерживать H - длинная комба, когда противник слева от персонажа.
Отпустить F или H - прервать выполнение комбы.
Удерживать C - бесконечное землетрясение.
Я протестировал программу на трех компах с разными версиями Windows. У других юзеров также всё работает.
- Если программа вообще не запускается, то проверьте, что у вас установлена платформа .Net Framework. Для этого проверьте наличие папки c:\Windows\Microsoft.NET\Framework\v4.0.30319. Если такой папки нет, то установите https://dotnet.microsoft.com/download/thank-you/net472-offline.
- Если пример запускается, но не реагирует на нажатия, то возможно вы просто не нажали Num Lock.
- Проверьте также наличие файлов keyboard.sys и mouse.sys в папке c:\Windows\System32\drivers. Если их нет, значит вы не установили драйвер. Файл InstallDriver.bat нужно обязательно запускать от Админа, а после установки драйвера обязательно нужно перезагрузить компьютер.
Есть хороший сайт с комбами для Mortal Kombat X и Mortal Kombat 11: https://inthedark.pro/mortal-kombat-x-combos/, https://inthedark.pro/mortal-kombat-11-combos/. По поводу других файтингов посоветовать ничего не смогу.