Opened 8 months ago

Closed 4 months ago

#11357 closed defect (fixed)

SCI: KQ6CD script hangs in catacombs

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

Description

In the catacombs if you direct Alexander to throw the skull into the gears, the game displays the animation and describes the action taken. However, the script more or less hangs as the scene never resolved. The music continues but no more actions can be input and no resolution to the trap ever occurs. Note: proper action would have the trap destroy the skull which is not strong enough.

Change History (7)

comment:1 by MarioKartFan, 8 months ago

Summary: KQVI CD script hangsKQVI CD script hangs in catacombs

comment:2 by digitall, 8 months ago

Component: --Unset--Engine: SCI
Game: King's Quest 6
Summary: KQVI CD script hangs in catacombsSCI: KQ6CD script hangs in catacombs

comment:3 by digitall, 8 months ago

@Mariokart: Can you please add a savegame at this point to aid replication and investigation or at a minimum a room number from the debugger?

comment:4 by sluicebox, 4 months ago

I can't reproduce this. I tried the CD version in DOS and Windows modes and all speech/text modes and bug hunted the script.

@MarioKartFan's other bug reports have been on 3DS so maybe this can only happen on exotic platforms. If anyone can test this on 3DS that would be great. Looking at the script though, I can't see any opportunity for the kind of lockup being described. It's a simple hands-off scene with no other scripts running concurrently. There is a sound effect that the script waits on, and those can be point of failures, so maybe something platform-specific went wrong during playback to prevent it from completing. Still, I doubt that, because the same thing happens when correctly solving this puzzle by throwing a brick, and this bug report is just about a death-sequence and not "the game can't be completed".

I'll leave this open a while longer in case @MarioKartFan returns, but without more information I'll eventually close it. I would like to know:

  1. What platform?
  2. Is KQ6CD in DOS or Windows mode?
  3. Speech, Text, or Speech+Text mode?
  4. What is the last message displayed before lockup?
  5. Does this happen every time the skull is thrown?
  6. Does throwing the brick lockup?
  7. Screenshot of the lockup


To test this scene with the debugger:

send ego get 11
room 420

comment:5 by bgK, 4 months ago

Hi,

I tried reproducing this on the 3DS (Revision fd13a9bf92afef9087837cda8bc3f7ad8f79122b). Both with the DOS and the Windows version of the game, in Text + Speech mode. Alexander died as expected.

comment:6 by sluicebox, 4 months ago

Thanks for testing, @bgK.

I'm now certain that there is nothing wrong with this room but I'm leaving this ticket open because coincidentally I just figured out the worst Sierra script bug I've ever seen and it completely explains what happened. I should have it fixed in the near future.

comment:7 by sluicebox, 4 months ago

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

I believe this lockup was caused by a script bug in the Narrator class, which causes rare random lockups when a message is said. It explains what happens here, the last message prior to lockup was spoken and then never ended, preventing the script from advancing.

Fixed in: e2fc630fc4136fa378ed8cfb4a28af22dbe59a46

Note: See TracTickets for help on using tickets.