EDCD / EDDI

Companion application for Elite Dangerous
Other
444 stars 81 forks source link

va_active not set #2285

Closed netchild closed 2 years ago

netchild commented 2 years ago

What's Wrong (please be as specific as possible)

va_active is not set anymore in the eddi va plugin

Begin Boolean Compare : [va_active] Equals True Set Boolean [>eddi_enabled] to True Write [Green] 'EDDI plugin detected' to log End Condition

Expected

va_active is set to True if EDDI is installed as a VA plugin.

Observed

Begin Boolean Compare : [va_active] Equals True Set Boolean [>eddi_enabled] to True Write [Green] 'EDDI plugin detected' to log End Condition

No log entry that EDDI is detected is written to the log. EDDI events like ship undock work, so the EDDI plugin for VA is active and works (and the blue log entry form the EDDI plugin shows up), but I can not detect it from VA for other parts. odyssey variable is detected correctly (I have a similar check and log entry for it). In a previous version this code worked.

Steps to reproduce

  1. see above VA snipped

Configuration

My Investigation

Investigation Notes

see above

EDDI Logs

eddi.log

Player journals

not involved

Tkael commented 2 years ago

va_active has definitely been available from Cottle (in the Speech Responder) but I'm not sure it was ever available from VoiceAttack. I've checked our VoiceAttack documentation revisions going back several years and have been unable to find any reference to that variable name.

There is a (currently undocumented) {TXT:EDDI version} variable that might meet your use case. A null value would indicate that EDDI isn't running.

Tkael commented 2 years ago

Alternatively, you could respond to the VA initialized event.

netchild commented 2 years ago

It is listed in https://github.com/EDCD/EDDI/wiki/Variables, if they don't match with what is available in VA, where can I find the list of VA variables?

Thanks for the info about workaround possibilities.

netchild commented 2 years ago

BTW: would it be possible to have some kind of VA variable which tells "hey, EDDI is installed, you can use it"?

netchild commented 2 years ago

The event does work, if the VA profile which contains it is the active one at start, but it does not work, if I have started VA with another profile and switch to the one which contains the event. So this is not a good workaround.

Using EDDI version works (I check if the TXT variable is set).

This is not really clean (as not documented, and personally I would consider a bool which tells "EDDI is there" a self-documenting possibility for VA).

Tkael commented 2 years ago

https://github.com/EDCD/EDDI/wiki/Variables defines general variables available inside the Speech Responder while https://github.com/EDCD/EDDI/wiki/VoiceAttack-Integration defines general variables inside of VoiceAttack (also note that event documentation is still the best place to view both Speech Responder and VoiceAttack variables applicable to each specific event).

I've already added {TXT:EDDI version} to the VoiceAttack variables that will be documented for the next release.