Hello, I understand you can use multiple inputs and assign them in Wheel2XInput. I see an example for overriding one GUID with another for say a specific button but here's what I'm trying to accomplish...
I have a TMX racing wheel and the TH8S shifter. I want to map the shifter to currently mapped dpad and paddles on the wheel in the json, not override it, but have both inputs working. How would I code that into the json? I have used the trace app to pull the GUID and button numbers, so just need to know how to inject that info into the json.
Thanks!
I think the code for mapping multiple GUIDs to a single button in the earlier reply might be wrong. I couldn't get it to work.
I tried a mixture of that and Copilot and came up with the following which did the trick for me.
Same Gear shifter as yours, but my wheel is the TS-PC Racer. Pasted the full json so you can see it in context, but at the end of the 'buttons' section I've mapped A,B,X,Y to 0,1,2,3 on my shifter (gear changes in Daytona!). The plus side is the same buttons still work on my wheel.
Program is especially useful for emulating systems like Dreamcast, where the controller has limited buttons so you need to multitask. Crazy Taxi for example uses A and B to navigate menus but are then gear shifts in game - so I wanted wheel shifting to function while also retaining the face buttons for navigation:
{
"guid": "00000003-044f-0000-89b6-000000000000.1",
"enableForceFeedback": 1,
"enableRumble": 0,
"centeringForce": 50,
"largeRumbleMagnitude": 80,
"largeRumblePeriod": 120,
"smallRumbleMagnitude": 50,
"smallRumblePeriod": 60,
"effectDuration": 1000,
"effectAntiDeadzone": 0,
"detectControllerReconnects": 1,
"pollInterval": 16,
"buttons": [
{
"button": 0,
"targetButtons": [ { "button": "A" } ]
},
{
"button": 1,
"targetButtons": [ { "button": "B" } ]
},
{
"button": 2,
"targetButtons": [ { "button": "Y" } ]
},
{
"button": 3,
"targetButtons": [ { "button": "A" } ]
},
{
"button": 4,
"targetButtons": [ { "button": "Back" } ]
},
{
"button": 5,
"targetButtons": [ { "button": "B" } ]
},
{
"button": 8,
"targetButtons": [ { "button": "Start" } ]
},
{
"button": 9,
"targetButtons": [ { "button": "X" } ]
},
{
"button": 0,
"guid": "00000003-044f-0000-60b6-000000000000.1",
"targetButtons": [
{ "button": "X" }
]
},
{
"button": 1,
"guid": "00000003-044f-0000-60b6-000000000000.1",
"targetButtons": [
{ "button": "A" }
]
},
{
"button": 2,
"guid": "00000003-044f-0000-60b6-000000000000.1",
"targetButtons": [
{ "button": "Y" }
]
},
{
"button": 3,
"guid": "00000003-044f-0000-60b6-000000000000.1",
"targetButtons": [
{ "button": "B" }
]
},
],
"dpads": [
{
"dpad": "up",
"targetDpads": [ { "dpad": "Up" } ]
},
{
"dpad": "right",
"targetDpads": [ { "dpad": "Right" } ]
},
{
"dpad": "down",
"targetDpads": [ { "dpad": "Down" } ]
},
{
"dpad": "left",
"targetDpads": [ { "dpad": "Left" } ]
}
],
"axes": [
{
"axis": 0,
"config": {
"inverted": 0
},
"targetAxes": [ { "axis": "LeftThumbX", "deadzone": 0, "antiDeadzone": 0, "linearity": -30, "low": -110, "high": 110 } ]
},
{
"axis": 2,
"config": {
"inverted": 1
},
"targetSliders": [ { "slider": "RightTrigger" } ]
},
{
"axis": 1,
"config": {
"inverted": 1
},
"targetSliders": [ { "slider": "LeftTrigger" } ]
}
]
}
Great little program by the way Nugarp. Once I've got my head around it looks like it can replace x360ce in a lot of similar user cases.