Closed Mataniko closed 22 years ago
monkeyvga.s00
(33.7 KiB)Savegame - seconds before crash
OK, I tried it and it is reproducible: Just fill a mug with grog, wait till it dissolves completely and ScummVM will crash. This time I saved the game before filling the mug.
monkeyvga.s07
(34.1 KiB)Savegame - before filling the mug
This is a consistent crash for me. But it doesn't crash if Guybrush is standing in the scumm bar when the mug disolves. Here is the relevant part of script 65, which causes this crash: ... \[009C\] \(2E\) Delay\(300\); \[00A0\] \(DD\) SetClass\(Local\[0\],\[12\]\) \[00A7\] \(D4\) SetObjectName\(Local\[0\],"pewter wad"\) \[00B5\] \(2E\) Delay\(300\); \[00B9\] \(A9\) SetOwnerOf\(Local\[0\],0\) \[00BD\] \(A9\) SetOwnerOf\(Local\[0\],15\) \[00C1\] \(D4\) SetObjectName\(Local\[0\],"mug"\) \[00C8\] \(0C\) unlockScript\(66\) \[00CB\] \(A0\) StopScript\(\) The last call to SetObjectName is what fails with an Error\(41:65:0xCA\): Can't set name of object 374\! when the mug has been destroyed and is being returned to the scumm bar. This is most likely due to the calls SetOwnerOf but I have no idea how object ownership works.
Anyone know if this bug is reproducable using the original interpreter? :\)
I just tried the original .EXE in DosEmu: The game does not crash. Just to see if I get that right: The script removes the molten mug from the inventory and then tries to rename it? If it is so, then the original interpreter obviously just ignores the request while ScummVM errors out.
This should work now.
Issue migrated from trac ticket # 370
component: Engine: SCUMM | priority: normal
2002-07-28 03:35:45: SF/inguin created the issue