Joy Control

Joy Control — точное управление геймпадом для симуляторов

⬇ JoyControl.rar (15 МБ)

⬇ JoyControl-RU.pdf (730 КБ)

ENGI Live JoyControl — это программа для Windows, которая работает между вашим контроллером и игрой. Она читает DualShock 4, DualSense, Xbox (XInput), рули и джойстики (HID / DirectInput), а также клавиатуру. Программа обрабатывает сигнал и отдаёт игре виртуальный геймпад Xbox 360 через драйвер ViGEmBus.

Для игры программа невидима. Игра видит обычный стандартный контроллер, поэтому настройки работают в любом симуляторе. Не нужны моды, не нужна поддержка со стороны разработчика игры, файлы игры не меняются.

Смысл программы в одном. Триггер геймпада имеет ход около 2 см, а педаль автомобиля — около 10 см. Стик отклоняется на 1,5 см, а руль проворачивается на пол-оборота. Именно поэтому на геймпаде так трудно дозировать газ и тормоз: палец проходит весь диапазон от 0 до 100 % за 50–80 миллисекунд, и машина срывается в занос или блокирует колёса. Joy Control возвращает управлению длину хода. Программа делает это не картинкой, а реальным временем и формой отклика.

Как устроена обработка сигнала

Каждое значение проходит через конвейер, и на выходе получается уже свой контроллер:

  • Мёртвая зона. Программа считает нулём все сырые значения ниже порога, поэтому дребезг и износ не доходят до игры.
  • Взаимодействие триггеров. Один триггер вычитается из другого с множителем.
  • Кривая чувствительности. Она задаёт форму отклика: плавный старт или резкий.
  • Порог и ограничение выхода. Всё, что ниже «Мин», становится нулём, а оставшийся ход растягивается на полный диапазон; «Макс» ограничивает выход сверху.
  • Участки плавности. Они задают скорость изменения в миллисекундах на единицу, отдельно на нажатие и на отпускание.
  • Макросы и маппинг действий. Один элемент управления действует на другой.
  • Виртуальный геймпад Xbox 360. Готовый результат уходит в игру.

Опрос контроллера идёт с частотой около 120–125 Гц. Все задержки считаются по высокоточному таймеру с накоплением времени, поэтому шаг в 0,1 миллисекунды на единицу отрабатывается корректно даже между кадрами опроса.

Возможности программы

  • Любые устройства ввода. PS4 и PS5 определяются автоматически, Xbox подключается через XInput, рули и джойстики работают по HID и DirectInput, а клавиатура заменяет геймпад. Джойстиков сколько угодно: у каждого постоянный ID и свои настройки, поэтому даже два одинаковых геймпада настраиваются раздельно.
  • Независимая настройка триггеров. Тормоз и газ настраиваются по отдельности, а не одними ползунками на оба.
  • До 10 участков плавности. Участки задаются на диапазоне от 0 до 255, отдельно для нажатия и для отпускания, а задержка на каждом из них бывает от 0,1 до 1000 миллисекунд на единицу.
  • Кривые чувствительности. Для триггеров кривая настраивается от −20 до +20, для каждой оси стиков — от −10 до +10.
  • Полная настройка стиков. Настраиваются внутренняя и внешняя мёртвые зоны, ограничение диапазона по осям X и Y, растяжение до полного хода и принудительный максимум по оси.
  • Макросы. Режимы «Следовать», «Держать», «Импульс», «Переключатель», «Турбо», «Отключить» и «Последовательность» — цепочка до 16 шагов с таймингами. У каждого правила до четырёх условий: кнопки, триггеры и стики с диапазоном, так что комбинация вроде «L1 зажат и L2 продавлен наполовину» задаётся одним правилом. Есть реверс, приоритет, задержки в микросекундах и способ сочетания — большее из двух, замена или сложение, в том числе с другими макросами. Сцепление позволяет результату одного правила запускать другое.
  • Маппинг действий. Любой вход можно связать с любым выходом и задать порог срабатывания, требование удержания и задержки до и после.
  • Живой осциллограф. На графике за последние 3 секунды серым показано сырое значение с контроллера, а цветом — то, что уходит в игру. Настройку видно, а не приходится угадывать.
  • Интерактивная картинка геймпада. Клик по триггеру, стику, кнопке или тачпаду открывает окно его настроек.
  • Профили. Настройки хранятся в локальной базе SQLite, у каждого профиля есть уникальный 16-значный код, а обмен с файлами идёт через формат JSON. Для каждой игры удобно завести свой профиль. Настройки каждого джойстика сохраняются и в отдельный файл, который можно загрузить в любой джойстик любого профиля.
  • 14 языков интерфейса. Программа состоит из одного исполняемого файла и не требует установки.
  • Автосохранение. Любое изменение применяется и сохраняется сразу, поэтому настраивать можно не выходя из игры.

Почему это лучше для игр в симуляторах

Обычные программы для переназначения кнопок меняют только форму отклика, то есть кривую. Joy Control меняет ещё и скорость: сколько миллисекунд выход идёт к цели на каждом участке хода. Это принципиально другой уровень контроля, и именно он решает типичные проблемы симуляторов на геймпаде.

  • Машина не срывается в занос при нажатии газа. Палец дожал триггер мгновенно, а выход растёт плавно, и машина получает тягу так, как будто вы плавно давите педаль.
  • Торможение дозируется на грани блокировки. Первые 30 % хода быстрые, реакция мгновенная, а последние 30 % медленные. У самого упора можно поймать порог блокировки колёс, чего пальцем физически не сделать.
  • Отпускание триггера настраивается отдельно от нажатия. Настоящая педаль газа или тормоза отпускается не с той же скоростью, с какой нажимается. Плавное отпускание тормоза на входе в поворот и мягкий сброс газа на вкате настраиваются своими участками.
  • Плавность не мешает аварийным действиям. Отдельные галочки отключают задержку в крайних положениях: как только триггер полностью отпущен, тормоз сбрасывается моментально.
  • Руль получает инерцию. Резкий бросок стика не даёт мгновенного поворота колёс, потому что у стика есть свои участки плавности на отклонение и на возврат к центру.
  • Руление становится точнее. Ограничение диапазона по оси X превращает полный ход стика в 60–70 % угла поворота, и та же дистанция под пальцем работает вдвое точнее.
  • Во всех играх всё работает одинаково. Обработка идёт до игры, на уровне виртуального контроллера, поэтому не нужны ни настройки в самой игре, ни моды.
  • Левая нога остаётся на тормозе. Вычитание одного триггера из другого с множителем повторяет поведение машин, где газ и тормоз конфликтуют, или, наоборот, позволяет подтормаживать не сбрасывая газ.

Настройка газа и тормоза

Левый триггер L2 / LT — это тормоз, правый триггер R2 / RT — газ. Каждый настраивается в своём окне, и все параметры независимы.

ПараметрЧто делаетКак ставить для симулятора
Мёртвая зонаСырое значение ниже порога считается нулём.На новом геймпаде мёртвую зону ставят в 3–8 единиц. На изношенном триггере, который подтекает газом, её поднимают до 10–15 единиц.
Минимум и максимум«Мин» — порог входа: ниже него выход равен нулю, а оставшийся ход растягивается на 0–255. «Макс» ограничивает выход сверху.«Мин» 5–10 убирает дребезг изношенного триггера, не укорачивая ход. Для дождевой трассы или мощной заднеприводной машины «Макс» ставят в 190–210 единиц из 255 — тогда полный газ просто недоступен.
Кривая чувствительностиЗадаёт форму отклика в диапазоне от −20 до +20. Минус даёт плавный старт и точность в начале хода, плюс даёт резкий выход на максимум.Для газа уровень кривой берут от −6 до −10, для тормоза от −3 до −6. Плюсовые значения нужны редко, например для кнопочного ручника.
Участки нажатияЗадают до 10 отрезков на диапазоне от 0 до 255, и у каждого своя задержка в миллисекундах на единицу. Вне участков значение меняется мгновенно, а на пересечениях задержки складываются.Ориентир такой: 255 единиц по 1 миллисекунде дают около 0,26 секунды на весь ход. Для газа берут от 0,3 до 2 миллисекунд на единицу, для тормоза от 0,5 до 3 миллисекунд.
Участки отпусканияЗадают отдельный набор участков на падение значения.Обычно отпускание быстрее нажатия: от 0,5 до 1 миллисекунды на единицу. Для плавного отпускания тормоза в повороте задержку на больших значениях увеличивают.
Мгновенный ноль и мгновенный максимумОтменяет плавность, когда триггер полностью отпущен или дожат до упора.Для тормоза включают ради аварийного торможения, для газа обычно выключают.
Вычитание триггеров и множительТормоз ослабляет газ или наоборот, с заданным коэффициентом.Множитель от 0,5 до 1,0 повторяет торможение левой ногой и работу с перегазовкой.

Готовые пресеты триггеров

ПресетНажатиеОтпусканиеДля чего
Плавный тормоз0–80: 0,5 · 80–180: 1,5 · 180–255: 3,0120–255: 1,0 · 0–120: 0,5Кольцевые гонки и дозирование у порога блокировки.
Плавный газ0–60: 0,3 · 60–200: 1,0 · 200–255: 2,00–255: 0,8Задний привод и выход из поворота без срыва.
Как ABS0–128: 0,2 · 128–255: 2,5мгновенноБыстрое начало торможения и медленное додавливание.
Как TC0–128: 2,5 · 128–255: 0,2мгновенноМедленная подача тяги на старте и свободный верх диапазона.

Числа в таблице — это задержка в миллисекундах на одну единицу выхода. Пресет служит отправной точкой: дальше участки правят под конкретную машину и смотрят на осциллограф, где серая линия показывает палец, а цветная — то, что получает игра.

Настройка стиков

Левый стик в автомобильных симуляторах работает как руль, а правый отвечает за обзор или камеру. У каждого стика настраиваются и геометрия, то есть мёртвые зоны, диапазон и кривая, и плавность по участкам, причём для осей X и Y независимо.

ПараметрЧто делаетКак ставить для симулятора
Внутренняя мёртвая зонаУбирает дрейф в центре.От 3 до 6 % на новом стике и от 8 до 12 % на изношенном. Чем меньше значение, тем точнее машина держит прямую.
Внешняя мёртвая зонаОбрезает край, поэтому максимум достигается чуть раньше упора.От 92 до 97 %, чтобы полный поворот срабатывал по всей окружности, включая диагонали.
Максимальный диапазон по осямОграничивает выходной угол по оси X или Y.Это главный приём для руления: от 60 до 75 % по оси X. Руль перестаёт выкручиваться до упора, и точность растёт кратно.
Растяжение до полного диапазонаПосле обрезки краёв снова растягивает сигнал до максимума.Включают, когда нужен полный ход при большой внешней мёртвой зоне.
Чувствительность по осямЗадаёт кривую от −10 до +10. Минус растягивает центр и делает отклик плавным, плюс делает реакцию резкой.Для руления уровень кривой по оси X берут от −4 до −7. Для обзора правым стиком берут от +2 до +4, чтобы быстро крутить головой.
Участки отклоненияЗадают плавный уход от центра. Амплитуда от 0 до 255 — это полный ход от центра, и у каждого участка есть свои флаги осей X и Y.Для руления подходит набор задержек 0–60: 0,4 · 60–160: 1,2 · 160–255: 2,5 миллисекунды на единицу. Стик реагирует быстро около центра и тяжело у упора.
Участки возвратаЗадают плавное возвращение к центру.От 0,5 до 0,8 миллисекунды на единицу по всему ходу — это имитация самовозврата колёс. Для камеры возврат делают быстрее отклонения.
Постоянный максимум по осиПри любом отклонении по оси выдаёт максимум в пределах диапазона.Подходит для аркадного руления и игр, где нужен цифровой поворот.
Полное отключение стикаСтик не передаётся в игру, но его макросы продолжают работать.Удобно, когда рулит руль, а стик нужен только как источник макросов.

Оси X и Y настраиваются вместе или раздельно: у участка есть флаги «X» и «Y», а пересекающиеся участки складывают задержки. Рядом с настройками работает такой же осциллограф со шкалой от −255 до +255. Двигайте стик и смотрите, насколько выход отстаёт от вашего пальца.

Что нужно для работы

  • Windows 10 или 11 в разрядности x64.
  • Драйвер ViGEmBus 1.22.0. Программа проверяет его наличие и предлагает установку в один клик.
  • Контроллер, подключённый кабелем, через адаптер или по Bluetooth.

Программа запускается в пробном режиме на 20 минут за один запуск. Полная работа открывается по бессрочной лицензии engi.live.

Руководство с картинками: где что нажать

Ниже — пошаговое описание всех окон программы со снимками экрана. Это же руководство можно скачать в PDF — кнопка вверху страницы.

1. Драйверы: ViGEmBus и HidHide

  • ViGEmBus — драйвер виртуального геймпада. Без него программа не создаст Xbox-геймпад. В строке состояния внизу окна должно быть Драйвер ViGEmBus: OK; если нет — там же появится кнопка установки.
  • HidHide — не обязателен. Нужен, только если игра видит одновременно и настоящий геймпад, и виртуальный и персонаж «двоит». Подробнее — в разделе 15.
Игры, работающие через XInput (большинство современных), физический DualShock вообще не видят — только виртуальный геймпад от JoyControl. Для них HidHide не нужен.

2. Главное окно

Главное окно: сверху профиль и общие кнопки, слева джойстики, справа картинка геймпада.
  • Верхняя панель — выбор профиля, Профили…, сохранение и загрузка профиля целиком, Маппинг действий, Сбросить настройки, язык интерфейса.
  • Слева — устройства ввода. Все джойстики профиля, их ID, галочки и групповые операции.
  • Справа — картинка геймпада. Показывает в реальном времени, что получает игра от выбранного джойстика. По картинке можно щёлкать: триггер, стик или кнопка открывают свои настройки.
  • Под картинкой — макросы выбранного джойстика: каждая фишка — одно правило, щелчок открывает его источник.
Разделитель между левой и правой частью тянется мышью. Размер окна и положение разделителя запоминаются, когда вы отпускаете кнопку мыши.

3. Несколько джойстиков и их ID

Программа поддерживает любое количество джойстиков. Каждый получает постоянный ID: у Bluetooth-геймпада это его MAC-адрес, поэтому два одинаковых DualShock различаются. По ID программа сама находит настройки джойстика при подключении — даже в другой USB-порт.

Список устройств: ▶ — джойстик, который сейчас настраивается.
Элемент строкиЧто делает
×Убрать джойстик из профиля вместе с его настройками.
Первая галочкаРаботает: для джойстика создаётся виртуальный Xbox-геймпад.
Вторая галочкаВыбран: участвует в групповых операциях.
ИмяЩелчок — настраивать этот джойстик. Двойной щелчок — переименовать.
IDЩелчок — скопировать ID в буфер обмена.
Где нажать: щёлкните по ID джойстика — вместо него на секунду появится зелёное copy, полный ID уже в буфере обмена.
Подтверждение копирования ID.
Важно. Все окна настроек меняют выбранный (▶) джойстик. Если он отключён, строка «Настраивается» становится оранжевой с предупреждением «этот джойстик не подключён» — правки не повлияют на тот геймпад, что у вас в руках. Щёлкните по имени подключённого джойстика.

Групповые операции

  • Применить отмеченным — копирует все настройки выбранного (▶) джойстика на джойстики с галочкой «выбран».
  • Отметить все / Снять все — быстро расставить галочки.
  • Джойстик → файл — сохранить настройки одного джойстика в отдельный файл .joy.json.
  • Файл → джойстик — загрузить настройки из файла только в выбранный джойстик. Если отмечены другие — программа спросит, применить ли всем отмеченным. Подходит и обычный файл профиля: если в нём несколько джойстиков, программа предложит выбрать, чьи настройки взять.
Windows отдаёт играм не больше четырёх XInput-геймпадов. Программа поддерживает больше, но игра увидит первые четыре.

4. Профили и файлы

Профиль — это полный набор: все джойстики и настройки каждого. Профилей может быть сколько угодно, например под разные игры.

Где нажать: Профили… на верхней панели.
Окно профилей: у каждого профиля видно число джойстиков, ниже — джойстики выбранного профиля с их ID.
  • Активировать, Новый, Дублировать, Переименовать, Удалить — работа с профилями.
  • Сохранить в файл… / Загрузить из файла… — профиль целиком.
  • Блок «Настройки одного джойстика» — сохранить или загрузить файл конкретного джойстика в любом профиле, даже неактивном, и Убрать из профиля.
  • ● — у джойстика есть свои настройки; ○ — он ещё не настраивался и берёт общие настройки профиля.
Каждый джойстик помнит свой файл: при повторном сохранении программа предложит перезаписать тот же файл.

5. Триггеры L2 / R2

Где нажать: щёлкните по L2 / LT или R2 / RT на картинке геймпада.
Настройки правого триггера. Все изменения применяются и сохраняются сразу.
НастройкаКак работает
МинПорог входа: всё, что ниже, — ноль, а оставшийся ход растягивается на полный диапазон 0–255. Пример: Мин = 10 убирает дребезг, но курок по-прежнему даёт полный газ.
МаксОграничение выхода сверху: игра никогда не получит больше этого значения.
Мёртвая зонаСырое значение ниже порога превращается в 0 без растяжения.
Кривая−20 — мягкий старт, точный контроль в начале хода; +20 — резкий отклик.
Мгновенно в 0 / в максимумОтпущенный до конца или дожатый до упора курок срабатывает без задержек.
Вычитать L2 из R2Для гонок: тормоз ослабляет газ, Множитель задаёт силу. Есть и обратный вариант.
НАЖАТИЕ / ОТПУСКАНИЕУчастки плавности: на выбранной части хода значение растёт или падает не мгновенно, а с задержкой в мс на единицу. До 10 участков, пересечения складываются.
Как добавить участки: + Участок — один участок; Разбить 0–255 на N — сразу N равных участков. Живой график сверху показывает, как выход отстаёт от курка.

6. Стики и дрейф

Где нажать: щёлкните по левому или правому стику на картинке геймпада.
Настройки левого стика: слева мёртвые зоны и диапазон, справа участки плавности и живой график.
  • Включить ремап / свои мёртвые зоны — главная галочка. Без неё значения мёртвых зон не применяются.
  • Внутренняя мёртвая зона — убирает дрейф стика в центре. Обычно 8–15 %.
  • Внешняя мёртвая зона — край хода, где стик считается выведенным до упора.
  • Макс. диапазон X / Y, Растянуть, Всегда максимум — ограничить или усилить ход по каждой оси.
  • Чувствительность X / Y — кривая отклика.
  • ОТКЛОНЕНИЕ / ВОЗВРАТ — участки плавности, как у триггеров; у каждого участка галочки X и Y — на какие оси он действует.
Если стик дрейфует, а на нём висит макрос, дрейф будет включать макрос. Включите ремап с внутренней мёртвой зоной — в покое стик отдаст чистый ноль.

7. Макросы: основа

Макрос — правило «источник в состоянии → действие над другим элементом». Источником бывает:

  • участок хода стика или триггера — макрос работает, пока значение в его диапазоне;
  • кнопка — макрос работает, пока она нажата (раздел 11).

Макрос на участке стика или триггера

  1. Откройте окно стика или триггера и создайте участок.
  2. Щёлкните по номеру участка1 +.
  3. Откроется картинка геймпада — щёлкните по цели: кнопке, триггеру или стику. У стика затем выберите направление.
Выбор цели макроса.
Под участком появилась строка макроса: включён ✓, цель, режим, выходной диапазон, приоритет P, ⚙ — все параметры, × — удалить.

Все параметры правила

Где нажать: кнопка в строке макроса.
Окно «Параметры макроса».
ПараметрСмысл
ЦельНа какой элемент действует макрос.
РежимЧто именно происходит с целью — раздел 8.
Направление стикаДля источника-стика: любое, только вверх/вправо или только вниз/влево.
Вых. от / доКакие значения получает цель. Реверс — источник растёт, цель падает.
Сочетание с физическимБольшее из двух; Заменить физическое; Сложить — прибавить к тому, что вы жмёте физически, и к другим макросам с тем же приоритетом и тем же режимом «Сложить».
ПриоритетЕсли на одну цель действуют несколько макросов, побеждает больший. При равном «Отключить» сильнее всех.
ЗадержкиСрабатывание и отпускание в микросекундах: 10 000 = 10 мс. Срабатывание — источник должен продержаться в диапазоне это время.

8. Режимы макросов

РежимЧто делаетПример
СледоватьЦель повторяет источник: его диапазон пересчитывается в выходной диапазон цели. Только для источника-стика или триггера.Стик вперёд плавно жмёт газ.
ДержатьПока источник активен, цель нажата со значением «Вых. до».L1 держит L2 зажатым.
ИмпульсПри входе в диапазон цель нажимается один раз на заданное время.Короткое нажатие A при резком отклонении стика.
ПереключательКаждый вход включает или выключает цель.Одно нажатие — присесть, ещё одно — встать.
ТурбоПока источник активен, цель нажимается и отпускается с заданным периодом.Автоогонь.
ОтключитьЦель заблокирована, даже если нажата физически. Работает и для всего стика.Отключить стик, пока зажат L2.
ПоследовательностьЦепочка шагов: элемент, значение, сколько держать, пауза — раздел 10.Комбо-удар одной кнопкой.

9. Комбинации: условия

Условия отвечают на вопрос «что делать, если нажаты два элемента и больше». Макрос сработает, только когда выполнены все условия. Условием может быть:

  • кнопка — она нажата;
  • триггер или стик — его значение попало в диапазон, например «L2 продавлен больше половины: 128–255»;
  • любое из них с галочкой наоборот — кнопка НЕ нажата или значение ВНЕ диапазона.

На одно правило — до четырёх условий.

Где нажать: ⚙ у макроса → блок УСЛОВИЯ+ Добавить условие → щёлкнуть элемент на картинке. У аналоговых задайте диапазон.
Макрос работает, только пока зажат L1 и L2 продавлен больше чем на половину.
Двухкнопочное комбо «L1 + R1 → действие»: откройте макросы кнопки R1 (раздел 11), добавьте макрос с нужной целью и условием L1. Для трёх кнопок добавьте ещё одно условие.

10. Последовательности

Одно срабатывание — целая серия действий по времени. Каждый шаг: элемент, значение (для кнопки любое больше нуля = нажата), сколько держать и пауза после. До 16 шагов. Галочка повторять по кругу крутит серию, пока источник и условия держатся.

Где нажать: ⚙ у макроса → Режим: Последовательность+ Добавить шаг → щёлкнуть элемент на картинке. Стрелки ↑ ↓ меняют порядок, × удаляет шаг.
Режим «Последовательность»: общие поля цели и выхода скрыты, у каждого шага они свои. Условия продолжают работать.
Три шага: × → □ → △, каждый держится 60 мс с паузой 60 мс.

11. Макросы кнопок

Где нажать: щёлкните по кнопке на картинке геймпада (×, ○, □, △, L1, R1, крестовина, Share, Options, PS, тачпад).
Кнопка × / A: пока она нажата, L2 зажимается до 255.
  • + Макрос (выбрать на джойстике) — добавить правило и выбрать цель.
  • Полностью отключить кнопку — в игру кнопка не передаётся, а её макросы продолжают работать. Так кнопку можно целиком переназначить.
  • Все режимы, условия и последовательности работают так же, как у стиков и триггеров.

12. Все макросы и сцепление

Где нажать: Настроить под картинкой геймпада.
Все макросы выбранного джойстика в одной таблице.
  • Включение, приоритет, ⚙ и × — прямо в таблице. Щелчок по источнику открывает его окно.
  • Красным подсвечены конфликты: два макроса на одну цель с одинаковым приоритетом, когда неясно, кто победит.
  • Удалить все макросы — начать с чистого листа.
  • Сцеплять макросы — результат одного правила становится источником для другого. Например, «× → L2» и «L2 в диапазоне → R1» сработают цепочкой от одного нажатия ×. По умолчанию выключено: так готовые профили работают как раньше. Глубина ограничена тремя проходами, зациклиться нельзя.

Как макросы видно на картинке геймпада

  • Зелёные линии идут от источника к цели. У последовательности линии ведут к каждому элементу, подписи #1, #2, #3 — номера шагов.
  • Полоски под элементом — шкала 0–255: зелёная у источника показывает диапазон срабатывания, оранжевая у цели — выходной диапазон.
  • Зелёная точка — на элементе есть макросы.

13. Маппинг действий

Простое переназначение «вход → выход» с порогом срабатывания, удержанием и таймингами — общее для профиля.

Где нажать: Маппинг действий на верхней панели → Добавить.
Элемент входа, элемент выхода и режим: пока удерживается, по времени или с задержкой после отпускания.
Для большинства задач удобнее макросы (разделы 7–12): у них больше режимов, условия, последовательности и наглядные линии на картинке.

14. Готовые рецепты

Убрать дрейф стика

Стик → Включить ремап / свои мёртвые зоны → внутренняя мёртвая зона 10–12 %. Проверьте по живому графику: в покое линия выхода должна лежать на нуле.

Убрать дребезг триггера, не теряя полного хода

Триггер → Мин = 5–10. Всё ниже станет нулём, а оставшийся ход растянется до 255.

Плавный газ для гонок

R2 → Разбить 0–255 на N = 3 в блоке НАЖАТИЕ, задержка 1–3 мс/ед. на первом участке. Кривая −5…−10 для точного начала хода. При желании — Вычитать L2 из R2.

Комбо двух кнопок: L1 + × → R2

Кнопка × → + Макрос → цель R2, режим Держать → ⚙ → условие L1. Без L1 кнопка × работает как обычно.

Одна кнопка — серия ударов

Кнопка → макрос → ⚙ → режим Последовательность → шаги × → □ → △ по 60/60 мс. Для непрерывной серии — повторять по кругу.

Автоогонь

Кнопка R1 → макрос с целью R2 → режим Турбо → период 80–120 мс.

Два игрока на двух геймпадах

Подключите оба геймпада — каждый появится в списке со своим ID. Настройте первый, отметьте второй галочкой «выбран» и нажмите Применить отмеченным. Дальше каждый настраивается отдельно.

Перенести настройки на новый джойстик

Старый джойстик → Джойстик → файл. Новый джойстик — щелчок по имени → Файл → джойстик.

15. Если что-то не работает

СимптомПричина и решение
Правки «не работают»Скорее всего, настраивается отключённый джойстик — строка «Настраивается» оранжевая. Щёлкните по имени подключённого.
Триггер сам дёргаетсяПроверьте макросы со стика на этот триггер: дрейф стика включает макрос. Нужна мёртвая зона стика (раздел 6) или диапазон источника макроса от 10.
В игре персонаж «двоит»Игра видит и настоящий геймпад, и виртуальный. Установите HidHide: вкладка Applications → «+» → добавьте JoyControl.exe; затем вкладка Devices → галочка на Wireless Controller; переподключите геймпад. Порядок важен: сначала программа в белый список, потом скрытие.
Игра не видит геймпадПроверьте Драйвер ViGEmBus: OK и первую галочку «работает» у джойстика.
Пятый джойстик не виден в игреОграничение Windows: XInput отдаёт играм не больше четырёх геймпадов.
Второй DualShock не подключается по BluetoothУдалите старые записи «Wireless Controller» в настройках Bluetooth, сбросьте геймпад скрепкой (отверстие сзади у L2), включите режим сопряжения Share + PS до частого двойного мигания. Или просто подключите кабелем.