Opened 7 years ago

Closed 7 years ago

Last modified 4 years ago

#6076 closed defect (fixed)

SCI: SQ4 CD crash when robot shoots Roger

Reported by: misterhands Owned by: m-kiewitz
Priority: normal Component: Engine: SCI
Keywords: original script Cc:
Game: Space Quest 4

Description

Using latest win32 build, SQ4 CD DOS

To reproduce this crash:
From the start screen go right, then near the rope.
When the zombie appears and approaches pick the rope.
Then when the robot comes and is about to shoot Roger, the engine stops with this error :

lookupSelector(): Attempt to send to non-object or invalid script. Address was 0000:0000!

This crash also occurs with SCUMMVM 1.4.1 and regardless of the Speech+Text setting.

The zombie and robot behave differently in the original interpreter, but I managed to replicate the bug under DOSBox.
The message given there is :
"Oops, you did something we weren't expecting.
Whatever it was, you don't need to do it to complete the game.
Try taking a different approach to the situation.
Error 4.
SCI Version 1.001.064"

It looks like what is causing this is the fact that Roger is still in his pick_an_object animation
when the death_by_robot animation is supposed to happen.

Ticket imported from: #3539400. Ticket imported from: bugs/6076.

Change History (4)

comment:1 Changed 7 years ago by bluegr

This is a script bug, as game scripts try to access an invalid object (which is what the "Oops" error means in the original interpreter). Moving to the SCI known script bugs page:

comment:2 Changed 7 years ago by bluegr

Keywords: script added
Owner: set to bluegr
Status: newclosed

comment:3 Changed 4 years ago by m-kiewitz

Keywords: original added
Owner: changed from bluegr to m-kiewitz
Resolution: fixed

comment:4 Changed 4 years ago by m-kiewitz

Finally fixed by script patch in commit 806cf00061a7466008733ade8723cdc9f9a8d4bb

Note: See TracTickets for help on using tickets.