Opened 16 years ago

Closed 16 years ago

Last modified 13 years ago

#819 closed defect (fixed)

DIG: Tomb repair-bot crash

Reported by: SF/magna Owned by: fingolfin
Priority: normal Component: Engine: SCUMM
Keywords: Cc:
Game: The Dig

Description

Version : Win32 0.4.2cvs 2003-05-25

It's impossible to complete the generator repair puzzle
in the tomb where you have to guide the repair-bot to
pickup the lens form the bottom of the shaft and re-
attach it to the generator.

After the bot performs the last action you have
programmed ScummVM brings up the debug dialog with
this message: Error: (26:2006:0x28F09): Invalid actor
180 in o6_wait:232.

Trying to continue from this by writing 'exit' just closes
ScummVM. I haven't tried the newest official 0.4.1 build.

Here's also an gamesave.

Ticket imported from: #744441. Ticket imported from: bugs/819.

Attachments (1)

dig.s02 (123.9 KB) - added by SF/magna 16 years ago.
Tomb repair-bot savegame

Download all attachments as: .zip

Change History (10)

comment:1 Changed 16 years ago by SF/magna

Priority: normalhigh

comment:2 Changed 16 years ago by SF/magna

Summary: Tomb repair-bot crashDIG: Tomb repair-bot crash

comment:3 Changed 16 years ago by fingolfin

Please provide a save game from before the problem. BTW it should work
with ScummVM 0.4.1, we just made some check much stricter in CVS - this
causes problems like this in a few places, which we are fixing step by step.
While this is definitely a bit inconveniant for you (and us, too :-) right now,
on the long term this should help improve the accuracy and stability of
ScummVM.
Thanks!

comment:4 Changed 16 years ago by fingolfin

Owner: set to fingolfin
Priority: highnormal

Changed 16 years ago by SF/magna

Attachment: dig.s02 added

Tomb repair-bot savegame

comment:5 Changed 16 years ago by SF/magna

Oh that explains why the ScummVM homepage reports the
game as completable and 85% done. Making the checks
more stricter indeed helps out to refine ScummVM and in
time improves the accuracy of the emulation. And this is one
of the primary goals of ScummVM- to provide gameplay as
close to the original as possible. That's indeed an good
cause.

Here's the gamesave- it didn't attach to the thread last time I
tried. I'll just continue playing after this has been fixed- who
knows what I might bump into next.. I'm not in an hurry. =)

comment:6 Changed 16 years ago by fingolfin

Resolution: fixed
Status: newclosed

comment:7 Changed 16 years ago by fingolfin

This one is really a big one. Something is fundaementally wrong regarding
the o6_wait opcode (or rather its waitUntilActorTurned). I added a clean
workaround for now, until we can investigate this in detail,

comment:8 Changed 13 years ago by cyxx

I was browsing the SCUMM engine code and saw that
workaround. The disassembly doesn't show anything special
for that opcode.

fingolfin, do you remember if that problem happens in other
scripts ? Looking at script 27-2006, this clearly looks like
a copy/paste error to me. What about making this workaround
specific to the script and the game id (as it's usually done
for other script bugs) ?

comment:9 Changed 13 years ago by cyxx

Ok, it has been confirmed this occurs in many other scripts.
Thanks Kirben and Fingolfin.

Note: See TracTickets for help on using tickets.