Just need the configs? go the to TL;DR
The Problem We're Trying to Solve
Using multiple joysticks on Windows can be a huge pain. There is no guarantee of the input device order when your machine reboots or when they're plugged, even if you follow the same order every time. This is compounded for Star Citizen where you're asked to remove the USER folder each time there is an update, and the configuration interface has a long way to go before it's not a pain to use.
In addition to the difficulties that arise with Windows, each game allows for varying levels of controller input configuration that might night suite our needs. In Star Citizen's case, it doesn't allow binding multiple inputs to the same action, for example, if I wanted to have a Ship Lights toggle on my throttle as well as my joystick.
Luckily, there has been a lot of effort into creating configuration tools that exist outside of games to fine tune your setup, and setup configurations that might not even be possible within the game itself.
The goal of this guide is to help you get some base configurations and tools installed, and give you enough understanding of the components to tweak and build your own configurations. I'll be supplying my configurations as a quick starting off point though.
- Left Joystick
- Right Joystick
In Star Citizen, I like to use a HOTAS (Hand On Stick And Throttle) setup while cruising, and a HOSAS (Hand On Stick and Stick) while dogfighting, or when I need more fine control over my movements.
One of the first issues we run into with a configuration like this is that Star Citizen doesn't allow you to bind multiple inputs to the same action. For example, I want to be able to strafe forward/back/left/right using the left joystick as well as the mini-stick on the front of the throttle. By setting up everything outside of the game, we can create configurations like this quite easily.
To get started, we need to install a few tools and drivers. We'll only need to do these steps once. We'll be using three tools for our setup.
- Joystick Gremlin
vJoy is a virtual joystick device for windows that is going to allow the inputs from all of our separate physical devices to be mapped to a single virtual device. This makes the configuration in-game much easier and consistent since we don't have to worry about our device IDs on windows changing every time we reconnect them.
Just because we're mapping the inputs from our physical devices to vJoy doesn't mean that games don't stop seeing the original inputs too. This means that you'll have a difficult time guaranteeing that you can get the game to only use the vJoy inputs, rather than the device inputs. To solve that issue, we're going to use a Windows filter driver called HidGuardian which acts as a sort of firewall, only allowing configured applications to see specific devices.
Note: If HidGuardian does not work well on your system, there is a work around for Star Citizen at least. SC will only see devices that are present when it is launched. Therefore you can launch SC, then attach your devices. You'll still have to make sure they are loaded correctly in JG, however
The easiest way to install HidGuardian is to use WhiteKnight utility. You don't need to follow the directions, just download the tool and follow these:
- Extract WhiteKnight
- Run AutoWhitelister.exe
- Click Install next to HidGuardian Install state: Not Installed
- Close WhiteKnight
Note: If you'd rather install this manually, you can follow the instructions on vigem's forums here
Installing vJoy is a more straight forward matter:
- Install the latest vJoy release. Use the jshafer817 branch if you're running the latest version of Windows 10
- Run Configure vJoy from the Start menu
- Make sure the Enable vJoy box is checked at the bottom left of the window
- vJoy Device 1
- Ensure all of the Axes boxes are checked
- Set Number of Buttons to 64
- Set POV Hat Switch to Continuous, and select 4 for POVs
- All options in Force Feedback should be unchecked
- Click Apply
Note: While you can definitely setup multiple vJoy devices, you could run into the same problem of your game not correctly ordering them, so beware.
Install Joystick Gremlin
- Launch Joystick Gremlin in admin mode
- Under the Tools menu, click Options
- Select the HidGuardian Tab
- Check boxes for each device type you want to use. For my setup, I have a box for T.16000M and a box for TWCS Throttle
- Select the HidGuardian Tab
- Unplug all of your devices
- Plug your devices back in
Because we're using HidGuardian, Joystick Gremlin must always be run as an administrator. To make this easier, we can modify the shortcut so that it will always start that way.
- Open Start and find Joystick Gremlin
- Right-click the shortcut and select Properties
- Select the Compatibility tab
- Check the box for Run this program as an administrator
- Click Apply and OK
Note: If you ever run Joystick Gremlin and down see your joysticks, double check that you're running it as an administrator.
At this point, Joystick Gremlin should have a tab for each of your devices in its main window, as well as a Keyboard, vJoy Device #1 and Settings tabs.
Launch the Set up USB Game Controllers tool from the Start menu, and you should see vJoy Device, and none of your joysticks you configured in HidGuardian tab in Joystick Gremlin.
Now that the groundwork is all done. We'll continue the guide in part 2.
Need Help? Have an issue/comment? Feel free to join my Discord: https://discord.gg/CVBMxJq