[Scummvm-tracker] [ScummVM] #7065: SCI: PHARKAS Mac easter egg freezes partway
sluicebox
trac at scummvm.org
Mon Dec 10 05:03:33 CET 2018
#7065: SCI: PHARKAS Mac easter egg freezes partway
-------------------------------------------------+-------------------------
Reporter: SF/eisnerguy1 | Owner: (none)
Type: defect | Status: new
Priority: normal | Component: Engine: SCI
Resolution: | Keywords:
Game: Freddy Pharkas: Frontier |
Pharmacist |
-------------------------------------------------+-------------------------
Comment (by sluicebox):
I took a look at this and it is a script bug, though I don't know why it
worked in the original. I'm not setup to disassemble the Mac interpreter
and I pray to never be.
The reason the sound is looping forever is because the script requests it
to. The loop property on macSound is set to -1, which means loop forever.
The script macThing plays macSound and tells it to continue macThing when
the sound finishes playing, which it never does on ScummVM, because the
sound isn't supposed to finish. It looks like they put the wrong loop
value but it accidentally worked on Sierra's interpreter so no one
noticed. No other scripts in this game wait on a sound with loop -1 to
finish. That's what I'd expect since deliberately doing that wouldn't make
sense.
macSound is also declared with the wrong sound number: the Yeehaw! from
the title screen. This isn't a problem since the number is set to the
right one when playing, but it could be a hint to some copy/pasting or
unfamiliarity with sound scripting that led to the bug.
Right now this game doesn't load at all (#10440, #10792) but once that's
taken care of this can be fixed with a small script patch that changes
macSound:loop from -1 to 1 or an investigation can be launched into why
the behavior is different in ScummVM. I tried patching the loop value and
that worked. I doubt any other scripts in other games depend on this
behavior since they'd all break in ScummVM the way this one did and be
noticed, but maybe it's something more complicated.
I guess the lesson is that if you're going to tack on an easter egg about
being a shunned Mac programmer you better make sure you do it right...
--
Ticket URL: <https://bugs.scummvm.org/ticket/7065#comment:4>
ScummVM <https://bugs.scummvm.org>
ScummVM
More information about the Scummvm-tracker
mailing list