Opened 6 months ago

Closed 6 months ago

#11498 closed defect (duplicate)

King's Quest I (SCI) hangs indefinitely after playing the fiddle in the leprechaun cave

Reported by: agustincordes Owned by: sluicebox
Priority: normal Component: Engine: SCI
Keywords: Cc:
Game: King's Quest 1

Description (last modified by agustincordes)

This might be an original bug from Sierra. It's a game-breaking condition that can only be reproduced with the attached save file:

When you meet the leprechauns, you can either rely on the four-leaf clover to avoid them or play a fiddle to make them dance and get some extra points. However the game hangs when I play it. The leprechauns disappear, but Graham will keep playing the fiddle indefinitely.

Note the score doesn't go up and the music stops -- in the correct sequence, Graham plays a bit more after the leprechauns disappear before stopping.

While testing, I reloaded a previous save and acquired some missing points (exiting the dragon's cave before the eagle catches me). Then the sequence worked correctly, the key difference being 135 points instead of 133.

I've tested this on 2.1.2, 2.2.0git, iPad Pro, macOS Catalina and Windows 10. The bug can always be reproduced with the save. Tested this with KQ1SCI from the King's Quest Collection Series (1997).

Attachments (2)

kq1sci.001 (19.7 KB ) - added by agustincordes 6 months ago.
KQ1.jpg (242.5 KB ) - added by agustincordes 6 months ago.

Download all attachments as: .zip

Change History (9)

by agustincordes, 6 months ago

Attachment: kq1sci.001 added

by agustincordes, 6 months ago

Attachment: KQ1.jpg added

comment:1 by agustincordes, 6 months ago

Description: modified (diff)

comment:2 by agustincordes, 6 months ago

Description: modified (diff)

comment:3 by sluicebox, 6 months ago

Game: King's Quest 1
Priority: blockernormal

Thank you for this well written report and saved game. When I try this using the same ScummVM and game versions on Windows 7 it works, although it does take a while because the fiddle music is 35 seconds long and has to finish playing. I tried a couple combos including letting the music finish while the messages were still on screen but I couldn't break it.

This game script waits for the fiddle music to finish and that music is 35 seconds long. If the music were to get interrupted somehow, or prevented from signaling the script upon completion, then that could explain it. That would be consistent with your description that Graham keeps animating when there is no music. Have you set any ScummVM audio settings to non-default values? Are you using any exciting audio devices? =)

Could you break down the steps you're doing after loading the save game to make sure we're doing the same things around the same times? I'm very interested in how long the music plays and when it stops, since that's what should trigger Graham to put the fiddle away.

As a temporary workaround, if you can bring up the ScummVM debugger (CTRL+SHIFT+D or CTRL+D or maybe CTRL+ALT+D, it changed recently) you can enter "send fiddler cue" to get unstuck.

comment:4 by sluicebox, 6 months ago

Never mind the feedback requests! I can reproduce this on Mac 10.14.6 using ScummVM 2.1.0.

When the Leprechauns disappear, their "poof" sounds are somehow pausing or stopping the fiddle music, which is incorrect, and so the script never completes.

comment:5 by sluicebox, 6 months ago

After further testing, it looks like this has been recently fixed. I can reproduce the bug on Windows and Mac with the latest release, 2.1.2, but not with the latest daily builds or when building from source.

Try the latest daily build: https://buildbot.scummvm.org/builds.html

If it doesn't work, please include the full (long) version number text. (And if you are using interesting audio settings)

comment:6 by agustincordes, 6 months ago

Ha! It's working indeed with the latest daily build. Same savegame, same condition. Well, we can close the ticket. Glad to hear it was nothing serious.

comment:7 by sluicebox, 6 months ago

Owner: set to sluicebox
Resolution: duplicate
Status: newclosed

Great! Thank you for confirming the fix.

Duplicate of #11476, fixed 15 days ago: https://github.com/scummvm/scummvm/commit/e16ab73cc1c4067ae24b708ff5640931dd77fbfc

Note: See TracTickets for help on using tickets.