Opened 13 months ago

Last modified 13 months ago

#14388 new defect

SCI: Police Quest SWAT - Demo - Missing version 4 robot decoding

Reported by: dwatteau Owned by:
Priority: normal Component: Engine: SCI
Version: Keywords: kRobot, RobotDecoder
Cc: Game: Police Quest: SWAT

Description

This happens with either ScummVM 2.7.0 or current HEAD, using the pqswat-win-demo-en.zip demo, or the original files from my French Torin's Passage SierraOriginals CD (which has a demo for Police Quest SWAT).

Loading the demo in ScummVM and waiting a bit, the console will eventually open with the following fatal error:

ERROR: Invalid robot file 11.rbt!

Looking at the associated code (<https://github.com/scummvm/scummvm/blob/v2.7.0/engines/sci/video/robot_decoder.cpp#L374>), the 11.RBT file indeed starts with unexpected content:

$ hexdump -C ROBOTS/11.RBT | head -n 1
00000000  3d 00 53 4f 4c 00 04 00  00 00 00 00 2c 01 38 01  |=.SOL.......,.8.|
$ hexdump -C ROBOTS/12.RBT | head -n 1
00000000  16 00 53 4f 4c 00 04 00  ad 08 00 00 2c 01 91 00  |..SOL.......,...|

MD5 sums are the following ones:

MD5(ROBOTS/11.RBT)= 9274e1023eb27ffd00b3bf47bf0bb45e
MD5(ROBOTS/12.RBT)= 201278d821ee17c0e8cac7f88dfc5380

and they're identical between the provided demo and the one from my old CD.

I only own the demo, not the full game, so I don't know how the full game behaves in that way.

Change History (5)

comment:1 by dwatteau, 13 months ago

<https://github.com/scummvm/scummvm/blob/v2.7.0/engines/sci/video/robot_decoder.cpp#L536> has a // TODO: Version 4 for PQ:SWAT demo? comment, so maybe the PQ:SWAT demo is meant to be officially unsupported for now, but it's not marked as such, AFAICS.

comment:2 by sluicebox, 13 months ago

That TODO is from csnover's original "Implement kRobot" commit in 2017 and he wrote all the Robot code, so he's probably the only one who knew about this: 0f2748b15a630f9d12ff0511d4e4cde79b8e915f

Can you update the spreadsheet? I would be surprised if this gets addressed anytime soon. (I don't know who would do it.)

comment:3 by sluicebox, 13 months ago

BTW, if anyone ever does want to implement version 4 robot decoding, let me know. I can point in the right direction and provide resources. I suspect that this demo is the only thing affected, or else we would have heard about it by now. It looks like a straightforward task. (I just don't care about pqswat, otherwise I'd do it.)

comment:4 by dwatteau, 13 months ago

Thank you for looking into this. I don't have access to that spreadsheet myself, but I'll ask for a modification.

I've also submitted a PR so that the ADGF_UNSUPPORTED flag is also set for this demo, which seems fair at the moment?
https://github.com/scummvm/scummvm/pull/4892

comment:5 by dwatteau, 13 months ago

Keywords: kRobot RobotDecoder added
Summary: SCI: Police Quest SWAT - Demo - "Invalid robot file 11.rbt"SCI: Police Quest SWAT - Demo - Missing version 4 robot decoding
Note: See TracTickets for help on using tickets.