#13043 closed defect (invalid)

SCI: GK1: Sound effects keep playing in ScummVM save/load dialogs

Reported by: Paolo86cripple Owned by: sluicebox
Priority: low Component: Engine: SCI
Version: Keywords: original
Cc: Game: Gabriel Knight 1

Description

In GK1, if saving or loading in a location where a looping sound effect is playing, this sound effect will not halt even if the ScummVM save/load dialogs are opened, but will only stop if you exit the location.
Attaching a save where the bug is clearly reproduceable:

  1. Open the savegame

2.The save is in Jackson Square, where a little tap dancer is obviously making sounds with his feet.

  1. Open the SCUMMVM save/load dialogs. You will clearly hear his feet still tapping.

This also occurs with the crackling fireplace sound effect in Malia's library.

Using a self-compiled 2.6.0git Linux build

Attachments (1)

gk1-cd-win.006 (48.5 KB ) - added by Paolo86cripple 11 months ago.

Download all attachments as: .zip

Change History (3)

by Paolo86cripple, 11 months ago

Attachment: gk1-cd-win.006 added

comment:1 by sluicebox, 11 months ago

Interesting, I had wondered about this before. What's happening is that digital audio sounds aren't paused when the save/restore dialog appears, only the MIDI sounds are paused. Other examples are the map screen, the bar, and the overlook.

This is all original behavior in the game. The ScummVM dialog is unrelated; you'd also hear these sounds if you enabled the game's original dialogs or if you did this in DOSBox.

When the game displays save/restore, the scripts call kDoSoundPause to pause all sounds. But the GK1 interpreter only paused MIDI sounds and not digital audio. Looks like that was changed in later interpreter versions to pause all sounds. ScummVM tests the sound version to adopt the correct behavior.

So I don't see a bug here, it's all original behavior and an accurate implementation of what Sierra was doing. Enjoy the atmosphere, I suppose! =)

comment:2 by sluicebox, 11 months ago

Keywords: original added
Owner: set to sluicebox
Resolution: invalid
Status: newclosed
Note: See TracTickets for help on using tickets.