Author Topic: Is there a way to force TTS to read messages?  (Read 645 times)

0 Members and 1 Guest are viewing this topic.

Is there a way to force TTS to read messages?
I've been wanting to play Exile, but the first time I tried it, I bounced off -- mostly because I can't stand trying to keep track of text messages while in combat. Generally I like to use the built-in text-to-speech, but it doesn't work for Exile (or for several other campaigns) because of a beeping sound that plays when a message is sent, keeping TTS from activating.

What's the most expedient way to change this? I know I could do it by modifying the mission files so that the beep doesn't play, but to do that I'd presumably have to unpack the relevant .vp, and making the edits without spoilers might be tricky (though of course I'd do it in a text editor using find and replace).

I have a suspicion that simply deleting the sound in question might also work, but that would probably also require .vp unpacking. Also, I think the beep might be a retail or MediaVPs asset, in which case deleting it could have weird consequences.



Offline Nyctaeus

  • Betrayal is his middle name
  • 211
  • Your local priest of cheeki breeki!
    • Minecraft
    • Exile
Re: Is there a way to force TTS to read messages?
It's known issue for us. Exile in current state is not supporting TTS because TTS requires sound files of beeps to have unique filenames. We were not aware of this. Perhaps we will fix it if we decide to rush a patch, but so far we're pretty occupied with other stuff.

IMHO FSO should overwrite any sound files when player want to use TTS, especially considering the fact that various campaigns use different, custom beeps. So far such function is not implemented.

Edit: Discussed it with co-leader. We will try to find time to fix this in upcoming weeks.
« Last Edit: January 11, 2019, 05:33:09 am by Nyctaeus »
Exile | Shadow Genesis | DA Profile | P3D Profile

Proud owner of NyctiShipyards. Remember - Nyx will fix it!

All of my assets including models, textures, skyboxes, effects may be used under standard CC BY-NC 4.0 license.


Offline 0rph3u5

  • 211
  • Someone should label the Future: Assembly Required
    • Steam
    • Twitter
Re: Is there a way to force TTS to read messages?
Doesn't affect TTS but there is always the message log you can bring up mid-mission via F4.

On the subject of the message beep - it is a convention that in place so people don't miss any message, esspecially with some HUD configurations (like mine) that use smaller fonts. I am not sure if the use of Axem's message box script or custom HUDs are going to provide a remedy here long term...

However with regards to editing, correct me if I am wrong, since you are looking for
Code: [Select]
+Wave Name: msgstart.wavand replace it with nothing, you could do an quick automated search and replace on the mission files in a text editor without having to read them. I don't think the line is used for any other purpose, and the + at start indicates that it is an optional field anyway (if it is not optional you might have to replace it with something).
"When you work with water, you have to know and respect it. When you labour to subdue it, you have to understand that one day it may rise up and turn all your labours into nothing. For what is water, which seeks to make all things level, which has no taste or colour of its own, but a liquid form of Nothing?" - Graham Swift, Waterland

"As you sought to steal a kingdom for yourself, so must you do again, a thousand times over. For a theft, a true theft, must be practiced to be earned." - The terms of Nysa's curse, Pathfinder: Kingmaker

"...because they are not Dragons."


Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Re: Is there a way to force TTS to read messages?
Any messages with the audio set to a soundfile named "none", "cuevoice", "emptymsg", "generic", or "msgstart" is considered a generic filename, and doesn't stop TTS from running on the message. Additionally, you can specify additional generic message sound filenames in messages.tbl.
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

Re: Is there a way to force TTS to read messages?
Additionally, you can specify additional generic message sound filenames in messages.tbl.

Ah! That should be able to fix this, then. I can copy Exile's messages.tbl, add the beep to the generic category, and stick it somewhere where it will override the original.

Re: Is there a way to force TTS to read messages?
Okay, so, it turns out there's a really simple solution for this. All you have to do is set the voice volume to zero in the options. The beeps are considered voice files, so if voice is off entirely, they don't play and TTS is able to activate.