Hard Light Productions Forums

Modding, Mission Design, and Coding => The Modding Workshop => Topic started by: Kestrellius on January 11, 2019, 04:47:04 am

Title: Is there a way to force TTS to read messages?
Post by: Kestrellius on January 11, 2019, 04:47:04 am
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.

Thoughts?
Title: Re: Is there a way to force TTS to read messages?
Post by: Nyctaeus on January 11, 2019, 05:18:23 am
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.
Title: Re: Is there a way to force TTS to read messages?
Post by: 0rph3u5 on January 11, 2019, 05:20:16 am
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 (https://media.moddb.com/images/members/5/4078/4077319/screen0040.png)) 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).
Title: Re: Is there a way to force TTS to read messages?
Post by: AdmiralRalwood on January 11, 2019, 07:02:06 am
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 (https://wiki.hard-light.net/index.php/Messages.tbl#.23Simulated_Speech_Overrides).
Title: Re: Is there a way to force TTS to read messages?
Post by: Kestrellius on January 11, 2019, 07:34:22 am
Additionally, you can specify additional generic message sound filenames in messages.tbl (https://wiki.hard-light.net/index.php/Messages.tbl#.23Simulated_Speech_Overrides).

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.
Title: Re: Is there a way to force TTS to read messages?
Post by: Kestrellius on January 12, 2019, 01:03:39 am
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.