[Scummvm-git-logs] scummvm master -> c27b22f1130af303b892b2c2091d5b399204f321
eriktorbjorn
noreply at scummvm.org
Sun Mar 30 16:03:41 UTC 2025
This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
c27b22f113 SCUMM: Fix invisible conversation options in Sega CD MI1
Commit: c27b22f1130af303b892b2c2091d5b399204f321
https://github.com/scummvm/scummvm/commit/c27b22f1130af303b892b2c2091d5b399204f321
Author: Torbjörn Andersson (eriktorbjorn at users.sourceforge.net)
Date: 2025-03-30T18:01:29+02:00
Commit Message:
SCUMM: Fix invisible conversation options in Sega CD MI1
This would happen when telling the Men of Low Moral Fiber about the
governor being kidnapped. Where the script was supposed to add 8 pixels
to the Y coordinate, it instead added 8 rows, forcing the text to be
completely outside the screen.
I have verified that this is an original bug by watching the scene in a
YouTube playthrough of the game.
Changed paths:
engines/scumm/script_v5.cpp
diff --git a/engines/scumm/script_v5.cpp b/engines/scumm/script_v5.cpp
index a15aed8ce82..133d3d281b1 100644
--- a/engines/scumm/script_v5.cpp
+++ b/engines/scumm/script_v5.cpp
@@ -691,6 +691,20 @@ void ScummEngine_v5::o5_add() {
getResultPos();
a = getVarOrDirectWord(PARAM_1);
+ // WORKAROUND: In the Sega CD version of MI1, after you tell the Men of
+ // Low Moral Fiber (pirates) that the governor has been kidnapped, there
+ // is supposed to be three follow-up conversation options. But only the
+ // the first one ("Why are you jus standing around...") is actually
+ // visible. This is because where the script is supposed to add 8 pixels
+ // to the Y position of the text, it instead adds 8 lines. It was still
+ // possible to select them, you just couldn't see them.
+ //
+ // We fix this by changing Var[229] += 8 to Var[229] += 1 instead.
+
+ if (_game.id == GID_MONKEY && _game.platform == Common::kPlatformSegaCD && vm.slot[_currentScript].number == 216 && _currentRoom == 35 && a == 8 && _resultVarNumber == 229 && enhancementEnabled(kEnhSubFmtCntChanges)) {
+ a = 1;
+ }
+
// WORKAROUND bug #994: This works around a script bug in LoomCD. To
// understand the reasoning behind this, compare script 210 and 218 in
// room 20. Apparently they made a mistake when converting the absolute
More information about the Scummvm-git-logs
mailing list