Release 16-03-19
================
VoiceAttack
-----------
- Added 'body mapped' and 'body scanned' events which update the saved mapping lists.
- Added command 'What should I map?' to call the 'Bodies to Map' script.
- Renamed 'Update System Scan Value' to 'Update System Scan Data'.
- Renamed 'Load System Scan Value' to 'Load System Scan Data'.
- Updated 'System Scan' commands to include mapping lists.
- Updated 'Update System Scan Data' to use DEC value for System Value instead of TXT.
- Added Krait Phantom and the Mamba to the Hardpoints -> Setup Firegroups command
- Added command 'Tell me about body ...' Used to get Body report for a specific body in the current system. e.g. "Tell me about body A 6".
Specifically designed to provide information for bodies that get auto-scanned from the 'honk' and don't report.
This VA command separates out the spoken body name and passes it to the 'Body Info Request' script in EDDI.
After much trial and error, I think I've got this working just right (within voice recognition capabilities).
Currently configured to allow for the following:-
Star designations - A, AB, ABC, B, BC, C
Body/Planet designations - 1 to 9
Moon designations - A to E
As the honk is short range when scanning bodies, nothing more than this should be needed. However, this can still be used to repeat other bodies with designations within the scope of this command, i.e "Tell me about body 9 E". Any more options could make the number of dynamic commands excessive and be a performance hit.
Note: This will not add to your system scan value, as this depends on the 'estimatedscanvalue' variable which is only available from the Body Scanned event.
- Added command 'What have I mapped?' to call 'Bodies Mapped' script.
Event Scripts
-------------
- Body Mapped
- Added call to 'Body Name Tidy' to use shortend body names.
- Added code to support 'Bodies to Map' script. Deletes mapped body from saved lists.
- Added call to 'Bodies to Map' when last 'good' and/or 'possible' candidate body has been mapped.
- Added 'mapped' state variable to record which bodies have been mapped in this system.
- Added alphanumeric sort for the 'mapped' list.
- Body Scanned
- Updated event.name check and store in 'state.systemscan' variable array. Should finally fix multiple repeats of speech, particularly when they are not consecutive.
- Added code to support 'Bodies to Map' script. Adds body to mapping lists if it's valuable.
- Added 'good candidates' (>80K Cr), and 'possible candidates' (>10K Cr) lists.
- Added alphanumerical sorting to the mapping lists, based on body name.
- Removed all mapping code as now collated into new function script 'Bodies Scanned' (see below).
- Commander Continued
- Added check to set state of 'bodies_to_map' used for checking mapped bodies.
- Added speech to remind you if you have bodies to map in your current system.
- Jumped
- Reset 'systemscan' state variable.
- Added code to support 'Bodies to Map' script. Resets mapable planet lists.
- Ship Interdicted
- Updated interdictor faction for Empire or Federation.
- SRV Launched
- Added state variable for SRV launching.
- SRV Under Ship
- Check SRV launched variable so speech isn't triggered immediately when SRV launched.
- Star Scanned
- Updated event.name check and store in 'state.systemscan' variable array. Should finally fix multiple repeats of speech, particularly when they are not consecutive.
- Touchdown
- Replace setting 'body' with 'reportbody'.
- Updated state.loading check in case it has not been set to anything.
- Undocked
- Updated autoroute IF statement and moved splitting of state variable into the IF block.
Function Scripts
----------------
- Bodies Mapped
- New function to list the bodies mapped so far in the current system.
- Bodies Scanned
- New function to record system value and body mapping worth.
- Added code to support 'Bodies to Map' script. Adds body to mapping lists if it's valuable.
- Added 'good candidates' (>80K Cr), and 'possible candidates' (>10K Cr) lists.
- Added alphanumerical sorting to the mapping lists, based on body name.
- Added planet types as well as value to determine 'good' or 'possible' mapping candidates. Will now add bodies if "Tell me about body..." is used in VA.
- Only adds scan value if event data is present (from an actual scan) as value is only available from that.
- Added check of 'mapped' variable to see if the body has already been mapped and change speech accordingly, and also not re-add already mapped bodies.
- Bodies to Map
- New script to report all noteworthy (read: valuable) bodies scanned so far in the current system.
- Terraformable
- Ammonia
- Earth-like
- Water Worlds.
- Any body over 80K Cr.
- Best called from VoiceAttack by asking "What should I map?".
- Allows for rapid scanning of the system, then report valuable bodies, when requested.
- Should only report bodies not yet mapped. Mapping will remove that body from the lists. Jumping will clear the lists.
- Added variation to report speech.
- Added 'possible candidate' section to report bodies worth over 10K not included in the main section (High-metal content worlds & Metal-rich bodies).
- Added option to report all mapping candidates, or only the good ones (default is good only).
- Body Reports (All)
- Embarking on the Distant Worlds 2 Expedition, I've set the reporting to be minimal to speed things up greatly.
- Body Atmosphere Report
- Re-wrote the atmosphere compositions sections to give almost the same variation of replies per atmosphere type.
- Updated punctuation to sound correct no matter what items are reported or not.
- Updated IF statement to report an atmosphere by checking 'reportbody.atmosphere' instead of '.pressure'. I found a planet with zero pressure, but still had an atmosphere to report. The default was ignoring it.
- Found that previous change to realistically reflect atmosphere also corrected blatantly wrong descriptions. I found a planet that was described as "Ammonia and Oxygen" for it's type, yet had none of those element present in it's composition.
- If no pressure description, make the description 'a' to 'an'.
- Body Info Request
- Used to get and format the body name from the VoiceAttack command 'Tell me about body...'
- Takes the spoken body name from the VoiceAttack state variable, formats it to that expected by the 'Body Report', then calls 'Body Report'.
- Can be used without VA, but you will need to manually edit the 'test string' near the top of this script to be the body name, then click the 'Test' button.
(Note: Test buttons not working in 3.3.7-b1, but this personality will work on older versions of EDDI).
- Body Materials Report
- Updated reporting materials IF statement if reportMats isn't set to all materials.
- Body Name Tidy
- Updated to fix use in 'Entered Normal Space' event.
- Updated to account for planets that orbit secondary stars, that orbit a main star.
- Updated IF statement for mainstar... Then changed it back. :P
- Greatly reduced final IF statement, used to ascertain body type.
- Updated 'parent' setup and checks, if 'body = system' and if length of 'parent' > 1. Helps prevent BodyDetails() object error.
- Body Report
- Updated Rings section to not add duplicate ring types, ie "Rocky and Rocky rings".
- Added code to support 'Bodies to Map' script... Then moved it to 'Body Scanned' event.
- Added call to new 'Bodies Scanned' function.
- Body Volcanism Report
- Updated locations so that magma is correctly reported as being a sub-surface phenomena.
- Star Report
- Re-arranged to be more like the default script, while retaining my modifications.