Opened 8 years ago

Closed 8 years ago

#5788 closed defect (fixed)

IHNM: Freeze when exiting from the motor room's right door

Reported by: SF/umbrio Owned by: bluegr
Priority: normal Component: Engine: SAGA
Keywords: script Cc:
Game: I Have No Mouth

Description

When you play with Gorrister in zepelin before land with the zeppelin if the las action is use fork in motor if you go out for right door game freeze (if you go out for left door all good).

I have no mouth and i must scream (English) (bug in all version)
S.O: Windows XP SP3
Scummvm 1.4.0 git1003-g72da8ef

savegame attached

Ticket imported from: #3358007. Ticket imported from: bugs/5788.

Attachments (2)

ihnm.s00 (16.6 KB) - added by SF/umbrio 8 years ago.
SCREAM.SAV (10.0 KB) - added by SF/umbrio 8 years ago.
dosbox savegame (English version)

Download all attachments as: .zip

Change History (11)

Changed 8 years ago by SF/umbrio

Attachment: ihnm.s00 added

comment:1 Changed 8 years ago by SF/umbrio

Summary: IHNM: Freeze When go out to right doo in motor roomIHNM: Freeze When go out for right door in motor room

comment:2 Changed 8 years ago by SF/umbrio

To reproduce the bug only go out for right door using savegame

comment:3 Changed 8 years ago by digitall

Replicated from savegame with latest Git Master.
This may be a script bug which occurs in the original, though it is not listed on the SAGA wiki TODO or BUGS pages.
Would need to play this sequence in the original with DOSBox to confirm.

Running with -d 10 gives the following debug output up to the lockup (which occurs just after the Zepplin drops the ladder):
playCutaway(14, 0)
rememberMode(0)
Interface::setMode 14
loadResource 109 0x1089B07:0x7B7C
loadResource 110 0x1091683:0x7B5D8
Executing thread offset: 22416 (0x6) stack: 1
Calling op opConstInt
Executing thread offset: 22419 (0x19) stack: 2
Calling op opCcallV
Calling #81 sfWaitFrames argCount=1
waitFrames(38)
Executing thread offset: 22423 (0x8) stack: 1
Calling op opStrLit
Executing thread offset: 22426 (0x53) stack: 2
Calling op opSpeak

This is not a hard lockup, but an engine lockup i.e. it is still possible to exit ScummVM normally with no segfault etc.

comment:4 Changed 8 years ago by SF/umbrio

probed in dosbox, in english and spanish versions and not occcurs, attached dosbox savegame if it is useful

Changed 8 years ago by SF/umbrio

Attachment: SCREAM.SAV added

dosbox savegame (English version)

comment:5 Changed 8 years ago by digitall

umbrio: Yes, very useful. Thanks for confirming this. Will try to locate the cause and create a fix/workaround, but this will take some time. Please standby.

comment:6 Changed 8 years ago by digitall

Ran ./scummvm -d 31 and exited throught the left door (Good) and the following occurs:
playCutaway(14, 0)
rememberMode(0)
Interface::setMode 14
loadResource 109 0x1089B07:0x7B7C
loadResource 110 0x1091683:0x7B5D8
Executing thread offset: 21287 (0x6) stack: 1
Calling op opConstInt
Executing thread offset: 21290 (0x19) stack: 2
Calling op opCcallV
Calling #81 sfWaitFrames argCount=1
waitFrames(5)
Executing thread offset: 21294 (0x6) stack: 1
Calling op opConstInt
Executing thread offset: 21297 (0x19) stack: 2
Calling op opCcallV
Calling #66 sfPlaySound argCount=1
SndRes::playSound 41
Executing thread offset: 21301 (0x6) stack: 1
Calling op opConstInt
Executing thread offset: 21304 (0x19) stack: 2
Calling op opCcallV
Calling #81 sfWaitFrames argCount=1
waitFrames(40)
Executing thread offset: 21308 (0x19) stack: 1
Calling op opCcallV
Calling #84 sfScriptReturnFromVideo argCount=0
returnFromVideo()
returnFromCutaway()
Executing thread offset: 21312 (0x8) stack: 1
Calling op opStrLit
Executing thread offset: 21315 (0x53) stack: 2
Calling op opSpeak
clearCutaway()
restoreMode(0)
wakeUpThreads(11)
Opening hashed: voices1.res
SndRes::playVoice 303
wakeUpThreads(2, 333)
Executing thread offset: 21322 (0x6) stack: 1

comment:7 Changed 8 years ago by bluegr

Summary: IHNM: Freeze When go out for right door in motor roomIHNM: Freeze when exiting from the motor room's right door

comment:8 Changed 8 years ago by bluegr

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

comment:9 Changed 8 years ago by bluegr

A script bug, fixed in rdae9fbd

Thanks to digitall/tdhs for finding the actual script bug

Note: See TracTickets for help on using tickets.