Electronicks / JoyShockMapper

A tool for PC gamers to play games with DualShock 4s, JoyCons, and Pro Controllers. Gyro aiming, flick stick.
Other
353 stars 20 forks source link

JSM's gyro mouse is sending some sort of inputs that standard mouse/Steam input gyro don't #88

Closed DeceptivePastry closed 1 year ago

DeceptivePastry commented 1 year ago

Playing Ghost Recon: Breakpoint, something I noticed where JSM differs from Steam Input's gyro implementation. Using a DS4 virtual with the only KB+M input being mouse movement on gyro. The game changes HUD icons depending on the last received input, gamepad or KB+M. Simply moving the actual mouse around doesn't cause the switch, it keeps the gamepad icons - you have to actually click a mouse button for the game to switch to KB+M icons. JSM however sends some sort of additional inputs that mouse movement alone is causing the game to register KB+M and this causes the icons to flicker between gamepad/KB+M like crazy when I use the gyro mouse. Notably, Steam Input's gyro mouse doesn't do this, it works the same as moving the actual mouse - mouse movement alone doesn't trigger the icon switch.

This isn't a huge deal, but I do wonder why this only happens with JSM's gyro mouse? I have had other games where they will allow mouse movement alone without changing the prompt icons, so could be useful to have this not happen.

Electronicks commented 1 year ago

JSM uses Win32 api SendInput to interact with Windows. It is likely that other software use some other framework to send its input, possibly by talking to the game directly.