Author Topic: Elite EDDI-VA Profile Example  (Read 20005 times)

TetleyK

  • Guest
Elite EDDI-VA Profile Example
« on: June 27, 2016, 05:14:29 AM »
Here for you to use, if you so wish, is my example "EDDI Take command" VA profile.

Note that this command uses the EDDI Plugin and will not work without it installed.

This is one software developer's (my) take on how VA commands should be structured and although it looks over complicated, in reality it make things easier to maintain and extend.

There are 13 commands in the profile as follows:

Disable quet mode
Enable quiet mode
Full reset immediate
Profile startup
Quick ship status
Say disable quiet mode
Say enable quiet mode
Say good afternoon
Say good evening
Say good morning
Say text
Take command
Welcome commander

When imported in to VA, the 'Profile startup' command should be set to run when the profile is first loaded. This sets some variables and calls the EDDI start command.

There are two variables in this profile quiet_mode which is initially set to zero and use_eddi_for_say which is initially set to 1.

One major point to note. Most of the outputs, that is the commands that output text to the TTS engine are separate commands and start with 'Say' (except 'Say text'). These commands  set up a string which is passed to the 'Say text' command. This command is the only command that outputs the text as words. However, if quite_mode is 1 then nothing is output.

Also you can choose to have EDDI output the words or the default TTS engine depending on the setting of use_eddi_for_say.

You will also notice that all the commands are disabled except 'Disable quiet mode', 'Enable quiet mode', 'Full reset immediate' and 'Take command'. The disabled commands are only called from other commands.

In effect the profile has been separated into the input commands that trigger actions (the enabled commands), the logic such as 'Quick Ship Status' and 'Welcome', the output set up commands, which are the 'Say' commands except 'Say text' and the output command which is 'Say text'

Why do it this way? The answer to that is simple. Imagine having say statements in all your commands and then you wanted the option to have a quite mode. You would have to add the quiet mode check to all the commands that had a 'say'. In the commands in this profile, all the outputs go through one command 'Say text' and it is easy to add the quite mode in the one place as I have done, which you can see from the command.

You may also want to call some of the commands in other places. My own profile calls 'Full reset immediate' in more than one place and if I had the variable set commands in the start up profile I would either have to call the 'Prefile startup' command instead with possibly unpredictable results or I would have to duplicate the variable setup and if there's one thing a programmer hates it's duplication.

In my own profile I also have the key bindings as separate, disabled VA commands which are called from other VA commands as appropriate. Again this prevent duplication and if you should change your key binding in Elite, then there is only one place to change the key binding in VA.

If you have any questions or constructive comments then do not hesitate to post.

The profile may be downloaded from http://markausten.co.uk/files/eddi/eddi-take-command-profile.vap.

zen17h

  • Posts: 6
Re: Elite EDDI-VA Profile Example
« Reply #1 on: June 27, 2016, 07:14:06 AM »
EDDI plugin available at:
https://github.com/cmdrmcdonald/EliteDangerousDataProvider
(Download available from a link under 'Installing')

Frontier forum post for EDDI:
https://forums.frontier.co.uk/showthread.php/226649-EDDI-A(nother)-Voice-Attack-Plugin

sutex

  • Jr. Member
  • **
  • Posts: 91
Re: Elite EDDI-VA Profile Example
« Reply #2 on: October 25, 2016, 10:06:42 PM »
Your links are down again , use dropbox it's free
« Last Edit: October 25, 2016, 10:11:22 PM by sutex »

FireSammy

  • Newbie
  • *
  • Posts: 43
Re: Elite EDDI-VA Profile Example
« Reply #3 on: November 19, 2016, 10:51:33 AM »
Hey guys.
Could you please provide a one single "example command" for us noobs, how to actually create one command using the new EDDI 2 -version.

Been around the forums for over an hour now, and i simply cannot understand the instructions given. I used to do allniters like 8-10 hours fixing my old VA-profile but since EDDI came along i just quit. It's really great stuff especially now with the latest update, and everything updated and EDDI is online and all

But you people seem to be in a somekind of a "codebubble" as we normal mortals can't understand ****,- what you people are actually trying to say, how to actually make the commands using the new EDDI variables, etc... Since the EDDI loop, is no longer used. At least that was the impression from the new instructions to delete all old EDDI commands

Not to even mention about these ******* clipboard thingys??? You do type a lot. That takes time. How about screenshots, or even a bloody youtube video. 1 minute would do fine, or just as short as it takes you to make one while recording. We can use the pause key :P

This is incredibly frustrating and i'm about to quit again. I'm quite sure i'm not alone with this problem. One example please. ((EDDI undocked)) How to use it? ANY command?? HEEELP

Pfeil

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4781
  • RTFM
Re: Elite EDDI-VA Profile Example
« Reply #4 on: November 19, 2016, 11:18:18 AM »
From what I understand from the documentation, the plugin will run certain commands by name when an event occurs.

E.G. when you undock your ship, EDDI will attempt to run a command named "((EDDI undocked))" within VoiceAttack, and populate the Text variable named "EDDI undocked station".

So, you create a command with the name "((EDDI undocked))", for example:
((EDDI undocked))
Code: [Select]
Write '[Purple] Undocked from {TXT:EDDI undocked station}' to log
Will write a log message stating where you've undocked from, when you undock.


The clipboard refers to the Windows clipboard. When you copy something in Windows, either by right clicking and choosing "Copy" from the context menu, or pressing "CTRL-C", what you've copied is stored in the clipboard.

What this means in the context of EDDI is that rather than opening things directly in a browser, the URL(the link) will be stored in the Windows clipboard, and is accessible from within VoiceAttack using the "{CLIP}" token.
You could also press CTRL-V or click the right mouse button and select "Paste" from the context menu to access that data.

FireSammy

  • Newbie
  • *
  • Posts: 43
Re: Elite EDDI-VA Profile Example
« Reply #5 on: November 19, 2016, 11:35:42 AM »
Wow that fas a fast reply and a good one it is, thank you  :)

Still this does provide me only the "purple text" with the "event info" into the VA log box, but i still don't understand how it can be used:

1. How can i use this to execute some other command like: ((Departure undocking confirmed)) -which would execute a certain VA key command sequence i programmed it to do (i do have plenty of these)?

2. I did not understand the Clipboard copy -instructions. Sorry.  "{CLIP}" token. eeerh... what?  :o

EDITED: Ohh, wait a minute... So you mean all i need to do is create this ((EDDI undocked)) and execute my command straight from there, just like the "purple text" you just advised? :O
« Last Edit: November 19, 2016, 11:46:13 AM by FireSammy »

J. Calvert (Joshua)

  • Newbie
  • *
  • Posts: 30
Re: Elite EDDI-VA Profile Example
« Reply #6 on: November 19, 2016, 12:10:26 PM »
In version 2 Eddi can work in two ways, standalone or in combination with VA.
You asked about the ((EDDI undocked)) command so here it is.

In the standalone version you find a variety of scripts that are activated when in Elite Dangerous an event occurs.

One of those scripts is 'Undocked'. When in ED you launch from a station the Undocked event occurs and the script 'Undocked' is executed so the Eddi-voice tells you something like "Full control re-established" and after a 5 seconds pause it checks the status of your limpets.

Now suppose you want to automatically retract your landing gear after this. Standalone Eddi can't do this because it can't press keys. That's were VA comes in.
If you want to use the 'Undocked' script in VA you have to create a command called ((EDDI undocked))
In it you make a call to the Eddi plugin and after that you put in a command to retract your landing gear.

After that it looks like this:
Code: [Select]
Set Text [Script] to 'Undocked'
Execute external plugin, 'EDDI 2.0.11' and wait for return 
Pause 4 seconds
Press L key and hold for 0.03 seconds and release

When entering the second command put 'speech' in context and 'Script' in the Text box (both without the quotes)

Now after you launch the Eddi script is executed (like I mentioned before telling you have control of the ship again and doing the limpet check) and 4 seconds after that it presses the L key (assuming you use this key for your landing gear in the game)

One thing to notice though. If you make an ((EDDI undocked)) command in VA you much uncheck the 'Undocked' script in Eddi standalone otherwise it will execute twice when you launch.

I hope this makes sense and, if it does, you can use this method of integrating Eddi in VA with other events as well.

FireSammy

  • Newbie
  • *
  • Posts: 43
Re: Elite EDDI-VA Profile Example
« Reply #7 on: November 19, 2016, 01:07:33 PM »
I humbly thank you again, but all i could understand was:

Pause 4 seconds
Press L key and hold for 0.03 seconds and release

The other upper 2 lines, no... What, which, where how ?? This clipboard stuff is making me have a nervous breakdown. Comon dude, if you really want to help us out, please take screenshots each step at a time,-or type each step what to open, where to type (copy/paste) stuff, etc. It's just... eeehr f*** ohh just no  :o

I and i'm confident to speak on behalf of the majority of us, basic VA users, that yeah we can do/understand the "normal" key command stuff, and some of us even a bit more deeper than that, -but you guys are way over on the advanced coding side, reading/using these advanced variables and coding things. I/we truly admire you for that intelligence and skills, but when it comes to make actual tutorials,- or even instructing a single thing you made -and how to use it to us "normal mortals" the wall starts there. It just stops there.

So how about screenshots? I mean it must be pretty damn frustrating to type answers, only to receive whining like this. I promise you, IF and when ever i get this EDDI thing sorted and working, i will start making tutorials with pictures and videos, but i cannot do anything,-nor any good to anyone, if some of you people cannot teach me to do this one single command...

I repeat: How about screen pic's?  ;)

EDIT: Just found this, so i will try going with that now, and then possibly adding some text -messages to the log

https://www.youtube.com/watch?v=VQbR8SfCTRk
« Last Edit: November 19, 2016, 01:36:32 PM by FireSammy »

Pfeil

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4781
  • RTFM
Re: Elite EDDI-VA Profile Example
« Reply #8 on: November 19, 2016, 01:45:07 PM »
You'll want to use the "Other >" button on the left side of the "Add a Command"/"Edit a Command" window to add two actions to the action list: "Set a Text Value", and "Execute an External Plugin Function"; Both are located under the "Advanced" section

I have attached screenshots of what to enter in the "Other stuff" dialog.



When entering the second command put 'speech' in context and 'Script' in the Text box (both without the quotes)
I don't use the plugin myself, but it should be able to access the "Script" text variable by name without having to pass it explicitly in the "Execute an External Plugin Function" options. Perhaps worth testing to potentially save a step in the future.

FireSammy

  • Newbie
  • *
  • Posts: 43
Re: Elite EDDI-VA Profile Example
« Reply #9 on: November 19, 2016, 02:13:27 PM »
Very good, that's A LOT better  :)

I managed to test the "Undocking" EDDI command and it seems to work and gives the blue text + says undocked with EDDI voice engine. Will test further what it can do, yeah. this is really good, as now this is going forward.

"Docked" command made precisely the same way, did not give any response,- nor spoken output. Which means that this command does not work with EDDI at all currently, or something else is wrong.

Will try to do your instructions asap. I humbly thank you and will report if i can get these sorted, cheers!  :)

FireSammy

  • Newbie
  • *
  • Posts: 43
Re: Elite EDDI-VA Profile Example
« Reply #10 on: November 20, 2016, 12:57:55 AM »
((EDDI docked)) seems to be working now. Check'd my EDDI app again and found that my login info was empty from the companion app page. My fault then and not a bug

Huge thx for your patience and fast responses!
« Last Edit: November 20, 2016, 02:41:38 AM by FireSammy »

Biggx01

  • Guest
Re: Elite EDDI-VA Profile Example
« Reply #11 on: January 16, 2017, 05:18:17 PM »
Wow that fas a fast reply and a good one it is, thank you  :)

Still this does provide me only the "purple text" with the "event info" into the VA log box, but i still don't understand how it can be used:

1. How can i use this to execute some other command like: ((Departure undocking confirmed)) -which would execute a certain VA key command sequence i programmed it to do (i do have plenty of these)?

2. I did not understand the Clipboard copy -instructions. Sorry.  "{CLIP}" token. eeerh... what?  :o

EDITED: Ohh, wait a minute... So you mean all i need to do is create this ((EDDI undocked)) and execute my command straight from there, just like the "purple text" you just advised? :O

I do agree with FireSammy. It would be a great help if someone could create a video tutorial that explains more about how this works. If there was a EDDI/VA For Dummies Id definitely buy it. I have endlessly scoured the web and cant find anything that makes enough sense to for me to implement. Its as if they expect everyone to just know, or forget that newbies do not know there are additional steps to take that make the whole command work.
It can be quite confusing learning how to put everything together to work properly when you are just now learning it, and I have no friends that use it for me to ask for help.

I did find 1 video (1:35) that I watched https://www.youtube.com/watch?v=VQbR8SfCTRk&ab_channel=CmdrMcDonald
but that is a very simple command and was a No Brainer after watching it. So simple it was unbelievable lol.
But essentially it shows how to create the EDDI Event and you add a key-press for the landing gear.  This video is much appreciated by the way, but it would be great having a more detailed video explaining what is exactly going on from simple to more advanced commands that would help us EDDI Dummies :) LOL

Thanks Again for the AMAZING PLUGIN and the time you take to help... even those that are harder to help like myself