Jump to content
We promise no intrusive ads, Please help keep the community alive
Consider supporting us by disabling your ad blocker / add to whitelist / purchasing VIP.
Sign in to follow this  
Xarlith

Wheel/Gamepad compatibility workaround

Recommended Posts

Due to so many requests I would like to present the easiest way to add support for miscellaneous wheels and gamepads.

 

You will need:

 

Then:

  • Extract tdudec.exe and scripts into main game directory
  • Run USBDeview, double click on your device
  • Write down ProductID and VendorID
  • Close USBDeview
  • Backup orginal DevicesPC.cpr
  • Drag file DevicesPC.cpr over DecryptCpr.bat (new file DevicesPC.cpr.txt will be created)
  • Open DevicesPC.cpr.txt in text editor. It should look like this:
    [settings]
    //------------------- Help Controls
    
    FUGLYX360PADDETECTION    0
    
    
    HIDDefaultConfig            "289045E-0-0-00-504944564944"    "Microsoft XBOX Pad"            "DeviceXBOXPad.xmb"
    HIDDefaultConfig            "28E045E-0-0-00-504944564944"    "Microsoft X360 Pad"            "DeviceX360Pad.xmb"
    HIDDefaultConfig            "C299046D-0-0-00-504944564944"    "Logitech G25 Racing Wheel USB"        "DeviceLogitechG25.xmb"
    HIDDefaultConfig            "C29A046D-0-0-00-504944564944"    "Logitech Driving Force GT USB"        "DeviceDrivingForceGT.xmb"
    HIDDefaultConfig            "C298046D-0-0-00-504944564944"    "Logitech Driving Force Pro USB"    "DeviceDrivingForcePro.xmb"
    HIDDefaultConfig            "C295046D-0-0-00-504944564944"    "Logitech Momo Force USB"        "DeviceMomoForce.xmb"
    HIDDefaultConfig            "C29B046D-0-0-00-504944564944"    "Logitech G27 Racing Wheel USB"        "DeviceLogitechG27.xmb"
    HIDDefaultConfig            "C216046D-0-0-00-504944564944"    "Logitech Dual Action USB"        "DeviceLogitechDualActionUSB.xmb"
    HIDDefaultConfig            "B653044F-0-0-00-504944564944"    "Thrustmaster RGT FFB Clutch"        "DeviceThrustmasterRGT_FFB_Clutch.xmb"
    HIDDefaultConfig            "B65A044F-0-0-00-504944564944"    "Thrustmaster F430 FFB"            "DeviceThrustmasterF430_FFB.xmb"
    HIDDefaultConfig            "B311044F-0-0-00-504944564944"    "Thrustmaster Dual Analog 3"        "DeviceThrustmasterDualAnalog3.xmb"
    HIDDefaultConfig            "1970EB7-0-0-00-504944564944"    "Porsche Wheel"                "DeviceFanatec911TurboS.xmb"
    HIDDefaultConfig            "30920E8F-0-0-00-504944564944"    "Subsonic Racin'Pro"            "DeviceSubsonicRacinPro.xmb"
    HIDDefaultConfig            "B65E044F-0-0-00-504944564944"    "Thrustmaster T500 RS Racing Wheel"    "DeviceThrustmasterT500RS.xmb"
    
    
    UseSteerControl        =    1
    DefaultSeatPosition    =    -0.2    -0.4    // FrontBack UpDown     min -1    Max +1
    
    CameraDeadZone        =    0.3    //0.3
    
    FFB_Factor            1.0
    FFB_SlipAngle        1    0.1    0.6    
    FFB_SlipAngle        2    0.3    1.0
    
    FFB_SpeedFactor        1    5    0.0
    FFB_SpeedFactor        2    10    0.8
    FFB_SpeedFactor        3    100    1.0
    
    FFB_LoadFromAccel    -1.0    0.0    0.75
    FFB_LoadFactor        1.0    0.9    0.8
    
    
    [Control_Driving]
    // FlashList => controls_pc_driving 
    AddAction    "CAR_ACCEL"                0    "A"        "Keyboard"    "0"    "UP"    
    AddAction    "CAR_BRAKE"                0    "A"        "Keyboard"    "0"    "DOWN"    
    AddAction    "CAR_LEFT"                0    "A"        "Keyboard"    "0"    "LEFT"    
    AddAction    "CAR_RIGHT"                0    "A"        "Keyboard"    "0"    "RIGHT"    
    AddAction    "CAR_HBRAKE"                0    "A"        "Keyboard"    "0"    "LSHIFT"
    AddAction    "CAR_CLUTCH"                0    "A"        "Keyboard"    "0"    "LCTRL"        
    AddAction    "BIKE_LIE_DOWN"                0    "A"        "Keyboard"    "0"    "A"        
    AddAction    "BIKE_SEAT_UP"                0    "A"        "Keyboard"    "0"    "Q"
    AddAction    "CAR_GUP"                0    "A"        "Keyboard"    "0"    "SPACE"
    AddAction    "CAR_GDOWN"                0    "A"        "Keyboard"    "0"    "LALT"
    AddAction    "CAR_GREV"                0    "A"        "none"        "0"    "none"
    AddAction    "CAR_G1ST"                0    "A"        "none"        "0"    "none"
    AddAction    "CAR_G2ND"                0    "A"        "none"        "0"    "none"
    AddAction    "CAR_G3RD"                0    "A"        "none"        "0"    "none"
    AddAction    "CAR_G4TH"                0    "A"        "none"        "0"    "none"
    AddAction    "CAR_G5TH"                0    "A"        "none"        "0"    "none"
    AddAction    "CAR_G6TH"                0    "A"        "none"        "0"    "none"
    AddAction    "CAR_G7TH"                0    "A"        "none"        "0"    "none"
    AddAction    "CAR_CAMERA"                0    "A"        "Keyboard"    "0"    "C"        
    AddAction    "CAR_BACKVIEW"                0    "A"        "Keyboard"    "0"    "V"        
    AddAction    "CAR_LIGHT"                0    "A"        "Keyboard"    "0"    "ENTER"    
    AddAction    "CAR_HORN"                0    "A"        "Keyboard"    "0"    "H"        
    AddAction    "CAR_WINDOWS"                0    "A"        "Keyboard"    "0"    "W"    
    AddAction    "CAR_RIGHT_BLINKER"            0    "A"        "Keyboard"    "0"    "PAD_0"    
    AddAction    "CAR_LEFT_BLINKER"            0    "A"        "Keyboard"    "0"    "RCTRL"    
    AddAction    "BACK_ON_TRACK"                0    "B"        "Keyboard"    "0"    "B"        
    AddAction    "REMOVE_GPS_TARGET"            0    "H"        "Keyboard"    "0"    "G"    
    
    [Control_Walkmode_Avatar]
    // FlashList => controls_pc_walkmode 
    // 1st/3rd person controls
    AddAction    "AVT_MOVE_LEFT"                1    "C"        "Keyboard"    "0"    "LEFT"
    AddAction    "AVT_MOVE_RIGHT"            1    "C"        "Keyboard"    "0"    "RIGHT"
    AddAction    "AVT_MOVE_FORWARD"            1    "C"        "Keyboard"    "0"    "UP"
    AddAction    "AVT_MOVE_BACKWARD"            1    "C"        "Keyboard"    "0"    "DOWN"
    AddAction    "AVT_RISE_ZOOM_IN"            1    "C"        "Keyboard"    "0"    "PAGE_UP"
    AddAction    "AVT_LEAN_ZOOM_OUT"            1    "C"        "Keyboard"    "0"    "PAGE_DOWN"
    AddAction    "CHAT"                    1    "C"        "Keyboard"    "0"    "T"            
    AddAction    "AVT_EMOTES"                1    "C"        "Keyboard"    "0"    "INS"
    AddAction    "AVT_LOOK_LEFT"                1    "A"        "none"        "0"    "none"
    AddAction    "AVT_LOOK_RIGHT"            1    "A"        "none"        "0"    "none"
    AddAction    "AVT_LOOK_UP"                1    "A"        "none"        "0"    "none"
    AddAction    "AVT_LOOK_DOWN"                1    "A"        "none"        "0"    "none"
    AddAction    "AVT_SWITCH_VIEW"            1    "C"        "Keyboard"    "0"    "END"
    AddAction    "MAP"                    1    "A"        "Keyboard"    "0"    "M"    
    AddAction    "RADIO_CHANNEL"                1    "A"        "Keyboard"    "0"    "1"
    AddAction    "RADIO_VOL_LESS"            1    "A"        "Keyboard"    "0"    "2"
    AddAction    "RADIO_VOL_MORE"            1    "A"        "Keyboard"    "0"    "3"    
    
    AddAction    "AVT_CASINO_EMOTES1"            1    "F"        "Keyboard"    "0"    "INS"
    AddAction    "AVT_CASINO_EMOTES2"            1    "F"        "Keyboard"    "0"    "HOME"
    AddAction    "AVT_CASINO_EMOTES3"            1    "F"        "Keyboard"    "0"    "SUP"
    AddAction    "AVT_CASINO_EMOTES4"            1    "F"        "Keyboard"    "0"    "END"
    
    [Menu]
    // ingame menus controls
    AddAction    "MENU_LEFT"                2    "D"        "Keyboard"    "0"    "LEFT"            
    AddAction    "MENU_RIGHT"                2    "D"        "Keyboard"    "0"    "RIGHT"
    AddAction    "MENU_UP"                2    "D"        "Keyboard"    "0"    "UP"            
    AddAction    "MENU_DOWN"                2    "D"        "Keyboard"    "0"    "DOWN"            
    AddAction    "ACCESSORIES_LEFT"            2    "G"        "Keyboard"    "0"    "PAD_4"            
    AddAction    "ACCESSORIES_RIGHT"            2    "G"        "Keyboard"    "0"    "PAD_6"
    AddAction    "ACCESSORIES_UP"            2    "G"        "Keyboard"    "0"    "PAD_8"            
    AddAction    "ACCESSORIES_DOWN"            2    "G"        "Keyboard"    "0"    "PAD_2"            
    AddAction    "MENU_VALIDATE"                2    "D"        "Keyboard"    "0"    "ENTER"        
    AddAction    "MENU_BACK"                2    "D"        "Keyboard"    "0"    "BACKSPACE"    
    AddAction    "MENU_PAUSE"                2    "D"        "Keyboard"    "0"    "ESC"
    AddAction    "MENU_OPTION_1"                2    "D"        "Keyboard"    "0"    "X"    
    AddAction    "MENU_OPTION_2"                2    "D"        "Keyboard"    "0"    "Y"            
    AddAction    "MENU_HELP"                2    "D"        "Keyboard"    "0"    "H"        
    AddAction    "MENU_SORT_INVERT"            2    "D"        "Keyboard"    "0"    "END"    
    AddAction    "MENU_SORT_LEFT"            2    "D"        "Keyboard"    "0"    "SUP"        
    AddAction    "MENU_SORT_RIGHT"            2    "D"        "Keyboard"    "0"    "PAGE_DOWN"    
    
    // on-map controls
    AddAction    "MAP_LEFT"                2    "E"        "Keyboard"    "0"    "LEFT"
    AddAction    "MAP_RIGHT"                2    "E"        "Keyboard"    "0"    "RIGHT"
    AddAction    "MAP_UP"                2    "E"        "Keyboard"    "0"    "UP"
    AddAction    "MAP_DOWN"                2    "E"        "Keyboard"    "0"    "DOWN"                                                 
    AddAction    "MAP_CURSOR_LEFT"            2    "E"        "none"        "0"    "none"
    AddAction    "MAP_CURSOR_RIGHT"            2    "E"        "none"        "0"    "none"
    AddAction    "MAP_CURSOR_UP"                2    "E"        "none"        "0"    "none"
    AddAction    "MAP_CURSOR_DOWN"            2    "E"        "none"        "0"    "none"
    AddAction    "MAP_CURSOR_ZOOMIN"            2    "E"        "Keyboard"    "0"    "PAD_MINUS"
    AddAction    "MAP_CURSOR_ZOOMOUT"             2    "E"        "Keyboard"    "0"    "PAD_PLUS"
    
    // stereo
    // ensure hotkeys for this : will avoid the vast majority of rants about bindings
    AddAction    "TOGGLE_STEREO"                2    "S"        "Keyboard"    "0"    "LSHIFT"            
    AddActionAnd    "TOGGLE_STEREO"                            "Keyboard"    "0"    "F1"            
    AddAction    "DISTORSION_DOWN"            2    "S"        "Keyboard"    "0"    "LSHIFT"        
    AddActionAnd    "DISTORSION_DOWN"                        "Keyboard"    "0"    "F2"            
    AddAction    "DISTORSION_UP"                2    "S"        "Keyboard"    "0"    "LSHIFT"        
    AddActionAnd    "DISTORSION_UP"                            "Keyboard"    "0"    "F3"    
    
    // groups inter-exclusions
    // stereoscopic vision keys musn't be used for anything else
    //ActionsExclusions    "SA SB SC SD"
    
    END
    
    


  • After this line
    HIDDefaultConfig            "B65E044F-0-0-00-504944564944"     "Thrustmaster T500 RS Racing Wheel"    "DeviceThrustmasterT500RS.xmb"


    add

    HIDDefaultConfig            "[YourProductID][YourVendorID]-0-0-00-504944564944"     "Your Device name in TDU2"    "YourDeviceConfigFilename.xmb"

    where [YourProductID] is a PID of your device, [YourVendorID] is a VID of your device and YourDeviceConfigFilename.xmb is a config file TDU2 will be using for your device. It might be existing xmb file, or new (if new you will need to copy and rename existing config anyway)

  • For example, if you have Fanatec CSW your ProductID is 38E and VendorID is 0EB7. You should add this line to the file:
    HIDDefaultConfig            "38E0EB7-0-0-00-504944564944"    "Fanatec CSW"                "DeviceFanatecCSW.xmb"


  • Save your file then drag DevicesPC.cpr.txt over EncryptCpr.bat. Replace DevicesPC.cpr with new DevicesPC.cpr.txt.cpr
  • Hardest part is done.

 

Now you need to find a config file that will fit. For example if you have Fanatec wheel the wise choice would be to use Fanatec 911 config. To do this copy DeviceFanatec911TurboS.xmb and rename to DeviceFanatecCSW.xmb. If you have other device procedure is similar but different xmb might work better and you rename it to YourDeviceConfigFilename.xmb instead of DeviceFanatecCSW.xmb :).

 

Be aware that config xmb you use for your device was not created for it. That means you might need to bind buttons by yourself but FFB should work.

 

Please if you successfully added new device post your device ProductID, VendorID and the xmb you have chosen to use. I will be updating this post with new devices and might add them to UnoficialPatch.

 

Fanatec CSW (with Fanatec911TurboS config):

HIDDefaultConfig            "38E0EB7-0-0-00-504944564944"    "Fanatec CSW"                "DeviceFanatec911TurboS.xmb"

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...