Released 30-12-22
=================
(For EDDI v4.0.2-b4)
*** EDDI v4.0.2-b3 bug.
Beta 3 had a nasty bug that reset all of my non-event based scripts back to default. Thankfully, I was able to use my last release as a backup for most of them, but there were still 13 scripts that I had to rebuild using my change log. I've managed to return them all to how I had them before the reset, all execpt one single log entry which I can't remember exactly what I did to achieve it (it was from many months ago). This is noted in the 'Mission check system' entry of the unreleased pre-v4.0.2-b1 section.
*** Routing broken due to GalMap bug. Sad times. :'(
Since Update 14, I've found there appears to be a bug in the Galaxy Map. Most of the time, once the system has been pasted into the search box and selected, none of the menu controls work (up/down, left/right, select, etc) until you hover over an icon with the mouse. This breaks the autoroute function, so until this is fixed in game, Autoroute will only work occassionally. (This is for the Odyssey/Horizons 4.0 codebase, with the 'new' GalMap).
If it's not fixed, I may just remove this functionality. If it gets fixed, then I have some other fixes I'd like to make. Right now though, there's no point if the GalMap isn't fixed, as I can't test things properly.
*** Next fire group & Previous fire group.
I'm not sure what to do about these functions. Right now, they will voice the fire group selected, but will only be correct if they have first been set up in the VA profile (under 'Hardpoints'). I wanted to use the 'status fire group' variable, but it gets updated too slowly to be of any use here, and causes sync issues if the groups are cycled too fast for it to keep up.
*** Live and Legacy
The VA profile doesn't yet distinguish between the live and legacy versions of Elite. It was designed with Odyssey in mind primarily, so I'm not sure how well it will work for Legacy or Live Horizons. I think the only game mode that could have a problem would be Live Horizons as that is using the Ody codebase. Still, the only thing that should be affected is the Autorouting system, and that's kinda broken at the moment anyway... :/
Voice Attack
============
((Autoroute))
- Updated to use 7 down keypresses as the addition of the 'Thargoid War' icon has moved the 'Plot Route' icon down by one.
- Removed the 'confirmation' speech, as using the 'Nav route' event in EDDI does this now. Also, with the GalMap bug, confirming a destination in this command is pointless anyway.
((Update Missions Route))
- Fixed 'eddi_context_missions_count' to check as a Decimal, not an Integer.
EDDI
====
General
- I've added a new context state variable to a few scripts. 'eddi_context_last_location' was initially used to change the speech when entering normal space back at a ground location you just departed from (like resetting a POI or settlement for material farming), but could be useful in the future, or if anyone has need of it.
- Entered normal space: Used as a check for the speech, and then reset to void at the end.
- Jumped: Reset to void.
- Liftoff: Set to the body you have taken off from.
- Near surface: Reset to void.
- Undocked: Set to the station you just departed from.
Backpack changed
- Removed code for using/removing an item. This would report everything if you needed to empty your backback when boarding due to space requirements, which was annoying. I wasn't sure about this when I first made it, so now that part is removed.
Bodies to map
- The '.shortname' bug (described in the 'unreleased version' changelog below) has now been fixed, so I've removed the additional code from this script.
Body atmosphere report
- Updated 'Class I' section to remove 'tempmin', and updated speech accordingly, to better match updated script in v4.0.2-b1.
Body materials report
- Updated to add special Selenium case from default script.
- Updated intro to check new 'state.eddi_context_body_signals' variable to prevent repeating the body name. (See Surface signals detected below)
Body report
- Corrected 'rotational period' section IF check of 'days' for a string, not a number.
Side note: After some testing with the updated default script, I found I don't need to change my existing code.
- Updated intro to check new 'state.eddi_context_body_signals' variable to prevent repeating the body name. (See Surface signals detected below)
Body report summary
- Updated 'rotational period' section to round days to one decimal place, and to check for a string, not a number.
- Updated 'toMap' section to change the '|else toMap = true:' to just '|else:' (toMap had to be true to get to that point anyway).
- Updated intro to check new 'state.eddi_context_body_signals' variable to prevent repeating the body name. (See Surface signals detected below)
Body scanned
- Updated to check new 'state.eddi_context_body_signals' variable, and speak accordingly. Should reduce amount of speech. (See Surface signals detected below)
Bounty awarded
- Removed use of 'ShipType' as v4.0.2-b1 fixes the problem this was correcting.
- Fixed speaking target ship model.
- Made speaking the on-foot targets a 50% chance, to make it more varied.
Carrier decommission scheduled
- Updated to use my 'Time Remaining' script.
Carrier docking permission
- Fixed to correct grammar for 'open' or 'opened' in default v4.0.2-b1 script. (Should be fixed in b2).
- Standardised formatting.
- Moved the word 'to' into the setting of 'open' as it's used in all instances.
Carrier fuel deposit
- Updated to add some variation to the speech.
Carrier jump engaged
- Updated to include changes from the v4.0.2-b1 default.
- Updated 'distance from home' section to put the code into the Occassionally(). This way the code is only run when needed, instead of every time and only being read out occassionally. This should also speed up the script a little.
- Standardised formatting.
Carrier jump request
- Added reporting of the amount of Tritium fuel that will be used (only if carrier details are available).
Carrier jumped
- Updated SetState variables to use 'void'.
- Updated to include changes from the v4.0.2-b1 default.
Carrier name changed
- Updated to replace the Pause() functions with commas, as the timing is the same.
- Updated to pluralise 'order' as I think it sounds better.
Carrier purchased
- Added a new script to report your new carrier's designation, and where it is located (useful if not in the current system).
Carrier service changed
- Standardised formatting.
- Moved the full stops (.) in both reporting sections for better placement, and to correctly terminate all possibilities.
- Fixed services section to correct grammar in default v4.0.2-b1 script. (Should be fixed in b2).
Commander continued
- Moved the SetState() variables for 'station.' into an IF check to make sure they exist first. Should help with the new 'Location' code (see below).
Commodity purchased
- Updated to include changes from the v4.0.2-b1 default.
Crime check station
- Updated to check if you're on a carrier and report appropriately. Carriers always report all services as available, but don't say if they are active (or even installed!) or not.
Crime check system
- Updated to include changes from the v4.0.2-b1 default.
- Updated to make the fines & bounties report section more efficient.
Discovery scan
- Updated to include changes from the v4.0.2-b1 default, but added it to the end instead of the start. I think it makes more sense there in my version.
- Put the check for an SRV into the materials report IF block, so this is only checked if a material report is needed.
- ... then removed the 'hasSRV' check, and moved it to the 'System materials report'. See that script entry below.
- Changed the setting and check for 'System materials report' to simply call the report. It's run anyway, so will either report, or say nothing.
Docked
- Updated the fleet carrier section to sometimes use 'the'.
- Updated to set the State variable 'eddi_context_docked_at' from 'event.model' and moved to the 'context' section.
- Updated the fleet carrier section to check 'event.model' instead of a regex for the carrier's code.
Docking denied
- Updated to include the off-line speech variations from v4.0.2-b1 default.
Entered normal space
- Updated to include changes from the v4.0.2-b1 default for entering near a ring, and the body type of the body it orbits.
- Rebuilt the first two blocks of the main speech IF check, separating surface stations and planets/moons into their own sections.
The first now deals with surface stations & settlements, and uses the last settlement from 'Settlement approached' plus your currently selected destination in 'status.destination_name'. Note: planitary locations are only detected at ~100km or less.
The second part now only deals with planets and moons.
This should simplify things, and the settlement timer is no longer required.
- Updated to set the 'near' choices at the start of speech, to have only one place to make any changes (if necessary).
- Fixed and updated the 'planitary ring' section, as it was no longer working as I had originally intended. The new default also doesn't work as I would like it to, but it isn't exactly "broken" either.
- Added new State variable 'eddi_context_last_location' as a check for speech, and reset to void at the end. See notes for this release above.
Entered signal source
- Updated to remove the semi-colon ';' from 'Salvage' in the second part of the main IF block.
Fuel check
- Updated to use 'system.systemname'.
- Removed my temporary fuel calculation as this is now fixed in v4.0.2-b1.
- Updated to make the 'recommend refueling' (just below the RouteDetails('scoop') line) slightly more efficient.
- Added missing setup of 'reportSystem'.
FSD engaged
- Updated to move certain speech sections to the Jumped event, as per the v4.0.2-b1 default.
Glide
- Updated to include changes from the v4.0.2-b1 default.
Jumped
- Updated SetState variables to use 'void'.
- Updated to move certain speech sections from the FSD engaged event, as per the v4.0.2-b1 default.
- Moved the 'Fuel check' function to the end because the scooping recommendations are always voiced last, due to the RouteDetails() function. It makes more sense to have the check at the end.
- Updated check for 'reportSystem.population' to see if it exists, as well as being zero.
- Updated 'distance from home' section to put the code into the Occassionally(). This way the code is only run when needed, instead of every time and only being read out occassionally. This should also speed up the script a little.
- Changed the Distance() function to use the system names rather than the x,y,z co-ordinates.
- Fixed check for number of missions. Was '= 0', should have been '> 0'.
- Removed the section that reported arrival at your destination, as I discovered this no longer works due to the variables being 'void' when arriving.
- Adjusted the IF block setting 'occasional' to give a better randomness. Added another section to the IF check, to 'smooth out' the frequency of speech as the number of jumps remaining gets lower.
- Added an additional check for '!system_missions' near the end, to prevent it reporting any missions again.
- Added new State variable 'eddi_context_last_location', reset to void at the end. See notes for this release.
Liftoff
- Added new State variable 'eddi_context_last_location' set to the body you have taken off from. See notes for this release.
Location
- Updated to use 'event.bodyname'.
- Added faction status, state_report, and system_engineer report from the v4.0.2-b1 default.
- Updated to report 'main star' if near to the only star in the system.
- Updated to add 'planitary ring' section.
- Updated to add on-foot locations.
- Updated to try to account for being on-foot in a fleet carrier. However, I can't find any way to determine it's name.
- ... Then completely rebuilt the 'You are' section after extensive research into what variables are populated on game load.
Due to limited data for this event when starting a game while on foot, speech options are very limited for the first time after starting EDDI. However, if just relogging while EDDI is still open, there are more options available by using the 'status' variables, plus some State variables I already have set from the 'Docked' event. Although, you already know where you are for a relog, so...

- Moved Mission and Crime checks into a separate IF check.
- Updated State variable 'eddi_context_docked_at' to be void in the 'context' section, and be set to the station model in the Mission & Crime check.
Market information updated
- Updated 'eddi_context_docked_at' variables.
Material discovered
- Updated to correctly use 'a' or 'an', depending if the material rarity is to be spoken or not.
Message received
- Standardise formatting.
- Added code to only speak sender if not in the message, to prevent repeating it. This is usually when another player uses an emote.
- Updated to incorporate changes from v4.0.2-b3, and tidied them up a little bit.
- Removed setup of the 'StringReplace()' function as this isn't actually used anywhere.
- Updated to make voice selection a little more efficient.
- Added 'Microsoft Zira Desktop' to voice exclusion list, as I don't think it sounds very good.
Mission abandoned
- Updated with additions from the v4.0.2-b1 default.
Mission accepted
- Updated a SetState variable to use 'void'.
- Updated to use 'event.' instead of 'mission.' for all variables, to match the v4.0.2-b1 default.
- Also removed the now redundant setting of 'mission' to MissionDetails().
Mission check galaxy
- Removed redundant permit aquisition related code as these missions auto-complete on acceptance, and instantly award the permit.
- Correctly indented the code as I had forgotten to do this before.
Mission completed
- Updated a SetState variable to use 'void'.
- Updated to add the permit reward section from the v4.0.2-b1 default.
- Updated to only occasionally speak the faction state info, like the v4.0.2-b1 default.
Mission faction state
- Updated to add missing state types: Blight, Drought, Natural Disaster, Pirate Attack, and Terrorism.
- Updated to only speak if 'state' is set, like the default script.
Mission redirected
- Removed my fix code from my last release, as the situation it fixed has been corrected in a v4.0.2 beta.
Missions Route Clear
- Updated SetState variables to use 'void'.
Missions Route Update
- Updated the 'plot Galactic Map route' request to check if the route type was 'update' and use plot or re-plot accordingly.
Music
- Updated to use 'status.destination_localized_name' for checking if at a fleet carrier, rather than my guess of what this variable would be called when I originally wrote this code. It now correctly reports when you arrive at any fleet carrier.
- Rebuilt the fleet carrier section, and added code to check if it's your own fleet carrier (if carrier details are available).
Nav route
- Standardised formatting.
- Added comma to 'reportDestination' section, and removed uncessary IF check.
- Changed comma in 'details' reporting section to a full stop (.) to make reporting sound better for all options.
- Updated to merge in my code from Next jump (see below) to sound better when plotting from a map.
- Added some more variations to the inital speech.
Near surface
- Added new State variable 'eddi_context_last_location', reset to void. See notes for this release.
Next destination
(Note: this script is diabled by default in the EDDI default personality)
- Updated to add a little more variety to the speech, and to try to make things sound a little better (maybe?). This is personal preference of course, but is part of the reason it's disabled in the default.
- Updated to indicate if the destination is a fleet carrier.
- Updated to add 'the' to the first speech option, in certain situations, to make the speech sound better.
Next jump
- Removed my reporting code and merged it into Nav route (see above).
Respawned
- Updated SetState variable to use 'void'.
Route details
- Updated to add SetClipboard() to match v4.0.2-b1 default script.
- Updated 'set', 'cancel', and 'update' sections to match v4.0.2-b1 default script.
- Added 'carrier', 'neutron', 'scoop', and 'recalculating' sections to match v4.0.2-b1 default script.
- Rearranged sections into alphabetical order.
- Updated 'carrier' section to report Tritium use for single jumps.
- Updated 'neutron' section to randomly use 'Neutron' or 'Pulsar'.
- Updated 'route' section to use 'event.count - 1' to match v4.0.2-b1 default script.
- Updated 'scoop' section to use 'system.systemname', and made current system stars reporting more efficient.
Settlement approached
- SetState for the timer has been removed, as 'Entered normal space' no longer requires it.
- Added comment to say settlements are only detected at ~100km or less (could even be lower, but I'm not sure).
Ship interdicted
- Removed use of 'ShipType' as v4.0.2-b1 fixes the problem this was correcting.
Ship sold
- Updated to use 'system.systemname'.
ShipType
- Removed this script as v4.0.2-b1 fixes the problem this was correcting.
SRV docked
- Updated SetState variable to use 'void'.
SRV docked/launched/turret deployable
- Updated these scripts to use the 'event.srvType' variable.
Surface signals detected
- Updated to include body if known, similar to the v4.0.2-b1 default.
- Updated to add new 'state.eddi_context_body_signals' variable. Used in various 'Body...' scripts to prevent repeating the body name. (See 'Body...' scripts above)
System Exploration Report
- Updated SetState variable to use 'void'.
- Updated jumping check as this script is now called after the jump completes.
- Added code to call 'System material report' at the end, and to check for an SRV first. Also added the preference at the top, to enable/disable this.
- Added a 'fetch from context' for the system name at the start.
- Updated the 'Start Speaking' section to not say anything if jumping in and it's the first visit to the system. Had to add this as the script is now called after the jump completes, so 'visits' is 1 now, not 0.
- Updated the "You have" check to also speak if the system has not been fully scanned.
System materials report
- Standardised formatting.
- Added a carriage return 'char(10)' to the 'descriptions' setups, to make reading the 'speechresponder.out' file a little easier. And added one before speech starts too.
- Changed the 'reportMats' in preferences to 2. Using 0 or 1 when you have not set any minimum or desired levels for mats, means nothing would be reported, even if you are low on a material.
- Updated to sort the bodies by alphanumerical order.
- Updated to sort the materials by alphabetical order.
- Fixed 'factionPresence.influence' check to be >= 0.25, not >= 25. For this variable, 1.00 = 100%.
- Fixed the |else: in 'addSignalMaterial()'. It was missing [ ] around the value in the array key:value pair.
- Put the surface materials section into a check for 'hasSRV' so this is skipped if the CMDR doesn't have an SRV (and so can't collect any surface materials). This way signal sources will always be spoken, even if you don't have an SRV.
- Changed the 'descriptions' array, making two separate ones, 'signalDescriptions' and 'bodyDescriptions', to make it easier to add 'and' between them.
- Updated check for signalMaterials & bodyMaterials that says "and", to make it a single element array so it can be added between the two section reports if needed.
- Removed the unnecessary '0:' from the |else: in 'addBodyMaterials()'.
- Removed the initial code lines for the signal sources setup (and corresponding end curly brackets '}'). Iterating through all signal sources until a "High Grade Emissions" is found seems a little redundant. You need to scan signal sources to find an HGE before this code section will run, but it is only called from a 'Discovery scan' or 'System scan complete' (and now my 'System Exploration Report'), which do not scan signal sources, making this section not work for them. Also, sometimes an HGE will not spawn, even if it could in the system, so the code would not work when it should. Making this change allows the code to run as expected. Additionally, I've had to hard code the signal source type (HGE) at the end of this section, but this is in English, so other languages will need to translate it.
***Note: 'reportSystem.Allegiance.invariantName' and 'reportSystem.factions.ActiveStates' do not appear to be populated, so most of the signal source section will not work until these are fixed. Reported on GitHub #2454. I've temporarily changed 'allegiance' to 'reportSystem.allegiance', but I think this is only English names. Maybe it's already 'invariant' as this is how it's used in every other script?
System report
- Added 'Alliance' allegience, and ordered them alphabetically.
- Added government types from the v4.0.2-b1 default.
- Added local reputation from the v4.0.2-b1 default, and tidied the code up a little.
System scan complete
- Added 'materials report' section from the v4.0.2-b1 default, and removed redundant setting of 'materialsReport'.
- Updated the 'bodies to map' section to only pause and speak if there is anything to report.
- Updated the 'materials report' check to remove 'hasSRV', as I moved this to the 'System materials report' script. (See above)
- Fixed setting reportSystem to SystemDetails(), as this line is missing in the default and is required for the materials report check to work.
System state report
- Updated to add missing states types, and ordered them alphabetically.
- Updated some state descriptions to match the v4.0.2-b1 default.
- Updated the conflicts section to match the v4.0.2-b1 default, and compacted the code slightly.
Undocked
- Changed State variable for 'eddi_context_docked_at' to reset to void in the 'context' section.
- Updated the first destination recommendation section IF check, to split the route and check if it's greater than 1.
- Added new State variable 'eddi_context_last_location', set to the station you just departed from. See notes for this release.
Vehicle destroyed
- Updated SetState variable to use 'void'.
(Un)Released ??-??-22
=====================
(As EDDI v4.0.2-b1 came out with many updates)
VoiceAttack
===========
((EDDI Shutdown))
- Tweaked the initial pause down by 0.5 to 1.5 seconds. This should stop the error message in the log when doing a quick quit/relog of the game.
((Setup fire groups))
- Updated to set the current firegroup to 'Status firegroup'. It works better here (see below).
((Autoroute))
- Added a half second pause after the six 'down' keypresses (for Odyssey only) to give enough time for it to happen.
Next fire group & Previous fire group
- Removed check and error message for being in Supercruise. You can select groups while in SC, so no idea why I had this in there.
- Made them target the game client.
- Tried to update them to use {Status firegroups} but EDDI reacts far too slowly to make this any use here.
- Updated to check for 'gui focus' as you can't change fire groups while in the map (for example).
- Updated to check how the command was executed. If it was by 'spoken' or 'external' then the next group control will be activated. If by other means (keyboard, mouse, joystick, etc) then there is no need to activate the control.
ReadMe - VA Fire Groups.txt
- Updated this with more information.
EDDI
====
Backpack changed
- Updated to report the correct amounts remaining, and to check for consumables removed.
Bodies to map
- Added check for planet types starting with a vowel to the full report section, to correctly use 'a' or 'an'.
- Added carriage return characters to the loops for the body reporting. This will make the speechresponder.out file easier to read when viewed.
- Fixed the vowel checking to check the correct relevant body variables.
- Added some code to the setup loop, to check if the system name is at the start of the body name. Fixes rare condition where the system name is incorrectly stripped from the body name by EDDI to make '.shortname'. i.e. for "Planet Lave" EDDI makes the '.shortname' equal to "Planet". (This should be fixed in next EDDI version. Github #2345)
Body report
- Small update to use true/false for the toMap variable, instead of 0/1.
- Removed unnecessary quotes and brackets for reportBody.bodytype in the toMap speech.
Body report summary
- Small update to use true/false for the toMap variable, instead of 0/1.
- Removed unnecessary quotes and brackets for reportBody.bodytype in the toMap speech.
Body scanned
- I'm still having problems with some TTS voices saying "A 6" as "Eye 6", and numbers higher than 9 saying the 'A' as 'ah' (sounds like the 'a' in 'can'). I've added a specific check for "A 6" to make sure something preceeds it, as that seems to fix that problem. As for the numbers higher than 9, I'm changing the space in the 'name' to hyphens, as this seems to help with some voices (but not all).
- Changed the code that sets up the 'name' variable in the 'short_intro' section, to be something more normal, rather than having it set up as a subroutine which was being called whenever 'name' was needed.
- Rebuilt the IF check for saying the body type in the 'short_intro' section.
- Changed the body name to use P() for better pronounciation.
Book transport
- Added a check for departing a combat zone and setting a state variable, so that when the Location event triggers, most of it is not reported.
Bounty awarded
- Added the 'Worker' target type to my code, so that the speech sounds correct when killing on-foot settlement non-combat personnel.
Carrier cooldown
- Updated script to provide some random variations.
Carrier jump engaged
- Updated environment check to include being 'On Foot'. This now accounts for being on foot in the Carrier interior when it jumps.
Carrier jumped
- Added resetting of my missions route variables, and signals detected variables.
- Changed setting the 'system' variables to be 'system.' rather than 'event.'
- Added resetting my discovery variables.
Community goal
- Removed quote marks around the {event.name} as these could result in a TTS voice interpreting them as (and saying) 'inches' if a number is at the end of the CG name. Added a colon just before it, to compensate.
Disembark
- Added code to report on the environmental temperature.
Docked
- Added code to check for docking at a fleet carrier.
- Moved the FC code out of the IF/ELSE check so now there is only one instance of it (instead of one for each IF and ELSE), and updated it to set what the station/FC is to be called.
- Added a State variable for being docked at a Fleet Carrier (set to TRUE here). Used in the 'Market information updated' script.
- Moved 'location type' code out of the 'taxi' IF condition, and then replaced the boolean variable with one that stores the location type (carrier, megaship, or station).
- Added code to check for docking at a megaship.
Entered normal space
- Updated some IF checks to give better results.
- Added a section for entering normal space between two bodies (usually a binary pair).
Entered signal source
- Fixed script by removing the $ from "$USS_Type_", and the trailing : from all source types.
It seems EDDI had an internal variable change at some point and didn't update the script to match. (Should be fixed in the next version of EDDI).
FSD engaged
- Added check for being in hyperspace to skip the 5 second pause if EDDI is still speaking from the last system entered (long system report).
Limpet launched
- Updated script to reduce the amount of message spam when launching multiple limpets at once. Will now say "Limpet launched" for the first one, and then "Additional limpets launched" for the second. After that, it should remain silent until five seconds after the last limpet was launched.
- Added code to ensure that the same description (drone or limpet) is used in both speech instances.
Location
- Added a check for the fleet carrier location, so 'near' will only be spoken if a body location is known.
- Updated planitary location code, to account for jumping while onboard a fleet carrier.
- Added a State variable for being docked at a Fleet Carrier (set to TRUE here). Used in the 'Market information updated' script.
- ...then replaced the boolean variable with one that stores the location type (carrier, megaship, station, or none).
- Added setting a State variable for 'eddi_context_system_system' for use in the 'System Exploration Report' script.
- Added a check for departing a combat zone (see 'Book transport' above) so that much of this script is not spoken.
Market information updated
- Added a check for being docked at a Fleet Carrier, to appropriately say 'Fleet Carrier' instead of 'Station'.
- Updated the location check to say either Carrier, Megaship, or Station, depending on where you are docked.
Mission abandoned
- Added 'covert' to the on-foot speech.
Mission accepted
- Added 'covert' to the on-foot speech.
Mission check system
- Updated the report setup section to check for a station name, in an attempt to account for missions at megaships. I found 'station.name' can sometimes be blank for these.
*** EDDI v4.0.2-b3 bug reset this script. This is the only change log entry I can't remember how I achieved it, so is no longer applicable... unless I can recall what I did, or encounter the problem this fixed again, of course.
Mission completed
- Added a section to report on the total amount of a reward material you have on board. Suggested by Cmdr. Wozzlebatneo.
- Added initialising variables 'missions_here' and 'pending' to zero in the last section. If you have no missions, these would be 'void' and the checks would fail.
- Rearranged certain code sections over the whole script to make the speech flow and sound better after adding the material rewards.
- Updated the Community Goal section. Sometimes the 'faction' was the same as the name of the CG. This fixes it being repeated.
- Added 'covert' to the on-foot speech.
Mission expired
- Added 'covert' to the on-foot speech.
Mission failed
- Added 'covert' to the on-foot speech.
Mission redirected
- Added 'covert' to the on-foot speech.
Mission warning
- Added 'covert' to the on-foot speech.
Missions Route Fast
- Added code to inform that you need to collect your cargo, if you forget to load up. (Yes. I did this.
facepalm)
Module ... scripts
- Updated to consider a loan module from a starter ship. The various scripts should now correctly mention if the module is a loaned one.
Ship fsd
- Added script to warn if the destination system has no scoopable stars in. This early warning allows you to abort a jump if you are low on fuel and you need to scoop at the nearest star. Suggested by Cmdr. Parduz.
- Added a call to the 'Fuel check' script, and added a check to warn when fuel level is below 25%.
Ship repaired
- Added missing apostrophe for the ships name. If the name ended with an 's' it would sound incorrect.
Star scanned
- Added P() to correctly pronounce starsystem names.
System Exploration Report
- Added checking for a Surface Scanner, and updated report IF check. If you don't have one to map bodies with, then it will only give the short report, to keep this brief. Useful for non-exploration ships, like fighters.
- Added a 'CRLF' (a {char(10)}) after the body mapping section, and to the nav beacon scan recommendation section. These make the speechresponder.out file a bit easier to read.
- Updated the IF check for the mapping report at the very end, so that it is not spoken on game load. This would just be a repeat of earlier speech.
Touchdown
- Added the word 'average' to the surface temperature report. The reported temperature is only the body average, and can vary depending on things like day/night side and proximity to the equator. So a 'safe average temperature' could still be dangerously high if landing on the day side near the equator. If this can be calculated somehow, I may look into it in the future.
Undocked
- Added a State variable for being docked at a Fleet Carrier (set to FALSE here). Used in the 'Market information updated' script.
- ...then replaced the boolean variable with one that stores the location type (carrier, megaship, station, or none).