Outer Wilds Wiki
Register
(fixing mapping description)
(Adding a screencast)
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
==Gamepads==
 
==Gamepads==
Outer Wilds is currently designed for the XBox360 gamepad, and none other.<br />You can patch mainData to address this.
+
Outer Wilds is currently designed for the XBox360 gamepad, and none other.<br />One bypass is to patch the game to address this.
 
===Patching the game to support your gamepad===
 
===Patching the game to support your gamepad===
  +
[[File:Patching Outer Wilds to support other gamepads|thumb|right|335 px]]
   
 
[https://gist.github.com/yazgoo/6373271 This ruby script] allows you to use your own gamepad. Here is how to proceed to have it work with your gamepad.
 
[https://gist.github.com/yazgoo/6373271 This ruby script] allows you to use your own gamepad. Here is how to proceed to have it work with your gamepad.
 
#First,[https://www.ruby-lang.org/en/downloads/ install ruby ]
 
#First,[https://www.ruby-lang.org/en/downloads/ install ruby ]
#Then, [https://gist.github.com/yazgoo/6373271/download download the script]
+
#Then, [https://gist.github.com/yazgoo/6373271/download download the script] (it is the .rb file included in the archive (you can use [http://www.7-zip.org/ 7-zip] to open it))
 
#Put the script next to OuterWilds_7-30-13_Data
 
#Put the script next to OuterWilds_7-30-13_Data
#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
+
#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.
#You then need to find the ID for each button or axis. If you are using linux, you can use the [http://atrey.karlin.mff.cuni.cz/~vojtech/joystick/ joystick library]
+
#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.
  +
##If you are using windows, you can use [https://github.com/yazgoo/jstest-windows/raw/master/jstest.exe jstest.exe] (from [https://github.com/yazgoo/jstest-windows 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).
  +
##If you are using linux, you can use jstest from the [http://atrey.karlin.mff.cuni.cz/~vojtech/joystick/ joystick library]
 
#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
 
#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
 
#launch OuterWilds_7-30-13 and check if your mapping works.
 
#launch OuterWilds_7-30-13 and check if your mapping works.
  +
#When you have a working configuration, please consider posting it here.
  +
 
===mapping configurations===
 
===mapping configurations===
Here is a list of mapping.rb that have been used, for well defined controller:
+
Here is a list of mapping.rb that have been used, for well defined controllers:
   
====Logitech RumblePad 2 USB====
+
====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
 
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
 
{
 
{
X => 0,
+
:Horizontal => 0,
  +
:Vertical => 1,
 
A => 1,
+
:Y => 3,
  +
:X => 0,
 
DPadUp => 4,
+
:B => 2,
  +
:A => 1,
 
RightStickClick => 11,
+
:DPadUp => 4,
  +
:RightStickClick => 11,
 
LookX => 2,
+
:LookX => 2,
  +
:LookY => 3,
 
LookY => 3,
+
:LeftBumper => 4,
  +
:RightBumper => 5,
 
Start => 9,
+
:Start => 9,
  +
:RightTrigger => 8,
 
RightTrigger => 8,
+
:LeftTrigger => 5,
+
}
  +
LeftTrigger => 5,
 
  +
====DragonRise Inc.   Generic   USB  Joystick (analog mode)====
  +
Tested with the french ISP named [https://lafibre.info/images/free/201102_FreeBox_revolution_gamepad.jpg "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,
 
}
 
}

Latest revision as of 21:00, 31 August 2013

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

Patching_Outer_Wilds_to_support_other_gamepads

Patching Outer Wilds to support other gamepads

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.
    1. 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).
    2. If you are using linux, you can use jstest from the joystick library
  6. 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
  7. launch OuterWilds_7-30-13 and check if your mapping works.
  8. 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,
}