1. Adds Quicksave, Autorun and Draw/Sheathe weapon (for Faster Movement Speed mod) features to controller that are previously exclusive in mouse&keyboard control option.
2. Swaps Search from L3 to d-pad-right, because personally I find it reasonable to map a frequently-used button to a more accessible one instead of pressing L3 every seconds or so.
3. Works on 360/One controllers, potentially others as well.
4. Contains instructions on how to create your own customized layout in case you have a different scheme in mind.
Features added:
L3: Quicksave
R3: Autorun
LT: Draw/Sheathe weapon
d-pad-right: Search
“Install” option (1):
Open ProfileOptions_profile in game save folder with Notepad, add the following after the last line of that file:
GstKeyBinding.player.ConceptQuickSave.1.axis 24
GstKeyBinding.player.ConceptQuickSave.1.button 10
GstKeyBinding.player.ConceptQuickSave.1.negate 0
GstKeyBinding.player.ConceptQuickSave.1.type 2
GstKeyBinding.player.ConceptSearch.0.axis 24
GstKeyBinding.player.ConceptSearch.0.button 3
GstKeyBinding.player.ConceptSearch.0.negate 0
GstKeyBinding.player.ConceptSearch.0.type 2
GstKeyBinding.player.ConceptToggleAutoRun.1.axis 24
GstKeyBinding.player.ConceptToggleAutoRun.1.button 11
GstKeyBinding.player.ConceptToggleAutoRun.1.negate 0
GstKeyBinding.player.ConceptToggleAutoRun.1.type 2
GstKeyBinding.player.ConceptToggleSheatheWeapon.1.axis 24
GstKeyBinding.player.ConceptToggleSheatheWeapon.1.button 14
GstKeyBinding.player.ConceptToggleSheatheWeapon.1.negate 0
GstKeyBinding.player.ConceptToggleSheatheWeapon.1.type 2
Yes, it does not require you to download anything, but you can download if you want to endorse this mod.
Install option (2):
Download the ProfileOptions_profile and replace your own in the save folder.
Since ProfileOptions_profile is the entire option file, you will need to revert the other settings (gameplay, display, graphics settings etc) back to your liking.
Tradeoffs:
This mod is toadd features directly to gamepad control, not to map mouse&keyboard control to gamepad via Xpadder, so some tradeoffs have to be made.
LT is already coded to switching to the second set active abilities, and the initial few frames of weapon-drawing animation cannot be canceled, so if you use a certain abilities from the second set when weapon is sheathed, the character will attempt to draw weapon first, you may need to press the correspondence button twice and you will notice a slight delay before the ability can be executed. There’s no issue for executing the second set abilities when weapon is already drawn, either after manual drawing, or was triggered by executing first set abilities first.
R3 is also used to lock-on & cycle targets, so if you lock-on a faraway target when standing stationary, you may trigger Autorun, but it’s not a big deal because Autorun is canceled whenever left stick is moved.
L3 will make mount Sprint and Quciksave at the same time.
May only work with 360/One controller, though you can always customize your own scheme to make it work with your controller and modify features that suit your needs.
Instructions on how to customize your own scheme:
When you open ProfileOptions_profile using Notepad, you will find there’re many lines which look like this:
GstKeyBinding.player.ConceptSearch.0.axis 24
GstKeyBinding.player.ConceptSearch.0.button 3
GstKeyBinding.player.ConceptSearch.0.negate 0
GstKeyBinding.player.ConceptSearch.0.type 2
GstKeyBinding.player.ConceptSearch.1.axis 0
GstKeyBinding.player.ConceptSearch.1.button 47
GstKeyBinding.player.ConceptSearch.1.negate 0
GstKeyBinding.player.ConceptSearch.1.type 0
The 8 lines are how the Search key is configured and read by game. The first 4 lines are for 360 controller, distinguished by “axis 24” and “type 2”; the 4 lines below are for mouse&keyboard, distinguished by “axis 0”(though there’re other “axis #” which also represent mouse&keyboard) and “type 0” (there could be more “type #” which also represent mouse&keyboard).
Notice each 4-line uses a different number in the middle: the 4-line above use 0, the 4-line below use 1. Those are meant to separate the two control options-controller or mouse&keyboard. The number itself doesn’t matter, as long as they’re different.
Below is how 360 controller buttons are called by the game:
d-pad-up: button 0
d-pad-down: button 1
d-pad-left: button 2
d-pad-right: button 3
Y: button 4
A: button 5
X: button 6
B: button 7
L3: button 10
R3: button 11
Start: button 12
Select: button 13
LT: button 14
RT: button 15
LB: button 16
RB: button 17
If you’reusing a different controller other than 360, the # within “axis #” and “type #”, which are to identify controller types, as well as “button #”, which is how buttons are assigned could be different, so you have to find out those # on your own.
Below is an example of how to add ToggleSheatheweapon feature to d-pad-right on 360/One controller:
GstKeyBinding.player.ConceptToggleSheatheWeapon.1.axis 24
GstKeyBinding.player.ConceptToggleSheatheWeapon.1.button 3
GstKeyBinding.player.ConceptToggleSheatheWeapon.1.negate 0
GstKeyBinding.player.ConceptToggleSheatheWeapon.1.type 2
Comments:
Why not create an Xpadder file to map mouse&keyboard to controller instead?
DAI has redundant and unnecessarily complicated mouse&keyboard layout while having a relatively good controller support like never before, so I decided to side with the controller this time, unlike when I was mapping for Project Nevada of Fallout New Vegas.
Useful links for modifying your game:
Status editor cheat engine table (download link is in the 1st post)
Tutorial on how to use it
Note: You might encounter a weird issue in which the active ability buttons for gamepad are not working after using the mentioned status editor if HUD Visibility is set to Always On, if that’s the case, just change the HUD Visibility to Contextual, save quit, then load your game, change back to Always On.