Okay, so if you look at the script for in the speech responder for the Docking granted event it starts like this:
Code:{set station to StationDetails(event.station)}
StationDetails() is a function that pulls the station details out of EDDB (well, a server that frontends EDDB with an API because themroc is allergic to REST, but hey). It returns a Station object. The problem with trying to incorporate this in to VoiceAttack is two-fold. First, there's no way of VoiceAttack running these ad-hoc functions and being able to return data. Second, even if it could then the question is how to return the data, as it's an entire object. Flattening it is one of the problems I was talking about that requires lots of work in VoiceAttack because it just doesn't have any idea of arrays or dictionaries, or anything else that would allow a complex object.
These are the types of issues that led me to give up on using VoiceAttack as the primary scripting language for EDDI. It just isn't designed with these complex use cases in mind.
Understood, thanks.
Is there any method within the Cottle speech responder scripts to save any variable within the Event object (such as event.station, event.landingpad) to a non-volatile variable that persists outside that particular event script and can be used within other event scripts or user written Cottle scripts. If so, this is not clear to me in Cottle documentation.
Again, I would happily dump VA script (other than simple keypress commands) for the speech responder.
Last edited: