This function allows you to include a different voice in your script than then one currently selected. This function uses SSML tags.
Voice() takes two mandatory arguments: the text to speak and the voice to speak it (legal values for the voice should match one of the voices listed by EDDI's Text-to-Speech tab."). For Example:
{Voice("Now I can speak", "Microsoft Zira Desktop")} {Voice("And I can listen", "Microsoft David Desktop")}
I have a C# inline function in VoiceAttack to convert the BMP screenshots to PNG. I'd like to convert this to run in EDDI as sometimes I run EDDI stand-alone.
Is this something that can be done? If so, can someone guide me through the Cottle script?
I have a C# inline function in VoiceAttack to convert the BMP screenshots to PNG. I'd like to convert this to run in EDDI as sometimes I run EDDI stand-alone.
Is this something that can be done? If so, can someone guide me through the Cottle script?
Hello everyone. When you've mapped a planet and get EDDI and your COVAS both telling you the planet is mapped, but you've gone to the ED options and there's no way to disable it for Elite - I contacted Frontier support about this and spoke with CMDR Vulcan. He asked me to raise it as a feature request. If you would like missing Audio options shown, please like and or comment for this suggestion: https://forums.frontier.co.uk/threads/missing-audio-options-for-ship-voice-covas.545476/
I have started a project to automate some of my work in surveying the galaxy for icy rings. Part of this involves mapping the icy ring(s) round a body to the class of star that the body orbits. By 'class of star' I mean the combination of class and subclass e.g. 'M6'. The speech responder and VoiceAttack events of interest are: 'Discovery scan', which reveals the class and subclass of the stars found in the system, and the 'Body scanned' details which contain the information about the rings.
I decided to experiment with two techniques I haven't tried before:
Passing XML from EDDI to VA.
Manipulating the XML in VA using an inline C# function.
I found that the {wrap xml: ...} functionality of Cottle doesn't appear to be implemented, and I'm not sure how I would have used it, so I built up the XML in a text variable. The code shown below is what I've done so far, and I'm sharing it because it may be of interest to others.
Code:
{_ Fetch from Context _}
{set reportSystem to SystemDetails(state.eddi_context_system_name)}
{_ initialise the XML output }
{set xmlStars to "<?xml version='1.0'?><Stars>"}
{for body in reportSystem.bodies:
{_ if the body is a star (it could be an autoscanned planet) }
{if body.bodytype = "Star":
{_ add a node for this star }
{set xmlStars to cat(xmlStars,"<Star ")}
{_ set the star identifier (A, B, C, etc. }
{set starID to body.shortname }
{_ if the star is the only star in the system the shortname
is the same as the bodyname; in this case set the starID
to 'A' }
{if len(body.shortname) > 1: {set starID to "A"}}
{_ set the attributes for this star: name (letter), class, and subclass }
{set xmlStars to cat(xmlStars,"name='",starID,"' class='",body.stellarclass,"' subclass='",body.stellarsubclass,"'")}
{set xmlStars to cat(xmlStars,"/>")}
}
}
{_ complete the XML document and make it available to VoiceAttack }
{set xmlStars to cat(xmlStars,"</Stars>")}
{SetState("xml_Stars",xmlStars)}
In the ((EDDI Discovery scan)) method in VoiceAttack, the XML is retrieved using:
Code:
Set Text [StarsInSystem] to [EDDI state xml_Stars] (save value to profile)
and here's a sample of what's returned, having written it to a file and opening it in a web browser.
The order of attributes in a node is not important, so it doesn't matter that Internet Explorer has reversed them.
Hey all. I had a thought as I was flying around last night.
I'm an active BGS player and squadron member, and one of the gripes I have with the game is that you don't get a sense of being 'connected' to your local area of space.
Is there a simple way to have EDDI look for your squadron on entering a system and if it's the controlling faction, skip all the usual text and switch to something more specific and detail the things you want to know as a BGS player (current inf level, conflicts due etc.) starting with "you are entering [faction name] territory, welcome back [squadron rank]" or if it's not the controlling faction say something like "your faction is present in the system, but 20% behind the controlling faction xxx.."
Apologies if this is an old request, I haven't seen anything along these lines, but it would make a big difference to me...
Thanks again for the incredible extra level of detail that EDDI brings..
...
Is there a simple way to have EDDI look for your squadron on entering a system and if it's the controlling faction, skip all the usual text and switch to something more specific and detail the things you want to know as a BGS player (current inf level, conflicts due etc.) starting with "you are entering [faction name] territory, welcome back [squadron rank]" or if it's not the controlling faction say something like "your faction is present in the system, but 20% behind the controlling faction xxx.."
...
On the face of it, this strikes me as doable via customising the "Jumped" speech script. I'm fairly sure all the data is available for a talented scripter to work with.
I have started a project to automate some of my work in surveying the galaxy for icy rings. Part of this involves mapping the icy ring(s) round a body to the class of star that the body orbits. By 'class of star' I mean the combination of class and subclass e.g. 'M6'. The speech responder and VoiceAttack events of interest are: 'Discovery scan', which reveals the class and subclass of the stars found in the system, and the 'Body scanned' details which contain the information about the rings.
I decided to experiment with two techniques I haven't tried before:
Passing XML from EDDI to VA.
Manipulating the XML in VA using an inline C# function.
I found that the {wrap xml: ...} functionality of Cottle doesn't appear to be implemented, and I'm not sure how I would have used it, so I built up the XML in a text variable. The code shown below is what I've done so far, and I'm sharing it because it may be of interest to others.
Code:
{_ Fetch from Context _}
{set reportSystem to SystemDetails(state.eddi_context_system_name)}
{_ initialise the XML output }
{set xmlStars to "<?xml version='1.0'?><Stars>"}
{for body in reportSystem.bodies:
{_ if the body is a star (it could be an autoscanned planet) }
{if body.bodytype = "Star":
{_ add a node for this star }
{set xmlStars to cat(xmlStars,"<Star ")}
{_ set the star identifier (A, B, C, etc. }
{set starID to body.shortname }
{_ if the star is the only star in the system the shortname
is the same as the bodyname; in this case set the starID
to 'A' }
{if len(body.shortname) > 1: {set starID to "A"}}
{_ set the attributes for this star: name (letter), class, and subclass }
{set xmlStars to cat(xmlStars,"name='",starID,"' class='",body.stellarclass,"' subclass='",body.stellarsubclass,"'")}
{set xmlStars to cat(xmlStars,"/>")}
}
}
{_ complete the XML document and make it available to VoiceAttack }
{set xmlStars to cat(xmlStars,"</Stars>")}
{SetState("xml_Stars",xmlStars)}
In the ((EDDI Discovery scan)) method in VoiceAttack, the XML is retrieved using:
Code:
Set Text [StarsInSystem] to [EDDI state xml_Stars] (save value to profile)
and here's a sample of what's returned, having written it to a file and opening it in a web browser.
Thanks for the info; like I said, I'm not sure how I would have used it. By the way, where can I find the full enumerations of properties like 'stellarclass'? I was thrown when an instance of 'M_RedGiant' cropped up. I'd like to be ready for all eventualities.
(Main sequence) O B A F G K M L T Y
(Proto stars) TTS AeBe
(Wolf-Rayet) W WN WNC WC WO
(Carbon stars) CS C CN CJ CH CHd
MS S
(white dwarfs) D DA DAB DAO DAZ DAV DB DBZ DBV DO DOV DQ DC DCV DX
N (=Neutron)
H (=Black Hole)
X (=exotic)
SupermassiveBlackHole
A_BlueWhiteSuperGiant
F_WhiteSuperGiant
M_RedSuperGiant
M_RedGiant
K_OrangeGiant
RoguePlanet
Nebula
StellarRemnantNebula
On the face of it, this strikes me as doable via customising the "Jumped" speech script. I'm fairly sure all the data is available for a talented scripter to work with.
The very basics of what I'm after are a simple case of adding :
|elif reportsystem.faction = "my_faction_name":
you are in home territory Commander
to the "System State Report" script (using the text for my actual faction name) - This is a start.. but what I'd love to happen is for a report on the progress of the faction; has it increased or dropped inf since my last visit (or last server update), is there an upcoming conflict or system state I should be concerned about.
As you can tell from my pitiful code above, I'm no talented scripter...
We are please to announce that EDDI version 3.5.3-b2 is now available, either in the app or here. The full change log is available here. This is a minimal release to correct an issue with connecting to the Frontier API.
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