Opened 6 months ago

Closed 4 months ago

#11746 closed defect (fixed)

SCI: KQ6 (CD) - never stops playing "caught" music when caught by guards at the castle

Reported by: onpon4 Owned by: sluicebox
Priority: normal Component: Engine: SCI
Version: Keywords: original
Cc: Game: King's Quest 6

Description

This is a long-standing bug that I've experienced for years, but never reported it. Guess It's time I change that.

In the castle in King's Quest VI, getting caught by guard dogs causes some music to play, then causes Alexander to be thrown into a dungeon cell. The music played is supposed to stop when he's thrown into the cell, but ScummVM does not stop the music.

Since this bug is long-standing and I haven't played with the original executable in years, I don't remember if this bug ever happened on the original, but I'm certain it at least didn't happen often. In ScummVM, it happens every time: the "caught" music will *never* stop (in the respective game) until it is played again. It even persists in saves after that point.

I only know for sure that this happens in the CD Windows version since that's all I ever play. I don't know whether or not it happens in the DOS version.

Attachments (3)

kq6-cd-win.003 (39.8 KB ) - added by onpon4 6 months ago.
KQ6SG.009 (10.2 KB ) - added by onpon4 6 months ago.
KQ6SG.002 (10.7 KB ) - added by raziel- 6 months ago.

Download all attachments as: .zip

Change History (20)

comment:1 by ZvikaZ, 6 months ago

Hi.
Have you tried with recent build?
There have been many SCI music fixes in the last months.

If you have tried with recent build, what version is it?
What are your sound settings?
Have you tried with other sound settings?
Also, can you supply a save game, and instructions how to trigger the problem?

by onpon4, 6 months ago

Attachment: kq6-cd-win.003 added

comment:2 by onpon4, 6 months ago

Ah, I didn't realize there had been such recent fixes.

Just gave version 2.2 a try and it seems this particular issue hasn't been fixed at least in version 2.2.

I've attached a save file. If you go straight out of the room in you start in, then either wait a bit or go into the north hall, you'll get caught by a guard dog and trigger the event.

comment:3 by onpon4, 6 months ago

Ah, yes, settings.

I'm explicitly using the AdLib emulator as the music device, and everything else is at the defaults. It looks like music device doesn't matter, I tried a couple of others with the same result.

comment:4 by m-kiewitz, 6 months ago

It would be nice if you could verify that this issue happens when using the original interpreter. Playing using the Windows 3.11 interpreter is quite messy.

If it happened sometimes, then it's actually better now that it happens all the time, at least that's consistent and should be fixable, I would assume in that case that it's a script bug, but we will see.

comment:5 by onpon4, 6 months ago

It would be nice if you could verify that this issue happens when using the original interpreter. Playing using the Windows 3.11 interpreter is quite messy.

The only machine I have access to that's set up to run the original binary with, I unfortunately don't have a working monitor for (and that computer's almost as old as I am so it's hard to say how good its health is overall). It's been years, so it might have occurred, but if it did happen it must have been incredibly rare. I don't think it did ever happen; I'm pretty sure the times I've had it happen in the past were all with ScummVM.

The music is supposed to stop at the moment you're thrown into the dungeon. It's certainly possible that the music stopping may have been a result of an engine bug and that the scripters just forgot / had no need to make the music stop manually as a result. I'm not familiar with SCI, though, so that's just speculation on my part.

comment:6 by raziel-, 6 months ago

Summary: KQ6CD never stops playing "caught" music when caught by guards at the castleSCI: KQ6 (CD) - never stops playing "caught" music when caught by guards at the castle

comment:7 by raziel-, 6 months ago

@onpon4

You can play the game in DosBox, i just tried and it works, i may have another version, see below.
Though i haven't tried to reach that point in the castle with DosBox as it seems to be far into the game, near the end even...if you got a quick way to enter the castle dungeon, please post here and i'll do my best to reach it in DosBox.

Due to a different interpreter used in ScummVM, your save state is not usable in DosBox, i'm afraid.

@m-kiewitz

I can confirm this bug.
It's more sneaky actually than it first sounds (pun intended)

The "caught" sound is playing along, when you get thrown into the cell.
But it plays parallel to the "cell" sound or "ambient" sound while in the cell, so it's hard to make out, but it IS audible since the notes of the two sounds clash and that makes them sound wrong.

The "caught" sound plays along, during you being freed by Jollo and will only stop when you are out in the dungeon again and regain control of Alexander.

If you wait there to get caught again or move to another guard dog partol, it's all over again.

I'm using MIDI through real hardware here.

King's Quest VI: Heir Today, Gone Tomorrow (CD/Windows/English)

AmigaOS4 - PPC - BE - SDL2

comment:8 by m-kiewitz, 6 months ago

@raziel-

A playthrough in Dosbox should be done and I think I uploaded my own saved games to the ScummVM FTP server some years ago, but KQ6 has all sorts of script changes for the Windows 3.11 version, so let's say it doesn't happen when using the Dos interpreter, then one would still have to play through it using the Windows 3.11 interpreter to make absolutely sure that it's not a script bug (I suspect it is a script bug).

Windows 3.11 sort of works in Dosbox, but it's quite a hassle.

comment:9 by raziel-, 6 months ago

Understood.
I've got one more free day tomorrow, let's see how far I get.

by onpon4, 6 months ago

Attachment: KQ6SG.009 added

comment:10 by onpon4, 6 months ago

I've gotten the DOS version running in DOSBox and gotten to that end portion, so here's some information from that: the DOS version seems to have the bug too. I'm sure the Windows version didn't have this bug, so I guess it was fixed just for that engine, or perhaps it just blundered into not bugging out often enough for it to not be a problem I ever really noticed.

So yes, definitely a scripting bug.

I've attached what I think is the DOS save file that starts you in the castle. (I say "I think" because I'm not entirely sure, but if they're sequential by when they were saved it should be it. It'll be called "castle" if I got it right.)

comment:11 by onpon4, 6 months ago

Ah, one more detail I think is worth noting:

One rather absurd aspect is that the DOS version (and I think ScummVM as well) plays this music during the death screen, making it seem rather weird, annoying, and yet kind of hilarious. Just to prove that this is indeed a bug and not a weird design decision.

comment:12 by m-kiewitz, 6 months ago

I wouldn't be surprised if the Windows interpreter has limitations and may possibly stop music from playing automatically. That interpreter is a big mess, I had to go through it when reverse engineering the hires portraits code.

Any way good that this is verified to be a game bug.

by raziel-, 6 months ago

Attachment: KQ6SG.002 added

comment:13 by raziel-, 6 months ago

@m-kiewitz
@onpon4

I too played through to the castle scene with DosBox now.
The attached DOSBox save is unfortunately not working for me, my game still complains about a different interpreter saving the file and refuses to load it.

I added one myself now.

I can confirm that this is a genuine (script?) bug in the original interpreter.
Just like with ScummVM, the sound plays parallel with the "cell" sound, they both clash and the normal music is recovered once Jollo releases you from the cell and you gain back control of Alexander.

comment:14 by onpon4, 6 months ago

Worth noting, by the way, the Jollo scene is only one of three ways getting captured can go (it only does each way once):

  1. Jollo rescues you. As reported, it seems that the scene of Jollo walking away resets the music somehow in the DOS version. Incidentally, just finding him walking does this too (see below).
  2. You get out with the skeleton key. The music continues seemingly indefinitely, although it could be that it gets reset circumstantially later on sometimes. Of particular note, when I went to the screen to the right, I saw the scene of Jollo walking away from where he would have rescued me; I assume this is just because I hadn't gone into that room immediately after he rescued me. Whatever the case, this weirdness kind of ended up putting a band-aid on the music bug, I assume because it forced everything music-wise to reset.
  3. You get a game over: wedding music plays, then you get a non-standard game over screen. In the DOS version, the music temporarily seemingly stops when the wedding music plays, but restarts again when it goes to the game over screen (alongside the "game over" music). I assume this is just because the wedding music happens to use the same channels as the music that gets played when you're caught.

comment:15 by onpon4, 6 months ago

OK, just a couple more interesting observations about the DOS version:

  • The bug does not trigger if you get caught upstairs, only if you get caught in the basement. (You can get caught upstairs by going through the door on the east room.)
  • When you get out of the dungeon either from Jollo or from the key, the music stays stuck at the dungeon music. Whenever the music changes, that happens to also fix the lingering music problem with the music that started when you were caught. This can happen by, for example, going to the door on the west (talk to the door and enter ALIZEBU to open it).

So this very well might just have been a bug that testers of the original never noticed, probably because avoiding getting caught in the basement is so easy. Or it could have simply been blind luck. Actually, come to think of it, I think the Windows version might have done the opposite, exhibited the bug upstairs but not downstairs. Hard for me to say, though.

In any case, you can see what the music is supposed to do in the DOS version by going upstairs and letting the guard dogs catch you there (rather than in the basement). At least, it seemed to work right the one time I tried that.

comment:16 by sluicebox, 4 months ago

I noticed this a while ago and was also unsure how much it differed from the original. I put off looking into it because of the exact complexity that's been identified here: which path, did you escape, how did you escape, which music was playing when caught...

I've seen the CD version under the DOS interpreter keep playing guard music during game over screen, and I've seen ScummVM resume guard music after Jollo frees you and never resume the castle music. It *seemed* like there was more wrong guard music in ScummVM but I wasn't sure.

I'll try figuring out the boundaries of this soon.

comment:17 by sluicebox, 4 months ago

Keywords: original added
Owner: set to sluicebox
Resolution: fixed
Status: newclosed

Fixed in: 188423fb6e4cd9040a7e3d82cf02510bc7778812

Thanks for reporting this! It's a script bug in the original that was introduced in the CD version.

Note: See TracTickets for help on using tickets.