Release EDDI - Windows app for immersion and more

Status
Thread Closed: Not open for further replies.
The last couple of days when I start up the standalone or voice attack plug in I get a response about not being able to connect to some data services.

I've also noticed that when I ask for a star report no matter what star I've just scanned it says " Scan of -class star complete. This is that has been around for zero years making it one of the oldest stars in the galaxy."

*nice addition of the write copies of speech to the file btw*

Currently using 2.1.0-b1
 
Last edited:
Hi Guys,

Thanks for this amazing tool. I love it. It seems to be working great for me. I am using it through Voice Attack with Multicrew. I am not sure if I have something incorrectly configured or what.

When I jump near a station and get the message from Flight control EDDI doesn't respond. I get responses from everything else (docking requests, docking complete etc). Is this something thats got to be set up through a script?

Any ideas or help would be greatly appreciated.

NeX O7

It may well be that the station you are docking at isn't in EDDB. Either that, or you're at an outpost or planetary station where there isn't an obvious response from EDDI.
 
Is EDDI 2 capable of generating custom variables that VA can use or handle as tokens? EDDI's scripting and number crunching methodology is superior to VA's, but I'd prefer to maintain its position as strictly a VA plugin and pass things on to VA.

I'm not quite sure what it is you are asking for. Please could you give an example?
 
The last couple of days when I start up the standalone or voice attack plug in I get a response about not being able to connect to some data services.

I've also noticed that when I ask for a star report no matter what star I've just scanned it says " Scan of -class star complete. This is that has been around for zero years making it one of the oldest stars in the galaxy."

*nice addition of the write copies of speech to the file btw*

Currently using 2.1.0-b1

It does sound as though EDDI isn't connecting back to the API server, which is odd because it's operational and serving requests from lots of people. Is there anything in %APPADTA%\EDDI\eddi.log when you start it up?

The text you're quoting for the star system report seems to be the script for after scanning a star; what does your star system report command look like in VoiceAttack?
 
It does sound as though EDDI isn't connecting back to the API server, which is odd because it's operational and serving requests from lots of people. Is there anything in %APPADTA%\EDDI\eddi.log when you start it up?


The text you're quoting for the star system report seems to be the script for after scanning a star; what does your star system report command look like in VoiceAttack?

From the log that I can see:
2016-12-12T11:37:51 EDDI:.ctor EDDI 2.1.0-b1 starting
2016-12-12T11:38:05 Net:GetResponse [W] Failed to obtain response, error code Timeout
2016-12-12T11:38:05 EDDI:UpdateServer [W] Failed to access api.eddp.co System.ArgumentNullException: Value cannot be null.
Parameter name: value
at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value)
at Utilities.ServerInfo.FromServer(String baseUri)
at Eddi.EDDI.UpdateServer()


I basically copied the "Star scanned" and made "Star report" and made "Star Scanned" script shorter. Anytime I want more information on the star I call the "Star Report" to give me the original response "star scanned" command did.

The shorter Star Scanned works fine, just the Longer Star Report gives me the wrong star info.
*this is only in the standalone*
 
Last edited:
It may well be that the station you are docking at isn't in EDDB. Either that, or you're at an outpost or planetary station where there isn't an obvious response from EDDI.

Hmm. Thanks for the reply. I've tried a few stations around the bubble, specifically Fabian City (HIP 20277 system). I've checked eddb.io and the station appears on the site. Not a deal breaker, just odd. Is there anyway to check to see the call to EDDB?
 
From the log that I can see:
2016-12-12T11:37:51 EDDI:.ctor EDDI 2.1.0-b1 starting
2016-12-12T11:38:05 Net:GetResponse [W] Failed to obtain response, error code Timeout
2016-12-12T11:38:05 EDDI:UpdateServer [W] Failed to access api.eddp.co System.ArgumentNullException: Value cannot be null.
Parameter name: value
at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings)
at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value)
at Utilities.ServerInfo.FromServer(String baseUri)
at Eddi.EDDI.UpdateServer()


I basically copied the "Star scanned" and made "Star report" and made "Star Scanned" script shorter. Anytime I want more information on the star I call the "Star Report" to give me the original response "star scanned" command did.

The shorter Star Scanned works fine, just the Longer Star Report gives me the wrong star info.
*this is only in the standalone*


The server timeout is odd, because the server does seem to be running. What happens if you try to access http://api.eddp.co/_info from a webbrowser?

The 'Star scanned' script relies on particular event variables being present, which is why it won't work if you try calling it ad-hoc.
 
Hmm. Thanks for the reply. I've tried a few stations around the bubble, specifically Fabian City (HIP 20277 system). I've checked eddb.io and the station appears on the site. Not a deal breaker, just odd. Is there anyway to check to see the call to EDDB?

Your best bet is to enable verbose logging (on EDDI's first tab when it opens), request docking, then send me the logs when the docking has ben granted.
 
The server timeout is odd, because the server does seem to be running. What happens if you try to access http://api.eddp.co/_info from a webbrowser?

The 'Star scanned' script relies on particular event variables being present, which is why it won't work if you try calling it ad-hoc.

This is what I get when I connect via Browser:

{"production":{"minversion":"2.0.13","version":"2.0.13","url":"http://www.mcdee.net/elite/EDDI.exe","motd":null},"beta":{"minversion":"2.1.0-b1","version":"2.1.0-b1","url":"http://www.mcdee.net/elite/EDDI-beta.exe","motd":null}}
 
Your best bet is to enable verbose logging (on EDDI's first tab when it opens), request docking, then send me the logs when the docking has ben granted.

Will do when I get home tonight. Thanks JGM. O7. Will send you a message/post after I have sent them.
 
So, using the included default "insurance check" script for example, could I use EDDI to crunch the numbers, but as a result, have EDDI create a {INT:ins_check_result} custom variable that I could then use in a VA conditional block, instead of having the EDDI speech responder be the output?

Also, the documentation isn't clear, but looking at the script that produces the location of the landing pad ("two o'clock far with the green lights on your right") in a station would seem to be using a station.model variable that from the docs, should only be populated after the actual "docked" event is detected, not when docking is requested. Are there two different variables?

Thanks so much for this. Now if only Frontier would be willing to add a "gear up/down" "cargo scoop up/down" "lights on/off" event to the log, I'd have everything I could want for near-complete immersion with my Saren VA profile.
 
Take a look at my insurance check Voice Attack script below:
Code:
Set decimal [EDDI insurance] value to the value of [Ship value]
Set decimal [EDDI insurance] to [EDDI insurance] times 0.05 (round to 0 decimal places)
Set decimal [insurance multiple] value to the value of [Credits] (round to 0 decimal places)
Set decimal [insurance multiple] to [insurance multiple] divided by [{DEC:EDDI Insurance}] (integer division) (round to 0 decimal places)
Begin Decimal Compare : [insurance multiple] Is Less Than 1
    Set Text [script] to 'Danger: you do not have enough credits to cover your insurance.  '
Else If Decimal Compare : [insurance multiple] Is Less Than 2
    Set Text [script] to 'Warning: you only have enough credits to cover a single insurance excess.'
Else
    Set Text [script] to 'You have enough credits to cover {DEC:insurance multiple} insurance excesses.'
End Condition
Set Text [script] to 'You have {TXT:Credits (spoken)} credits. {TXT:Ship name} is worth {TXT:Ship value (spoken)} credits. Her insurance cost is {DEC:EDDI insurance} credit...
Execute external plugin, 'EDDI 2.0.13' and wait for return
Set Text [script] to [Not Set]
Set decimal [EDDI insurance] value to [Not Set]
Set decimal [insurance multiple] value to [Not Set]
 
So, using the included default "insurance check" script for example, could I use EDDI to crunch the numbers, but as a result, have EDDI create a {INT:ins_check_result} custom variable that I could then use in a VA conditional block, instead of having the EDDI speech responder be the output?

Also, the documentation isn't clear, but looking at the script that produces the location of the landing pad ("two o'clock far with the green lights on your right") in a station would seem to be using a station.model variable that from the docs, should only be populated after the actual "docked" event is detected, not when docking is requested. Are there two different variables?

Thanks so much for this. Now if only Frontier would be willing to add a "gear up/down" "cargo scoop up/down" "lights on/off" event to the log, I'd have everything I could want for near-complete immersion with my Saren VA profile.

It should be possible to set state variables from scripts, but this functionality isn't present at current. I'll consider if it can be added in short order.

Regarding station information, the way that EDDI works is that any variables that come directly from the event are part of the 'event' object. Other variables come from either internal state (e.g. current system) or from external data sources. In this particular case it's a combination of the two, using the 'StationDetails' function to obtain a full station object from the 'event.station' value (it obtains the data from EDDB data). Once EDDi has information it can use it to check the model.
 
EDDI 2.1 is ready for beta testing.
[*]Add 'Voice' parameter for VoiceAttack's 'say' and 'speech' commands to allow individual over-rides of default Voice

I can't get this to work.

I've made a simple script that just says "OK" and when I call it from VA using the default voice (Ivona 2 Amy) she says OK.
Than in VA I set the text-variable 'Voice' to "Ivona 2 Jennifer" but when I call the OK-script after that nothing happens.
It even seems to crash VA because when I close VA after that it won't startup again. I have to use TaskManager to close it for real and only then it will startup again.

Any idea ?
 
I can't get this to work.

I've made a simple script that just says "OK" and when I call it from VA using the default voice (Ivona 2 Amy) she says OK.
Than in VA I set the text-variable 'Voice' to "Ivona 2 Jennifer" but when I call the OK-script after that nothing happens.
It even seems to crash VA because when I close VA after that it won't startup again. I have to use TaskManager to close it for real and only then it will startup again.

Any idea ?

Chuck the name carefully, including capitalisation. It does need to be an exact match.

Not sure about the crashing thing, will try it here and see if I can reproduce it.
 
Your best bet is to enable verbose logging (on EDDI's first tab when it opens), request docking, then send me the logs when the docking has ben granted.

Log uploaded. Voice attack crashed during the first upload so hope its ok. It's also not on the docking request. Its more so when I exit Normal Space near the station and I get the message from Flight control Welcoming to the station. (ie on approach before I request docking)
 
Last edited:
Log uploaded. Voice attack crashed during the first upload so hope its ok. It's also not on the docking request. Its more so when I exit Normal Space near the station and I get the message from Flight control Welcoming to the station. (ie on approach before I request docking)

I'm a little confused now. What exactly are you expecting to happen that isn't?
 
I'm a little confused now. What exactly are you expecting to happen that isn't?


Sorry for the confusion. I noticed in one of your videos (the leaving supercruise and docking at Jamison one) that EDDI responds to a message from flight control after you exit supercruise and the flight control contacts you to welcome you to the area. Specifically around here on the video https://youtu.be/iVRdMj-WkpE?t=51s .

I wasnt sure if its something I need to set up. Like I said not a deal breaker, was purely for immersion purposes.
 
Last edited:
Regarding station information, the way that EDDI works is that any variables that come directly from the event are part of the 'event' object. Other variables come from either internal state (e.g. current system) or from external data sources. In this particular case it's a combination of the two, using the 'StationDetails' function to obtain a full station object from the 'event.station' value (it obtains the data from EDDB data). Once EDDi has information it can use it to check the model.

Okay, so in terms of VA, is {TXT:EDDI docked model} usable for that purpose, though docking hasn't happened, or are there variables that are usable that aren't in the document? Or are there variables that EDDi populates from the logs and such that don't have a VA-usable equivalent?

Thanks for the help and clarifications.
 
Status
Thread Closed: Not open for further replies.
Back
Top Bottom