Giter VIP home page Giter VIP logo

r57zone / dsadvance Goto Github PK

View Code? Open in Web Editor NEW
74.0 2.0 2.0 1.15 MB

Advanced Xbox controller emulation for DualSense, DualShock 4, Pro Controller, Joy-Cons / Продвинутая эмуляция Xbox геймпада для DualSense, DualShock 4, Pro контроллера, Джойконов

Home Page: https://youtu.be/gkyqO_HuPnk

License: Other

C++ 64.22% C 26.90% Pascal 8.62% Batchfile 0.26%
dualsense dualshock4 gamepad gamepads vigem windows gyroscope joy-con joy-cons joycons

dsadvance's Introduction

EN RU ← Choose language | Выберите язык

DSAdvance

Advanced Xbox gamepad emulation for Sony DualSense, DualShock 4, Nintendo Pro controller or Joy-cons. Supports aiming and driving by tilting the gamepad, stick emulation on the touchpad, keyboard and mouse emulation, and external pedals. Works based on the driver ViGEm.

Working modes

Several working modes are supported, they are switched by pressing the touchpad for DualSene & DualShock 4 and for Pro controllers & Joy-Cons to the Capture, and Home buttons.

To exit the stick emulation mode on the touchpad, need to switch to the default mode.

By clicking on the default profile on DualSense the white LEDs display the current battery status (1 - 0..25%, 2 - 26..50%, 3 - 51..75%, 4 - 76..100%), also on DualSense and DualShock 4 the battery status is shown on the lightbar (green - 100..30%, yellow - 29..10%, red - 9..1%), can be disabled in the config, parameter ShowBatteryStatusOnLightBar. For DualSense and DualShock 4 the current charge is displayed in the program itself.

The PS button opens the "Xbox Game Bar", PS + □ - decrease the volume, PS + ○ - increase the volume, PS + △ - increases and then decreases aiming sensitivity (reset to PS + R3), PS + X - microphone button (screenshot / pressing configured keyboard button).

By default, the microphone button takes a screenshot of Win + Alt + PrtScr (for DualShock 4 press PS + X). By changing the MicCustomKey parameter to the desired button value, it will be pressed.

To emulate the keyboard and mouse for older games, switch the mode to ALT + Q or PS + ← and PS + → and select the desired profile or create the desired profile. Profiles are switched to the ALT + ↑ and ALT + ↓ keys if the window is active or on a gamepad using PS + ↑ and PS + ↓. The default profile allows to work in Windows.

To connect external pedals (DInput), change the DInput parameter to 1, in the ExternalPedals section. To connect external pedals on Arduino, change the COM port number by changing the COMPort parameter.

To turn off the DualSense or DualShock 4, hold down the PS button for 10-15 seconds until the controller turns off.

Setup

  1. Install ViGEmBus.
  2. Install Microsoft Visual C++ Redistributable 2017 or newer.
  3. Connect the Sony DualSense, DualShock 4, Nintendo Pro controller or Joy-Cons.
  4. Unzip and launch DSAdvance.
  5. If necessary, change the dead zones of the sticks, triggers or other parameters in the configuration file Config.ini.
  6. When used with Steam games, in the controller settings, disable "Playstation personal settings".
  7. It is also recommended to install HidHide, then in the "HidHide Configuration Client" add "DSAdvance.exe" and turn on the parameter Enable device hiding (If turned off). It is necessary so that the game did not see our controller, and saw only emulated Xbox 360 gamepad.
  8. (Optional) To launch from the notification area (tray), by double-clicking, you can add a shortcut to Launcher.exe to Windows startup %AppData%\Microsoft\Windows\Start Menu\Programs\Startup.
  9. (Optional) To run third-party utilities via Launcher, specify the title and path to the application in the configuration file.

Possible problems

The game sees 2 controllers at the same time (DualSense / DualShock 4 / Nintendo Pro controller or JoyCons and Xbox)
If the game supports a modern gamepad you can turn off the emulation of the Xbox gamepad on the keys ALT + Q or hide this gamepad at all using the program HidHide or try in wireless mode.

Permanently changing keyboard and gamepad icons
You can change the aiming mode to "mouse-joystick", in the program, or use aiming by left trigger.

Adaptive triggers or light bar don't work in the game
Add the game to the "HidHide" exceptions list and change the "DSAdvance" mode to "Only mouse".

Driving don't work in games with DualSense support (without HidHide)
Launch DSAdvance first, and only then the game itself, the game can give priority to the emulated Xbox controller and driving will work. You can also enable "Only driving & aiming" emulation mode so that the controller will only turn on in driving mode.

Keyboard emulation don't work in some games
In some games, for example, Max Payne or Crysis 2, unfortunately, this don'n work yet.

Download

Version for Windows 10, 11.

Download

Credits

  • Sony and Nintendo for the most advanced gamepads and investment in innovation, and for driving innovation in games.
  • ViGEm for the ability to emulate different gamepads.
  • HIDAPI library with fixes for the library to work with a USB devices. The project uses this fork.
  • JoyShockLibrary for a cool gamepad library that makes it easy to get controller rotation. Also some code from this library is used.
  • For Reddit users for a detailed description of the DualSense USB output packet.
  • DS4Windows[1][2] for the battery level.
  • ChatGPT for improved aiming.

Building

  1. Download the sources and unzip them.
  2. Download and install Microsoft Visual Studio Code 2017+.
  3. Update the project properties with your tools and SDK.
  4. Choose the Release build type (if Debug is installed) and x86, then compile the project.

Feedback

r57zone[at]gmail.com

dsadvance's People

Contributors

r57zone avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

drkzrg xfyer

dsadvance's Issues

[Q&A] Lanucher.exe - Lanuched.ico `Cannot open file`

lanucher exe

I was trying to open the lanucher.exe after reading the ReadMe about the autorun.

I'm getting this error message. Will this be solved if I set the Lanucher.exe in Startup and restart the PC or is this error related to some other like the missing file?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.