Jump to content


Photo

Initial sound not playing


  • Please log in to reply
4 replies to this topic

#1 temnix

temnix
  • Member
  • 983 posts

Posted 16 April 2017 - 12:15 PM

Has anyone run into this - that a creature's INITIAL_MEETING sound, whatever it is, won't play when it does StartDialog/NoSet?



#2 Fiann of the Silver Hand

Fiann of the Silver Hand
  • Member
  • 286 posts

Posted 16 April 2017 - 04:46 PM

Verily.  This is probably related to the same engine change between BG & BG2 that affected other NPC sounds like the infamous Candlekeep Chanters.  In BG, as soon as you walked into sight range of Imoen, she would play her "heya" sound before walking over to you and starting the dialog.  In BG2 she doesn't say anything and just moves.



#3 temnix

temnix
  • Member
  • 983 posts

Posted 17 April 2017 - 12:47 PM

Heya, it's me, Imoen. So she doesn't say that now? I never noticed. Man, that takes so much away. Well, the workaround I'm using for my own mod is to put VerbalConstant(INITIAL_MEETING,Myself) in the file before the dialog-firing prompt. This works, but the line is spoken at the Ambient volume level, not the Voice level. For a long time on my modder's setup I had ambient sounds turned off almost completely, so I don't know where players usually keep that slider at.

 

But the strange part is that NPC sometimes do say that introductory line. Even usually. But when they don't, I can't make them.


Edited by temnix, 17 April 2017 - 12:48 PM.


#4 Fiann of the Silver Hand

Fiann of the Silver Hand
  • Member
  • 286 posts

Posted 17 April 2017 - 10:41 PM

Well, the worst thing is that they can't say it when they first see you, like across the map.  So they've got to move to you and get in an actual dialog before they say it.  There really isn't a good workaround besides something like

 

 

IF

    See(Player1)

THEN

    RESPONSE #100

        PlaySound(xxx)

        MoveToObject(Player1)

END


#5 temnix

temnix
  • Member
  • 983 posts

Posted 19 April 2017 - 07:16 AM

They can do the VerbalConstant() anywhere, but, as I said, it plays at the value of Ambient or perhaps Sound Effect. This may be different with PlaySound(), which probably uses the latter. Other than this thing about volume, I just use StartDialog() or StartDialogNoSet(). As you know, it's done at the NPC's visual range, whereas Dialog() makes the NPC walk over to you, and here they do say their line. Imoen does, for example, in BG:EE, I just spawned her ("imoen2"). So does Noober... But if you want the distance thing, then:

 

IF

    See(Player1)

THEN

    RESPONSE #100

        PlaySound(xxx) /// Or VerbalConstant(INITIAL_MEETING,Myself) - probably better, because it's at the creature's voice volume, at least, like the rest of its sounds

StartDialog(Player1)

END

Edited by temnix, 19 April 2017 - 07:16 AM.