Opened 17 years ago

Closed 17 years ago

Last modified 17 years ago

#270 closed defect (fixed)

SAM: Glitches in Cut-Scene (Stealing Wig)

Reported by: SF/linnard Owned by: SF/painelf
Priority: normal Component: Engine: SCUMM
Keywords: Cc:
Game: Sam and Max

Description

ScummVM 0.2.0 Release
Built on May 15 2002 01:04:49
Linux-SDL
Sam 'n' Max Hit The Road, CD-Talkie US

When in the cut-scene as Sam is stealing Conroy's
wig, the Conroy Eggplant appears in place and starts
sinking while Sam is still bouncing it in his hand
(the fake head just blinks out). The Indiana Jones
music does not play, either.

Ticket imported from: #556564. Ticket imported from: bugs/270.

Attachments (1)

samnmax.s04 (65.3 KB ) - added by SF/linnard 17 years ago.
Conroy's Room, with Eggplant

Download all attachments as: .zip

Change History (11)

comment:1 by SF/ender, 17 years ago

Please attach a saved game before this point.
The music is due to the different iMUSE implementation of
Sam and Max (see the bug above, 'Sam and Max: iMUSE
transitions'.

Assigning this to Yazoo, as this sounds like a BOMP problem
(maybe scaling, Yaz?)

comment:2 by SF/ender, 17 years ago

Component: Engine: SCUMM
Game: Sam and Max
Owner: set to vincenthamm

comment:3 by SF/linnard, 17 years ago

Remove reference to music missing--I was using -eseq,
which apparently doesn't work on my card, so none of the
music was playing.

I'll get a save game as soon as I've got time to play
through the game again (ScummVM autosaved JUST after that
point for me, nice app). Should be later today.

comment:4 by SF/linnard, 17 years ago

Save uploaded.

Use the Eggplant in the inventory on the Toupee to the right
to trip the cutscene.

by SF/linnard, 17 years ago

Attachment: samnmax.s04 added

Conroy's Room, with Eggplant

comment:5 by fingolfin, 17 years ago

Summary: Glitches in Cut-Scene (Stealing Wig)SAM: Glitches in Cut-Scene (Stealing Wig)

comment:6 by SF/painelf, 17 years ago

I'm taking a stab at this.

This bug is periodic; about %15 of the time it will work
perfectly on my MSVC debug build (english talkie). I have
been unable to reproduce steps that will always lead to
expected behaviour.

Regular actor animation code appears to be used for the
animations.

I debugged Actor::setActorCostume under both expected and
unexpected behaviour. This over a timeframe of 10 seconds or
thereabouts.

Expected behaviour:
actor, costume
---------------
max, 341
sam, 342
sam, 343
sam, 344
eggplant, 347
sam, 345

Unexpected behaviour:
actor, costume
---------------
max, 341
sam, 342
eggplant, 347
sam, 343
sam, 344
sam, 345

As you can see, the eggplant costume gets set before Sam
is done doing his stuff. Gonna keep diggin'.

comment:7 by SF/painelf, 17 years ago

I have steps that will give me expected behaviour in around
30% of the runs.

"The eggplant costume gets set before Sam
is done doing his stuff." Right. As noted below there are three
actors in the room, and for each actor a script is running.

One of the scripts (haven't checked which actor) sets the
eggplant costume prematurely. The scripts contains a call to
o6_breakMaybe (delay a number of frames) to wait before
setting the costume.

Trouble is, under expected and unexpected behaviour the
script seems to contain different frame delay values!

For expected behaviour the script says

01
6C 00
CA

and for unexpected

01
0B 00
CA

How did that 0B 00 get in there?

comment:8 by SF/painelf, 17 years ago

Owner: changed from vincenthamm to SF/painelf

comment:9 by SF/painelf, 17 years ago

Whoops -- on initializing a new ScriptSlot (Scumm::RunScript
()) the newfield member would not be reset. This would cause
the script to inheret the value from the last script that ran.

comment:10 by SF/painelf, 17 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.