Release EDDI - Windows app for immersion and more

Status
Thread Closed: Not open for further replies.
I'm pleased to announce beta 2 of EDDI 2.1.1. This release has various bug fixes and minor enhancements, and also brings two new major features.

The first is a new monitor: EDDP. This is an interesting monitor, in that it listens to changes to system state (Boom, War etc.) and controlling faction, and can alert you when they change. The 'EDDP monitor' tab allows you to set up watches, but some examples might be informing you of any changes to your home system (or any other nominated system), or informing you of any systems within 100LY of your current position that enter a Boom state.

The second is the introduction of context. The idea of context is that EDDI remembers what it mentions, and allows a more natural dialogue. For example, if you did receive a message from the EDDP monitor that Shinrarta Dezhra has entered a Boom state you can ask questions like "how far is that system?" and "tell me about that system". You can also ask EDDI to repeat the last thing it said. Obviously, voice commands still require VoiceAttack.

As this is a beta, any and all bug reports would be very useful. In particular, the default speeches in the speech responder have been rewritten to be context-aware so there are bound to be bugs. Please report bugs either here or to the GitHub issues at https://github.com/cmdrmcdonald/EliteDangerousDataProvider/issues.

The download is available at https://www.mcdee.net/elite/EDDI-beta.exe, and the full changelog is as follows:

  • Core
    • Fix issue where commander insurance % is not set internally
    • Add assisated upgrade for new versions of EDDI
    • Allow opt-in to beta versions of EDDI
    • Incorporate data from Body scanned and Star scanned events in to local database
    • Ensure that location script is always triggered on first login
    • Add CQC rating to commander
    • Fix issue where hull damage events were not always triggered
    • Add module definitions for Module Reinforcement Packages
    • Initial addition of EDDI context. Context attempts to keep track of what EDDI is talking about, to provide the possiblity of two-way dialogue. Details about context can be found in the speech responder documentation
  • Events
    • Add 'Mission failed' event
    • Add 'System faction changed' and 'System state changed' EDDP events
  • EDDP monitor
    • Add EDDP monitor. This monitor watches EDDP for state and ownership information about systems and generates events when changes are spotted. See the 'EDDP monitor' tab for more information
  • Speech Responder
    • Add speech responder function 'BodyDetails' to obtain body details. Details of this function are in the SpeechResponder help documentation
    • Script changes:
      • 'Body report' - new script that uses context information to report on a body
      • 'Body scanned' - added context information. Call new function 'Body report' to provide body details
      • 'Bounty awarded' - added context information
      • 'Bounty incurred' - added context information
      • 'Cleared save' - added context information
      • 'Cockpit breached' - added context information
      • 'Combat promotion' - added context information
      • 'Commodity collected' - added context information
      • 'Commodity ejected' - added context information
      • 'Commodity refined' - added context information
      • 'Commodity sold' - added context information
      • 'Docking granted' - added context information. Call new function 'Landing pad report' to provide pad details
      • 'Fine incurred' - added context information
      • 'Jumping' - added context information
      • 'Landing pad report' - use context information to report on a landing pad
      • 'Material collected' - added context information
      • 'Material discarded' - added context information
      • 'Material discovered' - added context information
      • 'Material donated' - added context information
      • 'Message received' - added context information
      • 'Message sent' - added context information
      • 'Repeat last speech' - new script that repeats the last speech
      • 'Star report' - new script that uses context information to report on a star
      • 'Star scanned' - added context information. Call new function 'Star report' to provide body details
      • 'System distance report' - use context information to report on the distance to a system
      • 'System faction changed' - new script triggered when there is a change in the controlling faction of a system
      • 'System report' - use context information to report on a system
      • 'System state changed' - new script triggered when there is a change in the controlling faction of a system
      • 'System state report' - use context information to report on the state of a system
  • VoiceAttack Responder
    • Ensure that state changes are picked up by VoiceAttack plugin immediately
    • Update VoiceAttack with context-related commands:
      • 'Please repeat that/What was that?/Could you say that again?/Say that again' - repeat EDDI's last scripted response
      • 'Remind me of that landing pad/Which landing pad was it?' - repeat the landing pad name and location when docking
      • 'Tell me about it/Tell me more' - provide more information about the last item EDDI mentioned
      • 'Tell me about the/that system' - provide more information about the last system EDDI mentioned
      • 'Tell me about the/that planet/body' - provide more information about the last body EDDI mentioned
      • 'Tell me about the/that star' - provide more information about the last star EDDI mentioned
      • 'How far is that system?' - provide a distance report for the last system EDDI mentioned
  • Misc
    • Send additional data to EDSM
 
Great news, jgm, thx a lot!
One question, though: are the new functions (like 'Body report') not copied to our personalities? Do we have to start from scratch?
Or how do i get that into my own pers.?

edit: also, the checkbox 'Access beta versions' isn't saved?
 
Last edited:
Great news, jgm, thx a lot!
One question, though: are the new functions (like 'Body report') not copied to our personalities? Do we have to start from scratch?
Or how do i get that into my own pers.?

edit: also, the checkbox 'Access beta versions' isn't saved?

You can copy the scripts over, but it takes a bit of jumping around. I'll make it a bit easier by adding a 'View' option for scripts. Bear in mind, however, that you'll need to set the context information for any custom scripts you've put together to ensure that they still work as intended. You can hit the 'View default' option when editing your custom script and you'll find the context information (if any) at the top of the script.

The beta version info is saved, it just isn't reflected in the UI. I'll fix that; thanks for letting me know.
 
WOOP some things there I've been waiting for in some form or other by the looks of it like repeating stuff and asking for more info instead of getting the whole lot of information in one go.

jgm top banana ö7

Won't be able to give it a good work out til the weekend, damn its going to be a late weekender again.

One thing I think you already covered with the above comment was copying over the new scripts to a different personality, would be great if there was a way to just copy certain commands over instead of copying and pasting kinda of thing.
 
Hey, jgm:

The mission failed event is not triggering. This is from the log:

Code:
2017-02-01T22:47:21 JournalMonitor:ParseJournalEntry [D] Unhandled event: { "timestamp":"2017-02-01T22:47:21Z", "event":"MissionFailed", "Name":"Mission_Scan_War_name", "MissionID":82522029 }

I checked the JournalMonitor.cs code under the feature/home branch on Github. If I am interpreting your code correctly, you have a select case for each of the possible journal triggers. Well, if you check your code, there are cases for MissionAccepted, MissionCompleted, and MissionAbandoned, but no case for MissionFailed? I'm probably reading it wrong, I'm not a C# coder, but I thought I would point it out.

I created a Github issue too. Thanks!!!!
 
Running new beta. Have the following two findings:
  1. station.economies does not appear to be populating
  2. shipyard EDDN update does not appear to be working

Note, when docked, I do see Commodity and Outfitting posted to EDDN via ROSS.
 
One thing I think you already covered with the above comment was copying over the new scripts to a different personality, would be great if there was a way to just copy certain commands over instead of copying and pasting kinda of thing.

Seconded, that would be great.
Another small enhancement could be: let us define the folder for storing our personalities.
Had a hard time finding it in my backup drive after an... accident. [big grin]
Another: would it make sense to highlight scripts in our personalities that actually differ from the default one?
 
I've updated the beta to 2.1.1-b3. This is mainly minor fixes as pointed out above, namely:

  • Parse MissionFailed event correctly
  • Move station.economies to station.primaryeconomy
  • Correctly set checkbox for beta releases when starting EDDI
  • Add a 'view' option for personality scripts
  • Automatically copy all scripts from default personality to current personality if the current personality does not contain said script

Most importantly, of course, this should allow you to test the upgrade feature. When you start EDDI it should tell you there is an upgrade and provide you with an upgrade button. Press it, and it should go through the upgrade process automatically and restart EDDI. Let me know how it goes.
 
Running new beta. Have the following two findings:
  1. station.economies does not appear to be populating
  2. shipyard EDDN update does not appear to be working

Note, when docked, I do see Commodity and Outfitting posted to EDDN via ROSS.

economies has moved to primaryeconomy. Although EDDB has multiple economies, as does the Elite UI, the data we receive in the journal only has a single economy so the other data will lose accuracy over time.

EDDI never sent shipyard data to EDDN, because it's flakey. The shipyard information sometimes shows up in the companion API data and sometimes doesn't.
 
Seconded, that would be great.
Another small enhancement could be: let us define the folder for storing our personalities.
Had a hard time finding it in my backup drive after an... accident. [big grin]
Another: would it make sense to highlight scripts in our personalities that actually differ from the default one?

Changing directory for EDDI's data files would be a fair bit of effort, and I'm not sure that any one place is better than any other, so that's not something I'd look to do any time soon.

I'll consider the idea of having different colours or some other marker for non-default scripts, but due to the way that the personalities are held and the hideous nature of WPF it's relatively difficult to do.
 
Most importantly, of course, this should allow you to test the upgrade feature. When you start EDDI it should tell you there is an upgrade and provide you with an upgrade button. Press it, and it should go through the upgrade process automatically and restart EDDI. Let me know how it goes.

First try didn't work. Got the message the new beta was available and after pressing the upgrade button the upgrade started as expected but it gave an error because some apps were open and couldn't be closed automatically. Then I noticed VoiceAttack was active, I had it started up early this morning and didn't realise it was still open. The Eddi upgrade wasn't able to close it so I tried closing it manualy while the upgrade was still running but it wouldn't close. I aborted the upgrade and tried closing VA manualy again but that still didn't work. I had to kill VA via TaskManager. After that and starting Eddi again the upgrade went fine.
It could be something at my end of course but maybe you want to look into it.

edit: using the latest VA beta BTW (1.6.1.27 released last night)
 
Last edited:
First try didn't work. Got the message the new beta was available and after pressing the upgrade button the upgrade started as expected but it gave an error because some apps were open and couldn't be closed automatically. Then I noticed VoiceAttack was active, I had it started up early this morning and didn't realise it was still open. The Eddi upgrade wasn't able to close it so I tried closing it manualy while the upgrade was still running but it wouldn't close. I aborted the upgrade and tried closing VA manualy again but that still didn't work. I had to kill VA via TaskManager. After that and starting Eddi again the upgrade went fine.
It could be something at my end of course but maybe you want to look into it.

edit: using the latest VA beta BTW (1.6.1.27 released last night)

Not sure why VA wouldn't close, but you can't upgrade EDDI while VA is open as it holds on to EDDI's files.
 
I've updated the beta to 2.1.1-b3. This is mainly minor fixes as pointed out above, namely:

  • Parse MissionFailed event correctly
  • Move station.economies to station.primaryeconomy
  • Correctly set checkbox for beta releases when starting EDDI
  • Add a 'view' option for personality scripts
  • Automatically copy all scripts from default personality to current personality if the current personality does not contain said script

Most importantly, of course, this should allow you to test the upgrade feature. When you start EDDI it should tell you there is an upgrade and provide you with an upgrade button. Press it, and it should go through the upgrade process automatically and restart EDDI. Let me know how it goes.

Awesomesauce, much appreciated!
 
upgraded to b3 however, now when attempting to hook in Companion App, receive error following Next on entering the FD authentication code.

UPDATE: got it working by doing a clean EDDI uninstall and then reinstall. all is fine now, thx!
 
Last edited:
How do you get the betas? I download from http://www.mcdee.net/elite/EDDI.exe but that gives me v2.1.0.
 
Last edited:
Is there a way to have eddi2 or va register an enemy kill and play a sound file when doin that? I'm pretty sure ive seen this in some streamer game somewhere! Also how do i make her on when you sell lots of commodities at the station, sometimes that would drive me nuts!
 
Is there a way to have eddi2 or va register an enemy kill and play a sound file when doin that? I'm pretty sure ive seen this in some streamer game somewhere! Also how do i make her on when you sell lots of commodities at the station, sometimes that would drive me nuts!

I need to take a look to see if I can find a way of getting SSML to play an audio file.

As for the commodities sale check, there's an updated version kicking around that is saner when you have lots of commodities to sell; I'm planning to add that in the next beta.
 
QQ on the Body Report response:

I see the default for this section as:
Code:
{_ Atmosphere? }
{_ Volcanism? }

I updated to be:
Code:
Average surface temperature is {Humanise(event.temperature)} degrees c,
{if event.atmosphere != "":
and includes a {event.atmosphere}
}
 with a pressure measurement of {Humanise(event.pressure)} millibars.


{if event.volcanism != "":
Note, {event.volcanism} is present.
{Pause(500)}
}

Is there a reason these are not included (perhaps in another format) in the default response?
 
Status
Thread Closed: Not open for further replies.
Back
Top Bottom