SCUMM: Work around lava flowing up in MONKEY1-FLOPPY-VGA (Trac#10854) #3958
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
See Trac #10854 for more context and savegames.
In the floppy VGA version of Monkey Island 1 (not the CD version, not the EGA floppy version), the lava in the cave under the Giant Monkey Head currently flows up instead of down, with ScummVM. This problem doesn't appear with the original interpreter.
This effect uses color-cycling in the VGA version (where it's enabled… the Amiga version just disabled the effect, for example).
initCycl()
does a different color-cycling for the olderGF_SMALL_HEADER
games. I wonder ifcycl->flags = 2;
shouldn't just always becycl->flags = 0;
for these games instead. But I can't prove that. It looks like it's been this way in ScummVM since commit cec0239 (which was related to Trac#1016).Diasm of the original floppy VGA interpreter could probably confirm or disprove this, but that's too much for me ;) The 2003 commit above says that LoomCD is another
GF_SMALL_HEADER
game which also used this effect, but not in a way which makes sense (I think I can trigger one in Loom CD by doingroom 1
but epilepsy warning for this one).So I suggest to just force the color-cycling effect to go in the opposite direction when we're in the MONKEY1-FLOPPY-VGA rooms where we know it's currently wrong.
How to test
room 65
in the debugger, go to the right and look at the lava flowing from the wall. It should flow down, not up.room 39
but you may need to try several tries since this room is randomy generated.Another object using color-cycling in this game is Meathook's sign in room 48. But it looks like it just evenly alternates so I can't see any difference when changing the flags there.