Jump to content

silencing of a character in BG1 (vanilla)


jastey

Recommended Posts

I've seen it several times, that a dialogue line can be silenced by setting reference to an "empty" soundfile.

 

If, for example, I do not want a boy to say his original line (I am talking about the sound), I would give as sound name something non-existent, e.g.

 

IF WEIGHT #-1

~See("C#Q07003")~ THEN quest_dialog_01

SAY ~Who are you?~ [C#BLANK]

IF ~~ THEN EXIT

END

 

[C#BLANK] being the nonexistent sound file.

 

Only problem, this doesn't seem to work. The boy still has his original sound if talked to.

The decompiled dlg in game looks like:

 

IF WEIGHT #1 ~See("C#Q07003")

~ THEN BEGIN 5 // from:

SAY #26513 /* ~Who are you?~ [C#BLANK] */

IF ~~ THEN

~ EXIT

END

 

Question: Is this a BG1 vers. BGII engine thing, or am I missing something trivial again?

Link to comment

Does the boy have the sound file assigned to him in his cre file?

 

If he does then you will need to patch the cre with a new stringref (blank).

 

Most generic commoners will have standard intro sound and selection sounds so that when you click on them you get the sound.

Link to comment

Almost all sounds in BG are actually part of the creature's soundset, and the first one always fires when you click the object (rather than when dialogue starts, as in BG2). You shouldn't really be able to override it, and unless it's a special character (related to some existing quest or plot line), the sound will be generic, so I'm not sure why you'd bother?

Link to comment

According to the other thread, she's concerned about people who have already started a game and visited the area. Changing the soundset is easy, but it's going to affect every instance of that character, and it won't help people who have this area in their saves.

Link to comment
blah.
My thought exactly.

Thank you for the explanation(s), seems the picked/talked to sounds can't be muted in BG1 then. And "SetPlayerSound" or how it is called doesn't work in BG1, either.

 

This is kind of frustrating. I'll have to think about this some more. (I am asking myself why I am bothering, too. But if one betatester complains there will be others, too, and I am a kind of perfectionalist. Not saying I do things perfectly, though!)

Link to comment

If the sounds are linked to strrefs and the strrefs are called via dialog then you shouldn't actually need the character soundset ...right?

 

For example if every time you click on the boy he says ~My mom told me not to talk to strangers!~ you should be able to remove this so long as you have dialog that applies to the cre in another area that also has a sound linked.

 

So you set up a block in his dialog that says !Area(MyArea) Say ~My mom told me not to talk to strangers!~ so players will still get this dialog and sound but just not in your area.

 

Will that work for you?

Link to comment

Unfortunately not.

 

First, my problem was not what he sais in terms of written dialogue, but the sound that is connected to it. That's the (whatever it's called) klick talk sound, and I can't change or mute it, as it's stored in the cre, and doesn't get overwritten by dialogue. (I wonder what would happen if I'd assign a valid sound reference to his dialogue, though. Would I hear two different sounds when talking to him?)

 

Second, there is no AreaCheck() in BG1 available.

Link to comment

OK, but removing the sound from the cre would only work via tp2 patching and wouldn't be valid if the player already visited the area.

 

As far as I can tell, the sound set in dialogue does not get higher priority, or my blank sound file would have overritten the original sound.

 

AREA globals availability in BG1: I have no idea.

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...