Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#6979 closed defect (fixed)

Broken Sword 2.5 Crashes when the time-bomb on train should go off

Reported by: SF/albadross Owned by: sev-
Priority: high Component: Engine: Sword25
Keywords: Cc:
Game: Broken Sword 2.5

Description

ScummVM Version : 1.8.0 git5172-g7820bd5 (Dec 7 2015 04:25:06)

Problem : The game crashes at the end of the train scene when you click the whistle on the dog to activate the time-bomb - Lua error occurred. Code 2.

I attach a series of saves of the game on the train but unfortunately due to bug #6977 I cannot get them to re-load. The last save sword25.016 is when the whistle has to be clicked on the dog. The last save I can load is the first one attached to bug #6977

Language : English
Windows 7 Ultimate 64-bit

Ticket imported from: bugs/6979.

Attachments (6)

sword25.012 (472.5 KB ) - added by SF/albadross 4 years ago.
sword25.013 (471.2 KB ) - added by SF/albadross 4 years ago.
sword25.014 (472.8 KB ) - added by SF/albadross 4 years ago.
sword25.015 (472.2 KB ) - added by SF/albadross 4 years ago.
sword25.016 (471.4 KB ) - added by SF/albadross 4 years ago.
sword25.007 (474.2 KB ) - added by SF/albadross 4 years ago.

Change History (12)

by SF/albadross, 4 years ago

Attachment: sword25.014 added

comment:1 by Strangerke, 4 years ago

Priority: normalhigh

comment:2 by Strangerke, 4 years ago

It would be nice to fix it before the release of 1.8.0. Raising priority.

by SF/albadross, 4 years ago

Attachment: sword25.007 added

comment:3 by SF/albadross, 4 years ago

Now that bug #6977 has been fixed, I have a savegame at the problem point that will reload. To demonstrate the problem, click the whistle on the dog.

comment:4 by wjp, 4 years ago

We seem to hide the actual script error message, but it appears to be this:

rooms/uba/scripts/default.lua:1073: The renderobject with the handle 13031 does no longer exist.

comment:5 by wjp, 4 years ago

...and this appears to be the same bug in the original: http://forum.baphometsfluch25.de/viewtopic.php?f=52&t=2718

comment:6 by wjp, 4 years ago

My current guess is that this is what's happening.

The background animations in this room (uba), such as DoLamp, update regularly until CurrentRoom changes, at which point they exit.

The room changing code first unloads/deregisters bitmaps/animations, and only then calls OnLeave. The explosion movie is started in the OnLeave script of the uba room.

While the movie is running, the background animations update because CurrentRoom is still valid, and dereference invalid handles.

comment:7 by wjp, 4 years ago

I noticed you mentioned you did finish the game. Does that mean that this bug can be avoided, or only happens sometimes for you?

comment:8 by SF/albadross, 4 years ago

It was a freak occurrence (say, 1 in a 100) that I got past that scene and I doubt that I could do it again.

I tried combinations of all of the following many times :

  1. Waiting to see if the time-bomb would go off by itself
  2. Exhausting conversation with everyone on the train
  3. Examining everything I could even if it wasn't needed for the story
  4. Waiting for a time doing nothing (to see if the program would sort itself out)

Eventually I got lucky - once!

comment:9 by criezy, 4 years ago

Owner: set to sev-
Resolution: fixed
Status: newclosed

comment:10 by criezy, 4 years ago

This was fixed by commit 12fadf7 which restored original engine Lua error processor.

Note: See TracTickets for help on using tickets.