Release EDDI Scripts and EDDI enabled VA Commands Thread

I've been doping some customization and seem to be doing something wrong with RouteDetails as well.

I've attached the two script screenshots in my custom profile.

This is not the only EDDI event I am intercepting and the others all work so far, so I'm imagining that I've missed some detail of the docs?

The intent is for the first script to get called by voice ("FInd nearest fuels start"). This will set the text variable 'Type' to the value 'scoop'. I then call the EDDI plugin with the 'route' context.
My understanding is that this in itself triggers the {EDDI route details} event (I've tried it with 'route' with a capital 'R' and lowercase, but this event never gets captured in my script.
A
You're very close. Please change the name of the Type variable to Type variable.
 

Attachments

  • Untitled.png
    Untitled.png
    48.3 KB · Views: 332
Creative request por favor.. I took about a 6 month break from ED and getting back into the groove. Currently when jump to another system EDDI will tell me that I've visited this system "X" number of times up to IIRC 5 at which point she (Avona Amy) changes to "frequently". Once I drop to supercruise in that targeted system she breaks into the system report. However, the issue that has started to grind on me is that by the 2nd or 3rd jump she's a system or two back.

Two fold idea/request since I'm hardware man, not a coder, is it possible to
A) not do the system report if I've been in this system w/i the past 7 days lets say?
B) and/or, if I have initiated a jump to the next system, Amy aborts the balance of the System Report in favor of the Jump report?

I suspect that there are three scripts here... FSD engaged, Jumped, & System report. All useful info .. just not over and over and over again when I'm running a 5 jump route between two systems trading or for ... well reasons.
 

Attachments

  • Scripts.zip
    2.5 KB · Views: 402
Commander's name, SAY IT! Amy, she's a sweet girl and smart as a pickle. But I can't get her to pronounce my name correctly.
On the Commander Details page, I put "Tommy" in there and she still pronouces my name, Tacy on.
I went to the links in the IPA page that directs you to ToPhonetics.com and worked out the correct pronunciation of my name to be taakˈjɒn
But as I said .. that field on the Commander Details page appears to ignore input. What am I missing here?
 
Commander's name, SAY IT! Amy, she's a sweet girl and smart as a pickle. But I can't get her to pronounce my name correctly.
On the Commander Details page, I put "Tommy" in there and she still pronouces my name, Tacy on.
I went to the links in the IPA page that directs you to ToPhonetics.com and worked out the correct pronunciation of my name to be taakˈjɒn
But as I said .. that field on the Commander Details page appears to ignore input. What am I missing here?
Some voices handle IPA better than others. When the IPA fails, the voice falls back to your written commander name. Unfortunately, Ivona Amy often fails in this regard (for reference, see https://github.com/EDCD/EDDI/issues/297). I know it's a disappointing response, but if IPA is important to you then you might want to try using a different voice.

Creative request por favor.. I took about a 6 month break from ED and getting back into the groove. Currently when jump to another system EDDI will tell me that I've visited this system "X" number of times up to IIRC 5 at which point she (Avona Amy) changes to "frequently". Once I drop to supercruise in that targeted system she breaks into the system report. However, the issue that has started to grind on me is that by the 2nd or 3rd jump she's a system or two back.

Two fold idea/request since I'm hardware man, not a coder, is it possible to
A) not do the system report if I've been in this system w/i the past 7 days lets say?
B) and/or, if I have initiated a jump to the next system, Amy aborts the balance of the System Report in favor of the Jump report?

I suspect that there are three scripts here... FSD engaged, Jumped, & System report. All useful info .. just not over and over and over again when I'm running a 5 jump route between two systems trading or for ... well reasons.
A) Line 63 of the default FSD engaged script suppresses the system report if your last visit was less than an hour in the past. To change it to a week, change 3600 to 604800.
B) You can adjust the priority of the FSD engaged and Jumped scripts to do this. If the priority of the Jumped script is set to 1, it will interrupt all other scripts. If the priority of the FSD engaged script is set to 5, it becomes interruptible by all other scripts.
 
Last edited:
Some voices handle IPA better than others. When the IPA fails, the voice falls back to your written commander name. Unfortunately, Ivona Amy often fails in this regard (for reference, see https://github.com/EDCD/EDDI/issues/297). I know it's a disappointing response, but if IPA is important to you then you might want to try using a different voice.


A) Line 63 of the default FSD engaged script suppresses the system report if your last visit was less than an hour in the past. To change it to a week, change 3600 to 604800.
B) You can adjust the priority of the FSD engaged and Jumped scripts to do this. If the priority of the Jumped script is set to 1, it will interrupt all other scripts. If the priority of the FSD engaged script is set to 5, it becomes interruptible by all other scripts.

Oh snap. Going to run off and test these options now.

Re Amy - I can live with it. I'll just call her Julie and see how she likes it.
One thought or question tho, when I was testing on the https://tophonetics.com/ site which is one of the links from EDDI's suggestion, it uses Ivona Amy's voice and either taakyon or taak yon are spot on. I would expected that it it sounded right in there using the Ivona Amy voice that it should else where, which is why I jumped to the conclusion I was doing something wrong or in the wrong place.
 
One thought or question tho, when I was testing on the https://tophonetics.com/ site which is one of the links from EDDI's suggestion, it uses Ivona Amy's voice and either taakyon or taak yon are spot on. I would expected that it it sounded right in there using the Ivona Amy voice that it should else where, which is why I jumped to the conclusion I was doing something wrong or in the wrong place.
Fair point. I'm not sure which speech synthesis engine they are using but we haven't figured out how to make it work with the Microsoft Speech Synthesis engine that we use. Ivona Amy is my preferred voice and pull requests are welcome. :)
 
I'm not sure which speech synthesis engine they are using ... and pull requests are welcome. :)

What I understood was that https://tophonetics.com/ was doing was to use what engine the user (me) had installed. So when I go to that page I see the stock MS voices, but because I also have the Avona engine with Amy installed, that was one of my choices. Which is what I selected when I tested that phonetic spelling. And that was her voice coming out of my speakers .. so naturally I assumed (DOH) that when I plugged that spelling into EDDI that it would/should have worked.
 
So I've just gotten ahold of EDDI, and I've been doing some exploring when it occured to me as EDDI was relaying suggested bodies to map that, if it was possible, as I'm not sure if it is after looking through the script for the bodies to map script. Point is, I'm wondering if you can get the program to keep track of and relay the number of say, mapable icy rings mapped and total. I can manage the rest after getting the script for those two variables, please let me know whether or not this is possible if you're familiar with the limitations of the language.
 
So I've just gotten ahold of EDDI, and I've been doing some exploring when it occured to me as EDDI was relaying suggested bodies to map that, if it was possible, as I'm not sure if it is after looking through the script for the bodies to map script. Point is, I'm wondering if you can get the program to keep track of and relay the number of say, mapable icy rings mapped and total. I can manage the rest after getting the script for those two variables, please let me know whether or not this is possible if you're familiar with the limitations of the language.
This is possible. You would want to use the rings property from the Body scanned event to set some custom variables, then report results with a later event like the System scan complete event. Ring object properties are documented via the Variables button in the Edit script window. The Body report summary script already includes a section that iterates over the rings in a body and you can reference that as an example on how to do it. You'll also need the SetState() function (described under the Help button in the Edit script window) to save and retrieve your custom variables.
 
Last edited:
Hey guys,

Getting a problem with the limpet code. Anyone able to understand what to fix?

The error message is:

"Error with limpet check script. Exception has been thrown by the target of an invocation"

The code is below:
{set controllers to 0}
{for compartment in ship.compartments:
{if find(compartment.module.name, "Controller") != -1:
{set controllers to controllers + 1}
}
}

{set limpets to 0}
{for cargo in inventory:
{if cargo.edname = "Drones":
{set limpets to cargo.total}
}
}

{set tenpercent to ship.cargocapacity / 10 - 1}
{if controllers > 0 && limpets = 0:
Reminder: you have a limpet controller but are not carrying any limpets.
|elif controllers = 0 && limpets > 0:
You are carrying limpets but no limpet controller.
|elif controllers > 0 && limpets < tenpercent:
You only have {limpets} {if limpets = 1: limpet |else: limpets} on-board; you might want to consider re-stocking.
}


Anyone have any thoughts on this?

Crash.
 
Hey guys,

Getting a problem with the limpet code. Anyone able to understand what to fix?

The error message is:

"Error with limpet check script. Exception has been thrown by the target of an invocation"

The code is below:
{set controllers to 0}
{for compartment in ship.compartments:
{if find(compartment.module.name, "Controller") != -1:
{set controllers to controllers + 1}
}
}

{set limpets to 0}
{for cargo in inventory:
{if cargo.edname = "Drones":
{set limpets to cargo.total}
}
}

{set tenpercent to ship.cargocapacity / 10 - 1}
{if controllers > 0 && limpets = 0:
Reminder: you have a limpet controller but are not carrying any limpets.
|elif controllers = 0 && limpets > 0:
You are carrying limpets but no limpet controller.
|elif controllers > 0 && limpets < tenpercent:
You only have {limpets} {if limpets = 1: limpet |else: limpets} on-board; you might want to consider re-stocking.
}


Anyone have any thoughts on this?

Crash.





this is fixed.... logging into a different ship resolves the error
 
Hi T'kael, jumped over here from discord. Ok I've been trying to use the EDDI event Discovery Scan to get remaining number of bodies (if needed) needing scanned by me but can't seem to get the "BodiesToScan" variable to VA. From docs seems only the variables totalbodies and nonbodies are available to access from VA. I've tried various VA commands to get the info but everything comes back as "not set". If it means using cottle or directly editing scripts probably out of my meager abilities.
 
Ok spent a few hours but obviously I have no idea what im doing, way over my head lol. I'll just have to go with what I got.
Thx though
 
Last edited:
Ok spent a few hours but obviously I have no idea what im doing, way over my head lol. I'll just have to go with what I got.
Thx though
It's not as complicated as you think.
The variable "bodiesToScan" does not exist. It is only set in line 24 in the original "Discovery scan" script.
This variable cannot be used by VA. You must make it usable for VA. You can do this with the function SetState().
Add the following to line 25 of the original "Discovery scan" script:
{SetState('bodies_to_scan', bodiesToScan)}
Now VA can use the variable.
In VA with "Write [Blue] {DEC:EDDI state bodies_to_scan} bodies to scan"
you can display the number in the LOG window or you can have it announced with :

1.
Say, "still {DEC:EDDI state bodies_to_scan} to be scanned"

... or if this is to be said about EDDI

2.
Set text [Script] to 'still {DEC:EDDI state bodies_to_scan} to be scanned'.
Execute external plugin, 'EDDI 3.7.0
 
Thx T'kael,
Ok looks like i had the setstate command right cept put it in line 3 before it even exists I guess, and I had left off the word 'state' too when trying to write it to the log.

How anyone ever learns all this from scratch I'll never know, usually I look at other peoples code to get examples to get correct syntax and such but in this case I looked at several and saw more then 1 or 2 ways to use setstate. Guess depends on what you want to do with it.

Anyways thx again, working like a charm. Now i can skip entering/exiting FSS if theres nothing to scan, 70 jumps in, 230 to go :)

Did run into one more problem, if the next system didn't have any bodies needing scanned, bodies_to_scan would keep the value from the previous system. I had to add a statement to set it to 0 in that case. At least I figured out that on my own lol :)
 
Last edited:
Thx T'kael,
Ok looks like i had the setstate command right cept put it in line 3 before it even exists I guess, and I had left off the word 'state' too when trying to write it to the log.

How anyone ever learns all this from scratch I'll never know, usually I look at other peoples code to get examples to get correct syntax and such but in this case I looked at several and saw more then 1 or 2 ways to use setstate. Guess depends on what you want to do with it.

Anyways thx again, working like a charm. Now i can skip entering/exiting FSS if theres nothing to scan, 70 jumps in, 230 to go :)

Did run into one more problem, if the next system didn't have any bodies needing scanned, bodies_to_scan would keep the value from the previous system. I had to add a statement to set it to 0 in that case. At least I figured out that on my own lol :)

At the beginning of the "Discovery scan" script, you might want to set the variable to zero.
{SetState("bodies_to_scan", 0)}
If bodies are present, the variable is set.
 
Hi everyone, hope you're all doing well and keeping safe. :)
I've been bored today, so I thought I'd release a new version of my personality. I've not played ED much recently as I have some upheaval going on in my life right now, so consequently this may not be as polished as I usually make it, and it's more of a snapshot of how my profile has been for some time. As such, I need to mention that my version of the route plotting doesn't work properly due to a bug in EDDI (to do with the Distance() function), so route plotting has been changed over to the default EDDI version. If you find any other bugs, just let me know and I'll see about fixing them.

-=] Darkcyde [=-
 

Attachments

  • Darkcyde's Defaults 16-08-20.zip
    195.2 KB · Views: 526
Hi everyone, hope you're all doing well and keeping safe. :)
I've been bored today, so I thought I'd release a new version of my personality. I've not played ED much recently as I have some upheaval going on in my life right now, so consequently this may not be as polished as I usually make it, and it's more of a snapshot of how my profile has been for some time. As such, I need to mention that my version of the route plotting doesn't work properly due to a bug in EDDI (to do with the Distance() function), so route plotting has been changed over to the default EDDI version. If you find any other bugs, just let me know and I'll see about fixing them.

-=] Darkcyde [=-
To be clear, the distance function bug is something that we're aware of and that will be fixed in the next release.
 
Back
Top Bottom