If ever you’ve started Elite Dangerous only to find all your custom controller settings are gone, this guide is for you.
What we’re going to do is stop using the ‘Custom’ keybind, and instead create our own file which the game won’t delete or replace.
Table of Contents
Elite Dangerous has a range of preset keybinds files included with the game, and most Commanders select one and begin to make their own changes to it. E.g. the X-52 or Hotas-X.
This creates a keybind file called ‘Custom’ with that name also updated internally.
The problem is, if you load the game without the same controller plugged in, Elite will default to another preset (for example, keyboard and mouse) and the second you make a change to this one, your previous Custom file is overwritten.
(The solution is to plug in the Controller and select Custom from the dropdowns in each controls category before you make any changes, but most Commanders do not realise this.)
What we’re going to do is take your Custom keybinds file – once you have the controls to your liking – and rename it so it never disappears and can always be selected from the drop-down list of presets in future.
Copying Your Existing Custom Keybinds File
Step 1. go to %LocalAppData%\Frontier Developments\Elite Dangerous\Options\Bindings
Important: the Custom keybinds file won’t even exist until you modify at least one setting.
Step 2. Duplicate Custom.3.0.binds (Horizons) and Custom.4.0.binds (Odyssey)
Just drag the files elsewhere in the same folder and release.
Step 3. Rename the new duplicates to (for example) My.3.0.Binds and My.4.0.Binds
Now that you’ve copied the keybinds files, we need to edit them.
Edit Your Keybinds Files
Right now, your newly-copied files still have internal name of ‘Custom’. This means they’ll show in the drop-down in-game, but you’re going to end up with two of them … both called Custom.
This section will show you how to change the internal name of your new keybinds.
Step 4. Edit the two new My.x.x.Binds files with Notepad
Step 5. Change <Root PresetName=”Custom” near the start of the file to <Root PresetName=”NewStringHere” This step is really important.
What you put in there instead of ‘NewStringHere’ is up to you, but I wouldn’t use spaces, non-ascii or long strings. Also, do not use something which is a standard, existing name – like TMasterX or Xbox360 or Thustmaster or similar. (I use My_G940.)
Step 6. Save both files out
Using Your New Keybinds Files
When you open Odyssey and enter the Controls section, you will see four categories. In each case, the listed Preset should be CUSTOM.
Go into each category and select your newly-named preset from the dropdown list.
After you’ve done so, the four sections should display your new preset as per this image. (In my case, MY_G940)
If ever you load your game in future and your keybinds have been reset, make sure all controllers you used for that preset are plugged in and then go into each of the four controls categories and select your own preset from the dropdown again. Simple!
Horizons 3.8 is similar, except there’s only one preset to select.