Is there a way to tell the game with which bindings to launch?

I usually play in VR with all bells and whistles connected, but sometimes I just launch the game in 2D just to check something or maybe to fiddle about in outfitting or move the carrier, and when I do that, my HOSAS is usually not connected. Now every time I launch the game without the HOSAS connected, the game defaults to the M+K bindings and writes that into the bindings startup file. Next time I start with my HOSAS connected, I have to of course reset the controls to my HOSAS bindings file. This sucks.

Is there a convenient way to tell the game which bindings to try to load without fiddling with batch files and renaming / copying different startup preset files?
 
Okay, I updated my old installation of EDProfiler, found the bindings settings. Not too sure if it had that back when I used it - probably not.

It might be a bit overpowered though. My graphics settings are a fickle mistress I don't want to mess with.... not even accidently.
 
bung a copy of your binding folder to desktop when playing in vr mode
when finnisshed doing whatever with controllers unpplugged
copy and paste it back to where it belongs with all controllers plugged back in first and restart the game
 
have you read my original post? I was asking if there was a convenient way like a command line switch instead of fiddling with replacing files. I know I can keep copying and pasting, that is beside the point of the question.
 
Having thought about this while cracking some rocks, I guess I'll just add a small batch to my min-ed-launcher config to brute force overwrite the startup file every time I launch the game through the min-ed-launcher. It's not elegant and I don't really like solutions like that, but it'll do.

Thanks for chiming in.
 
I don't really understand why even after 10 years they still haven't figured out a sane way to handle keybinding settings.

The default behavior is completely asinine. In other words, if you have had a USB joystick or controller connected and configured custom keybinds for it, and then one day make the mistake of launching the game without it connected, the game just happily defaults all your keybind settings without even asking. Then when you later launch the game with the controller connected, all your keybinds are gone and you'll have to to configure them again. This is absolutely asinine.

There's the officially undocumented trick of manually creating a separate keybindings config file (described in the pinned comment in this very subforum) which "protects" your custom settings from being silently overwritten by the game. But still, even though it's not as destructive, the behavior is asinine: Again, if you make the mistake of launching the game without the controller connected, the game will silently switch to the default keybinds config file (probably restoring it to defaults if it wasn't already, I would assume). Then when you launch the game with the controller connected it will not automatically switch back to your custom keybinds, but you need to go through all four keybinds categories in the game's settings and re-select your custom bindings.

I have never seen any other game do this kind of thing.

That's not how it should work, and no other game works like this. It's great that the game supports distinct keybind config files (something that few games do), but this support is very lacking (there's no way to create new custom config files from within the game, and you have to do this manually from outside the game, using a process that's officially completely undocumented) and, most importantly, the behavior of the game where it automatically resets and switches to the default config (and never switches back) depending on what's connected on your USB port, without asking or telling you, is asinine.

At a very minimum resetting keybinds to defaults should be done only as an explicit user action. The user clicking a button. It shouldn't be done automatically without asking. Resetting to defaults is an important feature (after all, your current custom settings might be completely unusable after a change in input devices), but it shouldn't be done automatically without asking or telling the user. At a minimum launch a popup that says something like "your previously used input device (name name) is not detected. Do you want to reset all keybindings to defaults?"
 
thats just not the proper frontier development way of doing things asking for permission from a user to make an adjustment to personanl files poppycock!
in permissions once ya binds are all nicley set dont make the file read only;)(do not forget to make it writable again if you do wanna change something)
go to jail
do not pass go
do not collect £200
 
Last edited:
There's the officially undocumented trick of manually creating a separate keybindings config file (described in the pinned comment in this very subforum) which "protects" your custom settings from being silently overwritten by the game. But still, even though it's not as destructive, the behavior is asinine: Again, if you make the mistake of launching the game without the controller connected, the game will silently switch to the default keybinds config file (probably restoring it to defaults if it wasn't already, I would assume). Then when you launch the game with the controller connected it will not automatically switch back to your custom keybinds, but you need to go through all four keybinds categories in the game's settings and re-select your custom bindings.
The behaviour certainly is weird and has been even worse in the past.
However, for the last while (year or more? not sure) the game has behaved a little bit less crappily: when you do the thing mentioned in the paragraph above, I personally find that it now automagically switches to your chosen bindings if you just plug in the missing device(s). I'm not certain if that still works if you exit the game while the "wrong" bindings are active - i.e. I'm not sure if the behaviour in bold is what currently happens. For sure though, if you have a named personal bindings file, it does somehow work "correctly" now on a re-plug without exiting the game.
 
The behaviour certainly is weird and has been even worse in the past.
However, for the last while (year or more? not sure) the game has behaved a little bit less crappily: when you do the thing mentioned in the paragraph above, I personally find that it now automagically switches to your chosen bindings if you just plug in the missing device(s). I'm not certain if that still works if you exit the game while the "wrong" bindings are active - i.e. I'm not sure if the behaviour in bold is what currently happens. For sure though, if you have a named personal bindings file, it does somehow work "correctly" now on a re-plug without exiting the game.
I wrote my post based on my own recent experience with that very thing. I launched the game without turning my Xbox controller on (even though it uses Microsoft's wireless USB dongle, apparently you have to turn the controller on in order for the dongle to activate, or at least I assume), and ED had reverted to the default keybinds config file (turning the controller on while ED was running didn't make it use my custom config rile again). That's when I noticed that I had to go through all four keybinds categories and re-select my custom config file in each.
 
Yes. Basically, in the same folder where bindings are stored, there is a file called "StartPreset4.start", it only contains the names of 4 binding files (general, ship, srv & on foot). I made a copy of my custom.binds file and gave it a unique name, and in my "StartPreset4.start" file, it simply has my binding file repeated on 4 lines (without the ".binds").
The folder is: C:/Users/"your user name"/AppData/Local/Frontier Developments/Elite Dangerous/Options/Bindings

When you give your bindings a unique name and in the folder stated above, it is always there. So if its unplugged one time, yes it wont load up. But when its plugged back in, then everything is back to normal automatically.

I forgot, i also have my bindings file copied to:
C:/Users/"your user name"/AppData/Local/Frontier_Developments/Products/elite-dangerous-odyssey-64/ControlSchemes/

Actually, just had another thought, I have my hotas setup via virtual controllers using vjoy and joystick gremlin. Thats the more likely reason they're persistent.
The benefit of using virtual game controllers.

Hopefully you'll find something i've said useful.
 
Last edited:
Yes. Basically, in the same folder where bindings are stored, there is a file called "StartPreset4.start", it only contains the names of 4 binding files (general, ship, srv & on foot).
Yep, that's the file I was talking about.

When you give your bindings a unique name and in the folder stated above, it is always there. So if its unplugged one time, yes it wont load up. But when its plugged back in, then everything is back to normal automatically.
I personally find that it now automagically switches to your chosen bindings if you just plug in the missing device(s). I'm not certain if that still works if you exit the game while the "wrong" bindings are active
I am not too sure at which point, but the StartPreset file gets changed at one point if you actually play and then exit the game. That's the issue I have - if you play without your preferred controller connected, it will load the default KBM binds, and if you exit the game, it will put those as the default to load next time you launch. Annoying.

Actually, just had another thought, I have my hotas setup via virtual controllers using vjoy and joystick gremlin. Thats the more likely reason they're persistent.
Could be, vjoy is after all an abstraction layer between the software and your hardware.

The benefit of using virtual game controllers.
Meh, I don't like that.

Hopefully you'll find something i've said useful.
Happy about any input, always ;).


My solution is of course now the unelegant brute force one, I've saved two small batch files that just overwrite the StartPreset file with whatever I bindings I need when playing with and without my HOSAS. I can run them manually from my ED startup collection folder (I have a folder on my Desktop with shortcuts to all the tools I might need in an ED session), and I run the one to load the HOSAS binds from my main min-ed-launcher automatically.

As I said, unelegant and brute force. I was hoping for something better, but here we are.

Thanks for brainstorming with me!
 
Yep, that's the file I was talking about.



I am not too sure at which point, but the StartPreset file gets changed at one point if you actually play and then exit the game. That's the issue I have - if you play without your preferred controller connected, it will load the default KBM binds, and if you exit the game, it will put those as the default to load next time you launch. Annoying.


Could be, vjoy is after all an abstraction layer between the software and your hardware.


Meh, I don't like that.


Happy about any input, always ;).


My solution is of course now the unelegant brute force one, I've saved two small batch files that just overwrite the StartPreset file with whatever I bindings I need when playing with and without my HOSAS. I can run them manually from my ED startup collection folder (I have a folder on my Desktop with shortcuts to all the tools I might need in an ED session), and I run the one to load the HOSAS binds from my main min-ed-launcher automatically.

As I said, unelegant and brute force. I was hoping for something better, but here we are.

Thanks for brainstorming with me!
vjoy & joystick gremlin basically does exactly what TARGET does, which is the recommended software for my hotas. I just didnt get on with TARGET.
Changing to virtual controllers was such a great decision, it has done wonders. I even have the game pad i use for other games on vjoy now too. Before i was always having to unplug things depending on the game i was playing, but now everything can stay plugged in.
After creating the vjoy devices, i just did a 1:1 copy of each device to each vjoy device in Joystick gremlin, used HidHad to hide the physical hotas devices from everything except Joystick Gremlin, then edited the .binds file using find & replace to swap out the devices to vjoy, and it worked straight away.
 
Last edited:
vjoy & joystick gremlin basically does exactly what TARGET does, which is the recommended software for my hotas. I just didnt get on with TARGET.
The recommended software for my controllers is... none 😁. With the VKB stuff, you don't need any middleware software to add functionality. There is a software to program the sticks, but no additional software to run, everything the sticks can do is saved and run on the stick's mictrocontroller. That way I can plug it into any system and not have to transfer any configuration or reprogram the software. I like that.
 
Thats way to rich for my blood, i would have one of those in a heart beat, but would probably still use it with virtual controllers.

Ive used my hotas for years without any extra software, just plugged in and setup in elite. But to do any velocity curves and what not, you have to use the software. Id clocked about 52 weeks of game time in elite before becoming curious about velocity curves, which is why I originally switched to virtual devices. Little did i know of the other benefits at the time.
 
Thats way to rich for my blood, i would have one of those in a heart beat, but would probably still use it with virtual controllers.

Ive used my hotas for years without any extra software, just plugged in and setup in elite. But to do any velocity curves and what not, you have to use the software. Id clocked about 52 weeks of game time in elite before becoming curious about velocity curves, which is why I originally switched to virtual devices. Little did i know of the other benefits at the time.
The nice thing is that the velocity curves are done on the controller of the stick, and apply everywhere you plug them in. Do them once, never do them again.

Also I am sure there might be some latency concerns to think of doing it in software vs. hardware, but to be honest my brain is so slow I don't really care about that. Anyway, I am all for doing as much in hardware instead of using software solutions.
 
Back
Top Bottom