Overview
So, you’ve purchased a fancy new Xbox One controller, and you want to sit back on your couch and play some Tom Clancy’s Rainbow Six® Vegas 2 on your large home theater system. What’s this? The game isn’t recognizing your Xbox One Controller? Admittedly, the solution is a bit tedious, but it works.
What you’ll Need
-Any Xinput based controller, really. For this guide, I’ll be using a Steam Controller. Keep in mind that this will work with ANY Xinput controller, such as an Xbox One Controller or any 3rd Party controller such as the Power A Mini Pro EX
-USBDeview, which you can grab here: [link]
-A way to convert Hexadecimals to Decimals. This website does the trick: [link]
-Some Patience
Finding the File We Need to Edit
First off, you’ll need to find out where you’ve installed your copy of Vegas 2. An easy way to do this is to go to your Library:
Right Click on your game and Click on Properties:
It should open up a window that looks like this:
Now go to the Local Files Tab and Click on the “Browse Local Files” Button
It should open up a window with these contents:
From here, click on the KellerGame Folder, from there you’ll want to enter the Config Folder.
This Folder contains the .ini file we want to modify, “PCKellerJoysticks”
Finding the Information we need from USBDeview
Granted, you don’t really need this program, but it is a bit more organized than Window’s Device Manager, and a bit easier to navigate.
Once you have it downloaded, with your controller of choice connected to your PC, start up the USBDeview executable. The controller can be connected wired or with a wireless dongle. Just be sure it’s on. USBDeview should look similar to this:
That’s a lot to process, but bear with me for a sec, you’re looking for 2 codes, the VendorID and the ProductID.
Pay attention to the device name to make sure that you’re looking at the right product. Right now, USBDeview is recognizing my Steam Controller as a generic Wired Controller.
Messing Around with the PCKellerJoysticks File
With the ProductID and VendorID in our hands, it’s just a matter of plugging them in to a specific area of the PCKellerJoystick file. First, however, you need to convert the ID’s from a hexadecimal to a decimal. Remember that website I mentioned before?: [link]
Just plug the ID’s in to get the numbers needed:
Now open up PCKellerJoysticks.ini
The folder is filled with lines of code that contain the basic structure highlighted in the red square. Now, assuming you don’t have the exact Wired Xbox 360 Controller that Ubisoft requires you use for this, we’re gonna modify the first chunk of code, conveniently labeled [Joystick0] (If you do have said controller, however, as I mentioned before, there are a bunch of these chunks in the folder, so just find a different one.)
Just replace the numbers highlighted in green with the numbers we just converted:
Save your changes and exit the file.
Conclusion
Now just be sure to enable your gamepad in game. The game should recognize it as a 360 controller now.
It was a tad bit annoying, but hey, at least your controller should work now.
Please tell me if this method actually works. Because it’s worked for me loads of times on different computers.
An Addendum
If you plan on using this method with a wireless controller plugged into a Steam Link, you’re going to need at least one controller plugged into the host PC for the game to even recognize the controller being used through the Steam Link. Aggravating, I know. Blame Ubisoft or something.
(THIS IS IMPORTANT) Another Addendum to a Guide No One Uses
If you want to use the Steam Controller’s Xinput Emulation with this game, you also need to have a compatible wired Xbox 360 Controller plugged in. Absolutely incredible, Ubisoft.