Releases: Electronicks/JoyShockMapper
JoyShockMapper v3.5.4
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In This Update
Bugfixes
Fixed crash when calibrating adaptive triggers
Note: The legacy version did not change in this version. If you use JSM legacy keep using v3.5.3.
JoyShockMapper v3.5.3
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In This Update
- Update SDL2 to latest 2.28.5
Bugfixes
- Fixed Instant Press not applying properly
- Fixed a deadlock with releasing a virtual controller
JoyShockMapper v3.5.2
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In This Update
Nick fixes everything he broke with his "improvements", but for real this time.
Bugfixes
- Fix toggle (again (again))
- Exempt ADAPTIVE_TRIGGER and RUMBLE from RESET_MAPPINGS
- Fix MOUSE_RING location bug
- Fix armor x pro virtual touchpad button mapping (again)
JoyShockMapper v3.5.1
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In This Update
Nick fixes everything he broke with his "improvements"
Bugfixes
- Restore digital binding of virtual gamepad trigggers X_LT, X_RT, PS_L2 AND PS_R2.
- Fix turbo binding of virtual controller buttons. Use Toggle as well for 50-50 press time instead of 40ms.
- Fix Dualsense Edge new button bindings (left buttons were inverted: LSL and RSR are grips)
- Add VIRTUAL_CONTROLLER and HIDE_MINIMIZED as settings exempted from resetting on RESET_BINDINGS
- Restore scroll stick mode
- Fix Ds4 virtual controller connect with UP stuck
- Fix Ds4 virtual controller touch adding a second ghost touch at 0,0
- Fix Ds4 virtual controller HOME and CAPTURE buttons
- Robustness fix at cleanup
- Fix Armor X Pro PS mode's M2 button
JoyShockMapper v3.5.0
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In This Update
Nick updates C++ standard to C++20, adds Setting Manager, creates Stick and Autoload objects, updates ViGEm (R.I.P.), SDL2 and JSL dependencies to latest, which includes Sony Edge support for both SDL and JSL versions. Perform proper polymorphism of virtual gamepads.
Features
- New HYBRID_AIM stick mode. This is the first feature developped by a community member : somebelse-Schmortii. It combines AIM and MOUSE_AREA. See readme for a ton of options and description. Have fun experimenting with it!
- New virtual DS4 forwarding options: GYRO_OUTPUT=PS_MOTION, TOUCHPAD_MODE=PS_TOUCHPAD
Bugfixes
- Set flick threshold at 100% (so that it is precisely controllerd by the outer deadzone setting)
- Virtual buttons now work properly with event and action modifiers (toggle, hold, turbo, etc...)
- Fix joycons in SDL2
- Modeshift-ing out of a flick will lock the stick mode in FLICK_ONLY until the flick is completed
Known issues
- SDL always merges joycons behind the scene into a single controller. JSM is not able to split them. Use legacy-JSL version to use a joycon pair as separate controllers instead of combined.
JoyShockMapper v3.4.0
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In This Update
Nicolas updated SDL2 version to the latest release 2.0.20 and fixed some bugs
NON BACKWARD COMPATIBLE CHANGE: Digital trigger bindings cannot be used at the same time as a virtual controller analog output, but the chord stack is updated to make use of chords and gyro button.
Jibb has made some improvements to vehicle steering, including stick modes for converting an angle on the stick to a single-axis offset on a virtual stick, a large rotation of the stick to a single-axis offset on a virtual stick, and a way to map MOTION_STICK to a single steering axis.
x86 builds are ommitted. If you need them, feel free to contact me here on github, on Reddit in r/GyroGaming or on the GyroGaming Discord.
Features
- Any STICK_MODE can now be set to LEFT_ANGLE_TO_X, LEFT_ANGLE_TO_Y, RIGHT_ANGLE_TO_X, or RIGHT_ANGLE_TO_Y to convert the angle of the stick to a virtual stick offset in just that axis. Requires a virtual controller to be set. This can be useful for improved steering precision in games that only use one axis. For example, setting LEFT_STICK_MODE to LEFT_ANGLE_TO_X will let you point the stick forward to get out of the inner deadzone without actually steering left or right, and then make small adjustments left or right for gentle steering. Stick magnitude is still taken into account, so at any time you can choose to just keep the stick in the X axis and it'll behave the same as traditional single-axis stick steering.
- Any STICK_MODE can now be set to LEFT_WIND_X or RIGHT_WIND_X, letting you wind that stick (rotate it flick-stick-style) to move that virtual stick across a single axis. This can be used to map very large movements to small stick movements, which can be useful for playing driving simulators. Releasing the stick will let the virtual stick pull back to its neutral position.
- MOTION_STICK_MODE can be set to LEFT_STEER_X or RIGHT_STEER_X to map leaning the controller left and right to the X axis on a virtual controller stick. For steering, this can work better than setting MOTION_STICK_MODE to a regular stick since it naturally handles holding your controller upright, flat, or anything in-between.
Bugfixes
- Autoload could not get started again, after being stopped
- A controller trigger key could not get pressed
- The full pull binding never registered when using analog controller triggers
- Fix hold time being applied on the first turbo hit
- Fix to direction keys not working in some games.
- Fix ViGEm rumbling not working
JoyShockMapper v3.3.0
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In this update
Jibb added basic support for mapping gyro and flick stick to virtual controller sticks.
Nicolas is adding Nielk1's trigger effects to JSM.
Features
- GYRO_OUTPUT can be set to RIGHT_STICK to convert gyro to stick instead of mouse. Find it in the README to see other settings available, including "UNDEADZONE", "UNPOWER", and "VIRTUAL_SCALE".
- FLICK_STICK_OUTPUT can also be set to RIGHT_STICK to fake flick stick in a game that's only reading from the controller. It will usually be less precise than mouse-flick-stick.
- Tune virtual flick stick and gyro aiming with VIRTUAL_STICK_CALIBRATION instead of REAL_WORLD_CALIBRATION and IN_GAME_SENS.
- ZL and ZR bindings now work with alongside virtual stick bindings (setting ZL_MODE or ZR_MODE to a virtual conroller trigger).
- New settings LEFT_TRIGGER_EFFECT and RIGHT_TRIGGER_EFFECT can be set to RESISTANCE, BOW, GALLOPING, SEMI_AUTOMATIC, AUTOMATIC or MACHINE. Type LEFT_TRIGGER_EFFECT HELP for details
Bugfixes
- Fixed virtual DS4 left stick having a heavy bias to the corners.
- Analog output of triggers are registered as chords to enable gyro button and chords
- Fixing the oldest bug in the history of JSM: numpad and navigational buttons depending on num lock
JoyShockMapper v3.2.3
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In this update
Nicolas is adding separate axis inversion settings for each stick. Like other XY settings, one or two parameters can be provided if X and Y axis don't have the same value. Legacy STICK_AXIS_X and STICK_AXIS_Y are preserved but operate on the new settings.
Nicolas also pushed some bugfixes
Features
- New settings LEFT_STICK_AXIS, RIGHT_STICK_AXIS, MOTION_STICK_AXIS and TOUCH_STICK_AXIS can be set to STANDARD or INVERTED. A different vertical value can be set by providing a second value.
Bugfixes
- Missing TOUCH_DEADZONE_INNER and TOUCH_RING_MODE commands
- Multiple sources of virtual controller stick and trigger inputs will add up instead of override.
- README didn't point to the official readme
- Don't send adaptive trigger data to non DS controllers... herp de derp
JoyShockMapper v3.2.2
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In this update
Jibb fixed some bugs related to motion stick and lean bindings.
Nicolas fixed some bugs too and makes use of the official SDL2 repo and GamepadMotionHelpers main branch
TauAkiou helped fix some linux build and updated the README
Github user mmmaisel added some better error handling of the linux build
Features
An active toggle on the DualSense mic button will turn on the mic light until that toggle is cleared by another toggle of MIC or that binding being released.
Bugfixes
- SET_MOTION_STICK_NEUTRAL should now behave correctly instead of accumulating errors over time.
- Motion stick and lean bindings should respect gravity more readily. This will also improve WORLD_TURN and WORLD_LEAN behaviour for those who use either of those GYRO_SPACE settings.
- GYRO_SMOOTH_TIME hasn't been working correctly since moving to a fixed tick rate (3.0). This has now been fixed.
- Stick aim inversion didn't work becuase it was inverted twice
- Linux easter egg fix (What is VK_NONAME? What does it do?)
- Linux error handling improvement (thanks mmmaisel)
- RIGHT_RING_MODE was confounded with LEFT_RING_MODE
- Fix the numkeys sending the alternate binding (home end pageup pagedown ...) and vice versa
- README linux notes updated (Thanks TauAkiou)
JoyShockMapper v3.2.1
JoyShockMapper converts Common game controller input into keyboard and mouse and virtual controller events so you can play PC games with those controllers. Use gyro controls and flick stick to play games with more precision than anything on their respective consoles.
In this update
Backwards compatibility note! The GYRO_SPACE options WORLD_TURN and WORLD_LEAN have been renamed PLAYER_TURN and PLAYER_LEAN. "Player space", which is was introduced in 3.2.0 (and has been improved here), is different to "world space".
WORLD_TURN and WORLD_LEAN now refer to slightly different options that use the gravity direction more strictly, and as a result are more prone to error.
Bugfixes
- PLAYER_TURN and PLAYER_LEAN behaviours have been improved.
- Virtual Xbox and DS4 triggers can be bound to digital buttons.
- Easter Egg. Can you find it?