Скрипт для быстрого поворота мыши

Помощь в написании скриптов для игр.
soundkillah9
Posts: 2
Joined: 16 Jul 2021, 03:23

Скрипт для быстрого поворота мыши

Post by soundkillah9 » 16 Jul 2021, 03:38

Недавно (месяца два назад), в игре dead by daylight внесли патч, который фиксил фичу с поворотом мыши за маньяка Мор. Раньше ты мог резко повернуться ровно на 180 градусов (или более) за счет переключения dpi, и это давало огромное преимущество, хотя это было легко контрить выжившим. Недавно на ютубе я увидел как один игрок за Мора делал снова эту фичу, но уже после патча. В комментариях он писал, что делал это благодаря переключению dpi(6к), внутриигровой сенсе и скрипту autohotkey. Сам я далек от мира программирования, написания скриптов и т.д., так что прошу вас написать этот скрипт. Мне нужно сделать так, что бы при нажатии на кнопку E я поворачивал бы направо, а при нажатии на Q налево.

mcl
Posts: 357
Joined: 04 May 2018, 16:35

Re: Скрипт для быстрого поворота мыши

Post by mcl » 16 Jul 2021, 11:34

Сам я далёк от мира Dead by Daylight, читерства и т.д., так что целый скрипт не напишу, но постараюсь направить на нужный путь.

В описании патча написано следующее:
Added a maximum turn rate per frame to the Blight's rush for very high sensitivity input.
Задана максимальная скорость поворота за один кадр для высокочувствительных устройств ввода.
…и это, к сожалению, мало о чём говорит − какая именно скорость поворота считается максимальной, что считается высокой чувствительностью для мыши и т.д. Поэтому подбирать нужные значения придётся опытным путём.

Code: Select all

#SingleInstance Force           ; Перезагружать скрипт без дополнительных вопросов
SendMode Event                  ; Режим имитации клавиш/мыши. Возможные режимы: Event | Input | Play

q::                             ; Горячая клавиша Q - код ниже будет выполнен при её нажатии
  Loop 10                       ; Код между фигурными стрелками будет выполнен 10 раз
  {                             ; 
    MouseMove, -50, 0, 5, R     ; Переместить мышь на 50 единиц влево (минус) со скоростью 5 (меньше - быстрее)
	Sleep 20                    ; Задержка ~20 мс.
  }                             ; 
  Return                        ; Конец кода горячей клавиши

e::                             ; Горячая клавиша E
  Loop 10                       ; Код тот же, но мышь перемещается на 50 единиц вправо (плюс)
  {                             ; 
    MouseMove, 50, 0, 5, R      ; 
	Sleep 20                    ; 
  }                             ; 
  Return                        ; 
Первым делом стоит попробовать, работает ли этот код вообще. Если нет:
0. Проверить работоспособность скрипта вне игры − двигается ли мышь.
1. Попробовать запустить скрипт из-под администратора;
2. Попробовать выставить другие режимы во второй строке.

Если же скрипт работает − подбирать значения, пока скорость и время поворота не станут приемлемы.
1. Количество циклов (число 10 в строках с Loop) − чем больше циклов, тем больше угол поворота, но и выполняться будет дольше.
2. Шаг поворота (число 50 в строках с MouseMove) − чем больше шаг, тем больше поворот, но и больше вероятность упереться в ограничение, описанное в патче.
3. Скорость перемещения мыши (число 5 в строках с MouseMove) − чем меньше значение скорости, тем быстрее поворот, но есть вероятность, что поворот не будет воспринят игрой вообще. Скорость всегда максимальна (0), если включён режим Input или Play.
4. Задержка между шагами (число 20 в строках с Sleep) − чем меньше задержка, тем быстрее поворот, но и больше вероятность упереться в ограничение.

После редактирования скрипта его, разумеется, нужно перезапускать.
Если скрипт всё равно не заработает или подобрать нужные значение никак не получится − пишите.
github://oGDIp - GDI+ wrapper for AHK v1.1

soundkillah9
Posts: 2
Joined: 16 Jul 2021, 03:23

Re: Скрипт для быстрого поворота мыши

Post by soundkillah9 » 17 Jul 2021, 04:20

@mcl Ни в какую не получается подобрать нужные значения. Либо игра не воспринимает скрипт, либо воспринимает, но нужный поворот в игре не получается сделать.

Post Reply

Return to “Скрипты для Игр”