Skip to content

Latest commit

 

History

History
94 lines (56 loc) · 10.8 KB

README.RU.md

File metadata and controls

94 lines (56 loc) · 10.8 KB

EN RU

DSAdvance

Продвинутая эмуляция Xbox геймпада для Sony DualSense, DualShock 4, Nintendo Pro контроллера или Joycon-ов. Поддерживается прицеливание и вождение наклонами геймпада, эмуляция стиков на тачпаде, эмуляция клавиатуры и мыши, а также внешние педали. Работает на базе драйвера ViGEm.

Режимы работы

Поддерживается несколько режимов работы, переключаются они нажатиями по тачпаду для DualSene и DualShock 4, а для Pro контроллеров, и JoyCon-ов на кнопки Capture, и Home.

Для выхода из режима эмуляции стиков на тачпаде нужно переключиться на режим по умолчанию.

Нажимая на профиль по умолчанию, на DualSense, белые светодиоды отображают текущий статус заряда аккумулятора (1 - 0..25%, 2 - 26..50%, 3 - 51..75%, 4 - 76..100%), также на DualSense и DualShock 4 показывается статус батареи на световой панели (зелёный - 100..30%, жёлтый - 29..10%, красный - 9..1%), можно отключить в конфиге, параметр ShowBatteryStatusOnLightBar. Для DualSense и DualShock 4 отображается текущий заряд в самой программе.

Для изменения яркости 2 раза нажмите на область яркости. Если изменение яркости заблокировано, то подстветка будет выключаться по двойному клику.

Кнопка PS или Capture + Home открывает "Xbox Game Bar" (нажимая Win + G), PS + □ или CAPTURE + Y - уменьшить громкость, PS + ○ или PS + A - увеличить громкость, PS + △ или CAPTURE + X - увеличивает, а затем уменьшает чувствительность прицеливания (сброс на PS + R3 или CAPTURE + R3), PS + X или CAPTURE + B - кнопка микрофона (скриншот или нажатие сконфигурированной кнопки клавиатуры).

По умолчанию кнопка микрофона делает скриншот Win + Alt + PrtScr (для DualShock 4 PS + X, а для Nintendo контроллеров CAPTURE + B). Изменив параметр MicCustomKey на нужное значение кнопки будет производится её нажатие.

Для эмуляции клавиатуры и мыши, для старых игр, переключите режим работы на ALT + Q или PS + ← и PS + →, или HOME + ← и HOME + →, и выберите нужный профиль или создайте новый профиль. Профили переключаются на клавиши ALT + ↑ и ALT + ↓, если окно активно или на геймпаде, с помощью PS + ↑ и PS + ↓ или HOME + ↑ и HOME + ↓. Профиль по умолчанию позволяет работать в Windows.

Для подключения внешних педалей (DInput) измените параметр DInput на 1, в разделе ExternalPedals. Для поключения внешних педалей на Arduino измените номер COM-порта, изменив параметр COMPort.

Для выключения DualSense или DualShock 4 удерживайте кнопку PS в течении 10-15 секунд, пока контроллер не выключиться.

Настройка

  1. Установить ViGEmBus.
  2. Установить Microsoft Visual C++ Redistributable 2017 или новее.
  3. Подключить геймпад Sony DualSense, DualShock 4, Nintendo Pro контроллер или JoyCon-ы.
  4. Распаковать и запустить DSAdvance.
  5. При необходимости изменить мёртвые зоны стиков, триггеров или другие параметры, в конфигурационном файле Config.ini.
  6. При использовании со Steam играми, в настройках контроллера, отключите "персональные настройки Playstation".
  7. Также рекомендуется установить HidHide, после чего в "HidHide Configuration Client" нужно добавить "DSAdvance.exe" и включить параметр Enable device hiding (если выключен). Необходимо для того, чтобы игра не видела наш контроллер, а видела только эмулируемый Xbox 360 геймпад.
  8. (Необезательно) Для запуска из области уведомлений (tray), по двойному клику, можно добавить ярлык на Launcher.exe в автозагрузку Windows %AppData%\Microsoft\Windows\Start Menu\Programs\Startup.
  9. (Необезательно) Для запуска сторонних утилит через Launcher укажатие имя и путь до приложения в конфигурационном файле.

Загрузка

Версия для Windows 10, 11.

Загрузить

Возможные проблемы

Игра видит 2 геймпада одновременно (DualSense / DualShock 4 / Nintendo Pro контроллер или JoyCon-ы и Xbox)
Если игра поддерживает современный геймпад можно выключить эмуляцию Xbox геймпада на клавиши ALT + Q или вовсе скрыть этот геймпад, с помощью программы HidHide, или попробовать в беспроводном режиме.

Постоянное изменение значков клавиатуры и геймпада
Можно изменить режим прицеливания на "mouse-joystick", в программе или используйте прицеливание, с помощью левого триггера.

Не работают адаптивые триггеры или световая панель в игре
Добавьте игру в список исключений программы "HidHide" и измените режим "DSAdvance" на "Only mouse".

Не работает вождение, в играх с поддержкой DualSense (без HidHide)
Сначала запустите DSAdvance, а только потом саму игру, игра может отдать приоритет эмулируемому геймпаду Xbox и вождение будет работать. Также можно включить режим эмуляции "Only driving & aiming", чтобы геймпад включался только в режиме вождения.

Не работает эмуляция клавиатура, в некоторых играх
В некоторых играх, например, Max Payne или Crysis 2, к сожалению, это пока не работает.

Благодарности

  • Sony и Nintendo за самые продвинутые геймпады и инвестирование в инновации, а также за продвижение инноваций в игры.
  • ViGEm за возможность эмуляции разных геймпадов.
  • HIDAPI library, с исправлениями, за библиотеку для работы с USB устройства. В проекте используется этот форк.
  • JoyShockLibrary за классную библиотеку геймпадов, позволяющую легко получить вращение контроллера. Также используется некоторый код из этой библиотеки.
  • Пользователям Reddit за детальное описание выходного USB пакета DualSense.
  • DS4Windows[1][2] за уровень заряда батареи.
  • ChatGPT за улучшения прицеливания.

Сборка

  1. Загрузите исходники и распакуйте.
  2. Загрузите Microsoft Visual Studio Code 2017+ и установите.
  3. Измените в свойствах проекта набор инструментов и SDK на ваш.
  4. Выберите тип сборки Release (если установлен Debug) и x86, после чего скомплириуйте проект.

Обратная связь

r57zone[собака]gmail.com