Author Topic: bindED - Copy Elite: Dangerous key bind files (.binds) to VoiceAttack variables  (Read 11546 times)

Racerx59

  • Newbie
  • *
  • Posts: 6
I don't know what I am doing wrong but I can not get the bindED plugin to work. It shows up in voiceattack as enabled. That's all I get. So what is next. How do I use it? What files do I need to use? Maybe I don't fully understand the plugin function. My understanding is that it takes the bindings file and makes a VAP file out of it. If that's the case, where is it.
Any help would be greatly appreciated.

Pfeil

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1051
  • RTFM
I don't know what I am doing wrong but I can not get the bindED plugin to work.
Have you read the very first post in this topic, which contains the instructions on how to use this plugin?

Racerx59

  • Newbie
  • *
  • Posts: 6
Help with bindED - Not working for me
« Reply #22 on: April 05, 2017, 04:31:31 pm »
I'm having a problem getting the bindED plugin working. I am following the instructions but perhaps I missed something. The plugin does show as available. But what do I do after that? Is there a file I have to modify? I don't see any indications that the plugin is working or doing what its supposed to do.

Help would be greatly appreciated. I am not using the registered version. I have been waiting to see if this plugin works before buying. Plugin sounds really useful and a time saver.

Pfeil

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1051
  • RTFM
The basic steps are as follows:
  • Install the plugin(which you've done already)
  • Create and run a command that calls the plugin to load the keypress values into VoiceAttack variables
  • Create a command that uses the "Variable Keypress" feature of the "Keypress" action
  • Save your profile and use it
All of these steps are explained in greater detail in the first post.

The plugin doesn't produce any files, .vap or otherwise. It loads the binds from the game into VoiceAttack variables so you can reference them by function rather than by keypress directly.


Can you tell me which step you're having trouble with? Because from what I can see the heading "Using the bindED plugin" explains exactly what you need to do next.
« Last Edit: April 05, 2017, 05:18:52 pm by Pfeil »

Racerx59

  • Newbie
  • *
  • Posts: 6
I have read the instructions. I think I am following them correctly. Perhaps I read the wrong post. I only get as far as getting the plugin recognized. Not sure what the first post is. Perhaps this is the confusion. Under the instructions I found I never found anything regarding what you mentioned below. How do I make it a Variable Keypress? I don't see that anywhere.

The basic steps are as follows:

    Install the plugin(which you've done already)
    Create and run a command that calls the plugin to load the keypress values into VoiceAttack variables
    Create a command that uses the "Variable Keypress" feature of the "Keypress" action
    Save your profile and use it


I followed these instructions below from the text file:
Using the bindED plugin
--------------------------------------------------------------------------------------------------------------------------------

To use the plugin, you will need to do a few things. 

1)  First, you will need to turn on plugin support in VoiceAttack.  This is done from the Options screen.

2)  Next, you will need to create a command in VoiceAttack to call the bindED plugin which (optionally) includes the Elite: Dangerous binds file that you want to use.
    To do this, add a new command and then click on Other -> Advanced -> Execute an external plugin function.

3)  In the new plugin action screen, select the, 'bindED' plugin from the Plugin list (bindED will be available if you had turned on plugin support and had installed
    the bindED plugin correctly).

4)  There are two routes you can take here.  If you only have ONE binds file, and you want the bindED plugin to try to access your .binds file that is located
    in  C:\Users\YOUR_USER_NAME\AppData\Local\Frontier Developments\Elite Dangerous\Options\Bindings, simply leave the, 'Plugin Context' box blank.
    The plugin will simply grab the NEWEST .binds file it finds in that directory and use it.

    If you have MULTIPLE binds files for different situations, OR, the default behavior indicated above does not meet your need, you can specify which binds
    file the bindED plugin is to access by typing or pasting the full path to the binds file that you want to use in the 'Plugin Context' box:
   
    Selecting the, 'Wait for the plugin to finish...' option is up to you.  Generally this should run very quickly, but if you have a situation where things need
    to occur in a very specific order, select that option.







Pfeil

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1051
  • RTFM
If you run the command you just made, it should populate the variables listed at the bottom of the first post with data.

To check that this has happened, you can run a command containing a "Write a Value to the Event Log" action that uses a token to output the value of one of those variables:
Code: [Select]
Write '[Purple] {TXT:edBackwardKey}' to log

Note that you need to run the command that calls the plugin every time you start VoiceAttack, as the variables are not retained.

How do I make it a Variable Keypress? I don't see that anywhere.

You click the "Key Press" button on the left hand side of the action list within the "Add a Command" window, then check the "Variable Keypess (Advanced)" checkbox, and enter the name of the variable containing the keypress in the textbox below that.

Racerx59

  • Newbie
  • *
  • Posts: 6
I'm still missing something. What is the purpose of the plugin? I thought the purpose is to take the bindings file and convert it to a VAP file. Am I mistaken about that? I just did not realize that I had to manually enter every single command as a key press variable. I thought it was supposed to be a simple way of making voice commands out of the bindings file.

Pfeil

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1051
  • RTFM
I'm still missing something. What is the purpose of the plugin? I thought the purpose is to take the bindings file and convert it to a VAP file. Am I mistaken about that?
The plugin doesn't produce any files, .vap or otherwise. It loads the binds from the game into VoiceAttack variables so you can reference them by function rather than by keypress directly.

I thought it was supposed to be a simple way of making voice commands out of the bindings file.
The idea is to make the keybinds within VoiceAttack correspond to the ingame binds.
It's mainly relevant if you intend on distributing your profile, in which case you can't be sure everyone is using the same binds.
This plugin automatically fetches the ingame binds so the users of your profile don't have to go in and change every nonstandard bind manually.

Gary

  • Administrator
  • Hero Member
  • *****
  • Posts: 1261
Quote
The bindED plugin was created to copy the keyboard key bind information for Elite: Dangerous directly into VoiceAttack keypress variables.  The variables can then be used in conjunction with key press actions within VoiceAttack (the latest betas of VoiceAttack allow for keypresses based on variables). 

The idea is to be able to change your key bindings from within Elite: Dangerous and have each change be reflected (semi-automatically) in VoiceAttack, possibly saving some time and/or hair loss.

The bindED plugin doesn't generate commands.  It allows you to have a commands that base their key presses on values read from Elite Dangerous' binds files.  For instance, without bindED, you would have a command that looks like this:

Say, 'Landing Gear'
Press the, 'L' key and release

Real simple... this just presses the, 'L' key and deploys the landing gear in your game.  Works great... right up until you decide in ED that you want the, 'X' key for your landing gear.  The next time you say, 'landing gear', nothing will happen because VA will be pressing the, 'L' key.  You would have to open up VA and edit every command that uses the, 'L' key for landing gear (you'll probably only have one command for manipulating your landing gear, but this is just an example... just pretend you're one of these immersion fans and you have 32 different commands that can deploy your landing gear ;)).

With bindED, you can specify a variable in the place of the, 'L' key:

Say, 'Landing Gear'
Press variable key [edLandingGearToggle] and release  (or however its done)

The value in edLandingGearToggle will automatically be changed to be whatever is in the specified binds file.  So, if you change the landing gear bind in-game from 'L' to, 'X', the plugin will pick that up.  So when you say, 'landing gear', 'X' is pressed (or whatever key you specify).



Gary

  • Administrator
  • Hero Member
  • *****
  • Posts: 1261
Pfeil.does.not.sleep.ever.


Ever.


:D

Racerx59

  • Newbie
  • *
  • Posts: 6
I think I got it. Last thing regarding the variables to use.  Do I use the variables from the "Variable List Reference" or can I use my own.
Most likely I have to use the ones from the Variable List Reference since they match the bindings file.

Pfeil

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1051
  • RTFM
Do I use the variables from the "Variable List Reference" or can I use my own.
As described in the plugin documentation, it uses the names the the developer of Elite: Dangerous uses in their settings file, just with "ed" prefixed to them.

If you want to use different names, you'll have to set a new variable to the value of one of the variables the plugin creates.

Racerx59

  • Newbie
  • *
  • Posts: 6
I finally got it. Thanks for your help.

Wolf6463

  • Newbie
  • *
  • Posts: 1
Hello, I am a Noob to this and cannot get my binds to load into VoiceAttack and I have tried to do it by creating a new command and tell it where to get it and it looks like I am blocked from creating this command please any help.... Thnx...

Pfeil

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 1051
  • RTFM
What exactly isn't working?

If you see a "Plugin 'bindED' initialized" message when VoiceAttack starts, you should be able to add an "Execute an External Plugin Function" action to any command, select the bindED plugin, and either put the path to the file into the "Plugin Context" box(if you have multiple .binds files and want to select a specific one, or a nonstandard location), or leave the "Plugin Context" box blank(if your .binds file is in the "C:\Users\YOUR_USER_NAME\AppData\Local\Frontier Developments\Elite Dangerous\Options\Bindings" folder).

Executing the command should then populate a number of variables within VoiceAttack; You can verify this using a "Write a Value to the Event Log" action:
Code: [Select]
Write '[Purple] {TXT:edPause}, {TXT:edEjectAllCargo}, {TXT:edChargeECM}' to log
At least one of those should say something other than "Not Set"(unless I randomly chose three options that have no keys bound to them, check ingame whether that's the case if it doesn't work).

wilkie79

  • Newbie
  • *
  • Posts: 10
Yeah, would be interesting to share keyboard layouts. Will see, if I need to make a german one by myself and have the time for it in the next days than I will upload it and post the link here.

Want to take some time to make a better ED Profile for me for the release of 2.3.

Will there be a update for ED 2.3 for this plugin? I'm sure there are new keys for MultiCrew etc. I know for now it is too early, the 2.3 Beta started today (downloading it right now). ^^

Found this for UK virtual keycodes

https://stackoverflow.com/questions/36666868/uk-keyboard-virtual-key-code-for-the-symbol