Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#7179 closed defect (fixed)

SQ4 CD DOS crash when selecting 'Catalog' in Hz So Good

Reported by: SF/captainjei Owned by: m-kiewitz
Priority: low Component: Engine: SCI
Keywords: script Cc:
Game: Space Quest 4

Description

ScummVM version: 1.9.0git4196-ga1affaa (Aug 8 2016 20:22:2)
Language: English
Version: CD, DOS
Platform: Win32

When the player goes into Hz So Good and selects the 'Catalog' option, the debugger console opens with the error message, "ERROR: Unknown kDisplay argument (0068:ffff) from method doCatalog::changeState (script 391, localCall 84)!"

This does not happen on the last stable release.

Ticket imported from: bugs/7179.

Attachments (1)

sq4-cd.054 (42.8 KB) - added by SF/captainjei 3 years ago.

Download all attachments as: .zip

Change History (7)

comment:1 Changed 3 years ago by bluegr

Thanks for your report. Could you please attach a saved game?

Changed 3 years ago by SF/captainjei

Attachment: sq4-cd.054 added

comment:2 Changed 3 years ago by SF/captainjei

Sure. If this is the right file, you should be standing right outside Hz Be Good.

comment:3 Changed 3 years ago by OmerMor

It's reproducable by teleporting to room 390 via the debugger at the start of the game.
Perhaps it's related to the workaround at https://github.com/scummvm/scummvm/blob/master/engines/sci/engine/workarounds.cpp#L476 ?
It was introduced in https://github.com/scummvm/scummvm/commit/8f5d65d0f11289bd4b2595ea4ad08b5d2344b133 and seem to touch the function (localproc_84) that makes the faulting kDisplay call.

comment:4 Changed 3 years ago by m-kiewitz

This is really weird. I added a workaround for this issue already back in 2010 - it is in fact a script bug, but somehow I wrote doCatalog::mode instead of the correct doCatalog::changeState. It's weird that no one reported it before, although we had tons of play throughs since then. I guess maybe selecting "catalog" is not required for game completion? Because I remember playing through the game back then by myself.

Anyway fixed via commit 0f1fd5c9553fa0db01ceb12f7d315cead6ab2a64
Thanks for reporting

EDIT: I assume that we silently ignore such issues in official releases, but the workaround was never applied until now.

comment:5 Changed 3 years ago by m-kiewitz

Keywords: script added
Owner: set to m-kiewitz
Resolution: fixed
Status: newclosed

comment:6 Changed 3 years ago by SF/captainjei

I've definitely played it through a few times since 2010 without any problems. You can beat the game without going into Hz So Good and buying the PocketPal adapter though, but then you can't monitor the droids inside Vohaul's fortress or get a full score.

Thanks for the fix!

Note: See TracTickets for help on using tickets.