Gamepads

Gamepads
Outer Wilds is currently designed for the XBox360 gamepad, and none other. One bypass is to patch the game to address this.

Patching the game to support your gamepad
This ruby script allows you to use your own gamepad. Here is how to proceed to have it work with your gamepad.
 * 1) First,install ruby
 * 2) Then, download the script (it is the .rb file included in the archive (you can use 7-zip to open it))
 * 3) Put the script next to OuterWilds_7-30-13_Data
 * 4) Run the script a first time with ruby (for example via the command "ruby owcontroll.rb"). This will create a default mapping configuration (in mapping.rb), which describes which key name in the game corresponds to which key ID. First, find if your controller mapping configuration is listed in the mapping configurations below. If it is the case, you can use it and directly jump to 6.
 * 5) You then need to find the ID for each button or axis. To do that, you can use a gamepad test tool: you plug your controller, run it, and note the button or axis IDs which are displayed.
 * 6) If you are using windows, you can use jstest.exe (from this project, see README for how to use it). It currently detects only 4 axes out of 6 (so you'll have to deduce the remaining axes numbers).
 * 7) If you are using linux, you can use jstest from the joystick library
 * 8) Once your configuration is done, you can launch the script a second time. This will copy OuterWilds_7-30-13_Data/mainData to OuterWilds_7-30-13_Data/mainData.orig and modify your key mapping in mainData
 * 9) launch OuterWilds_7-30-13 and check if your mapping works.
 * 10) When you have a working configuration, please consider posting it here.

mapping configurations
Here is a list of mapping.rb that have been used, for well defined controllers:

Logitech Logitech RumblePad 2 USB
This is not perfect: the right and left trigger use the four-way digital cross top and bottom, the light (DPadUp) is enabled via the cross right {    :Horizontal => 0, :Vertical => 1, :Y => 3, :X => 0, :B => 2, :A => 1, :DPadUp => 4, :RightStickClick => 11, :LookX => 2, :LookY => 3, :LeftBumper => 4, :RightBumper => 5, :Start => 9, :RightTrigger => 8, :LeftTrigger => 5, }

DragonRise Inc.   Generic   USB  Joystick (analog mode)
Tested with the french ISP named "free" gamepad. To use this controller, you need to put it in analog mode (analog button). Same controls as logitech rumblepad 2. {      :Horizontal => 0, :Vertical => 1, :Y => 0, :X => 3, :B => 1, :A => 2, :DPadUp => 5, :RightStickClick => 11, :LookX => 3, :LookY => 4, :LeftBumper => 4, :RightBumper => 5, :Start => 9, :RightTrigger => 8, :LeftTrigger => 6, }

Thrustmaster T Mini Wireless
{    :Horizontal => 0, :Vertical => 1, :Y => 3, :X => 0, :B => 2, :A => 1, :DPadUp => 4, :RightStickClick => 11, :LookX => 2, :LookY => 3, :LeftBumper => 4, :RightBumper => 5, :Start => 9, :RightTrigger => 8, :LeftTrigger => 5, }