Recent fixes to the sound fading code have exposed this bug again.
It was first fixed 12 years ago, and then again 10 years ago.
Both times, the bug was fixed by changing kDoSoundFade behavior.
But those changes added behavior that was different from SSCI, and
those differences caused problems in LB2. kDoSoundFade is now
accurate, and so the bug has returned, but it was never a sound bug.
The black widow lockup is due to a script bug that accidentally relies
on undefined values from non-existent parameters. ScummVM produces
different undefined values than SSCI in certain situations, and this
is one of them. The undefined values are then passed to kDoSoundFade
as real values in a correct kernel call.
Now this is fixed with a script patch that removes all five broken
Sound:fade calls. They were redundant because they attempted to fade in
to the same volume they had just set.
Perhaps we can replicate SSCI's undefined behavior someday, but in
the meantime this bug is fixed.
Fixes bugs #5625#5653#6120#6210#6252#13944
This is a follow-up to the script patches for the dead-end event
bugs in the Laibon's hut: 6e743a97ef
Those patches had the unintended side effect of allowing two dialogue
options during an event where they shouldn't be available. Now their
logic is updated to match the other patches so that they only appear
during their intended event.
Fixes bug #13748
- Skate-O-Rama (CD version) can now be completed at all game speeds.
- Removed the extra speed throttling on Skate-O-Rama. Floppy doesn't
have the timing bugs and now both versions run at normal speeds.
- Fixed the coordinate bug that made the west exit impossible at
certain game speeds.
Bugs #5514 and #11038
Disables SCI16 speed tests with generic script patches.
- All games now pass their speed tests, and consistently.
- Handles games/versions that the benchmarking heuristic misses.
- Fixes bug #13529 (speed test overflow on fast CPUs) on all games.
- Replaces most game-specific patches.
I've left the benchmarking heuristic so that any game or version that
still needs patching will still be handled with unthrottling.
Fixes some well known deadend bugs in the original game:
- Not being able to give the Laibon the horn
- Not being able to enter the Laibon's hut
Bug #11425
For Hoyle Bridge, we jump directly to the Bridge screen, and it's not
possible to go back to the game selection screen, so we don't need
patches for that version.
For Children's Collection, we now use enablePatch(), which results in
cleaner code.