I'm using ScummVM 0.8.2 (on my Windows Mobile 2003 SE device, a Qtek S100) and I played Monkey Island 2 (german version) up to the place in Booty island where I have to climb the large tree. When Guybrush falls down, the two singing and dancing skeletons sing their song, but they never get past the first verses. They just dance indefinitely.
There are some ways to skip the cutscene. First, when I click on the "skip cutscene" button, LeChuck appears, and after a few seconds, the game crashes to the console. It says "ERROR: Unknown SysEx manufacturer 0x97" and I can't use the keyboard to enter anything, not even "exit" or "help", the keyboard just doesn't work. I have to soft-reset the device to get it to work again.
Second way is to skip the "endless dance" of the skeletons, then again immediately skipping the LeChuck scene again.
I attached a savegame for the above mentioned version. To reproduce the error, just try to climb up the tree.
savegame to reproduce the bug
Logged In: YES
user_id=12935
Sounds as if no midi driver is setup, or the driver is not working quite correctly
(such music related hangs often occur when the game scripts are waiting for an
IMUSE trigger).
Logged In: YES
user_id=12935
Upps, I missed the "ERROR" part :-). Well, then it definitely is the midi driver not
supporting the given sysex.
Logged In: YES
user_id=577918
That error message comes from imuse_player.cpp though,
doesn't it? Which would be before any platform-specific MIDI
driver is involved.
I can reproduce the error in the SVN version of ScummVM,
using an old savegame of my own from the English version,
but not with 0.8.2. Oh, and it only seems to happen for me
with the Adlib music.
Logged In: YES
user_id=577918
Scratch that. I *can* reproduce the error message it in
0.8.2 as well, *if* I slow down the talk speed enough.
This piece of the room-60-212 script:
[295A] (D8) printEgo([Text("Why did you leave me again?")]);
[2978] (80) breakHere()
[2979] (80) breakHere()
[297A] (4D) walkActorToActor(3,VAR_EGO,60)
[297F] (AE) WaitForMessage()
[2981] (48) if (Var[597] == 1) {
[2988] (4C) soundKludge([268,122,0,1])
[2996] (4C) soundKludge([-1])
sets up a "hook" for the music to jump to the next section.
Unless it happens quickly enough, it will encounter that
mysterious, ScummVM-crashing SysEx. I don't know if this is
because of some bug in the parsing of MIDI data, or if that
SysEx is deliberate. Maybe we should ignore unknown SysEx
manufacturer ids, rather than erroring on them?
Logged In: YES
user_id=577918
Changing the error() to a warning() doesn't seem to cause
any harm to the music, and allows me to pass the scene
without actively skipping any speech.
Mind you, none of this has any bearing on the *main* part of
the bug report, which was that the skeletons won't get past
their first verse. I can't reproduce that.
Logged In: YES
user_id=577918
After some further reading, I've changed the SysEx
manufacturer message from an error to a warning. I have not
been able to discover who, if any, 0x97 is registered to.
It's not listed in
http://www.borg.com/~jglatt/tech/midispec/id.htm or
http://www.midi.org/about-mma/mfr_id.shtml but I don't know
how complete that information is.
Again, this does not fix the main bug in this report, but it
does fix the crash after LeChuck appears. (Sometimes ScummVM
really did crash for me, rather than displaying an error
console. Threading issues, perhaps?)
Logged In: YES
user_id=1333246
What's new on this? Is everything ok with 0.9.0a? I cannot
use the savegame as it is for the german version (which I
don't have). It would be worthwhile to provide a savegame
for the english version if the bug's still there.
Logged In: YES
user_id=124874
I tried out 0.9.0a and the crash is gone, although the
dancing skeletons only recite the first verse. When the
music ends, the LeChuck scene is automatically shown.
Logged In: YES
user_id=1333246
Typically ce devices execute scummvm slower than the pcs
the games were designed for. This leads to anomalies in
scripts being exposed. This seems like some script to music
cue desync (even though I have not poked around the scumm
engine). You can try two things:
1) Verify if all is ok with the pc version of scummvm
2) (If such a thing is applicable) move away any sound
files (*.ogg, *.mp3 etc) from your mi2 folder and run
pocketscumm, so that you have no music.
Logged In: YES
user_id=1312539
This Tracker item was closed automatically by the system. It was
previously set to a Pending status, and the original submitter
did not respond within 14 days (the time period specified by
the administrator of this Tracker).
I just had the same Problem with the daily build (June 28 2009) using Windows XP (replaying MI in preparation of ToMI). The skeletons keep dancing, never singing more than one verse. Skipping the scene makes LeChuck appear and everything works fine after that. When examining the piece of paper the text is there. So it seems to be a problem not related to the WinCE port.
Oh, I just saw the date of original bug and realized it is a really old one. So this was probably solved between than and now, because I am sure I played Monkey Island 2 at least once since 2006 and never had this bug before. Maybe I should open a new one?
Yep, that should be preferable, otherwise it will get mixed up here with other stuff. (better include a link to this report too, just to be safe).