Opened 4 years ago

Last modified 7 months ago

#12044 new defect

MOHAWK: Myst ME: Wrong map colors in the GOG Polish version

Reported by: iGom Owned by: tag2015
Priority: normal Component: Engine: Mohawk
Version: Keywords: Myst bitmap
Cc: Game: Myst

Description (last modified by iGom)

An error pops up when I try to view the map in GOG Polish version of Myst

ERROR: Could not decode Myst bitmap!

Edit:
someone has written about it before
https://forums.scummvm.org/viewtopic.php?t=13980&p=87348

Attachments (5)

scummvm.log (331 bytes ) - added by iGom 4 years ago.
scummvm.2.log (1.5 MB ) - added by iGom 4 years ago.
unknown-39.png (296.5 KB ) - added by iGom 4 years ago.
save.zip (12.9 KB ) - added by iGom 7 months ago.
scummvm-myst-win-2-00000.png (146.8 KB ) - added by digitall 7 months ago.
Image from Myst ME 25th Showing Colors Still Off With Fix

Download all attachments as: .zip

Change History (26)

by iGom, 4 years ago

Attachment: scummvm.log added

comment:1 by iGom, 4 years ago

Component: --Unset--Engine: Mohawk

by iGom, 4 years ago

Attachment: scummvm.2.log added

comment:2 by iGom, 4 years ago

Last edited 4 years ago by iGom (previous) (diff)

comment:3 by iGom, 4 years ago

Description: modified (diff)
Summary: Impossible to show the map in the Polish version of MystImpossible to show the map in the GOG Polish version of Myst

comment:4 by iGom, 4 years ago

I just checked the retail Polish version (not via ScummVM) and the map is present, but still crashes in ScummVM.

https://cdn.discordapp.com/attachments/581224061091446795/795422548861911082/unknown.png

Version 0, edited 4 years ago by iGom (next)

by iGom, 4 years ago

Attachment: unknown-39.png added

comment:5 by iGom, 4 years ago

Description: modified (diff)

comment:6 by dafioram, 4 years ago

Priority: highnormal
Summary: Impossible to show the map in the GOG Polish version of MystMOHAWK: Myst: Impossible to show the map in the GOG Polish version of Myst

Confirmed for polish version. The other versions work just fine.

comment:7 by digitall, 4 years ago

Pushed a partial fix for this as commit https://github.com/scummvm/scummvm/commit/3853bcf2628912e98681fda26d121c2b1f161c7a

The relevant image is uncompressed i.e. no LZSS compression which is indicated by an
uncompressed size field of 0. This was not being handled correctly hence why this failed.

However, there is still a further problem here as the colors for the map are inverted with a white edging (not black as expected) and purple island (not green). There is no
color palette and the image is 24bpp, so not sure why that is happening, but no crash at least.

Last edited 4 years ago by digitall (previous) (diff)

comment:8 by iGom, 4 years ago

I can confirm that fix works also with the retail Polish version.
Checked in the latest daily build.

comment:9 by digitall, 4 years ago

iGom: To be clear, are the colors of the map correct for the retail Polish version?

comment:10 by iGom, 4 years ago

Oh, sorry for didn't mention that, no, colors are still inverted.

comment:11 by tag2015, 16 months ago

Owner: set to tag2015
Resolution: fixed
Status: newclosed

Fixed in commit fd86bf0

comment:12 by tag2015, 7 months ago

Resolution: fixed
Status: closednew

by iGom, 7 months ago

Attachment: save.zip added

comment:13 by digitall, 7 months ago

This bug was reopened as the fix was limited to the Myst Island Map i.e. Card 9934, but this issue is present on the maps on the other islands as well, hence iGom has added savegames to allow these to be tested. The fix required should be just to add the other card numbers to the workaround / fix line.

comment:14 by digitall, 7 months ago

It should be noted that I have tested this with Myst ME - 25th Anniversary from GOG in Polish language and even with this fix being triggered (I added a debug to check this), the colours on the Myst map do not look quite right i.e. Green is OK, but the mountains are blue, not brown so I think the colorspace is off still. Will attach a screenshot.

by digitall, 7 months ago

Image from Myst ME 25th Showing Colors Still Off With Fix

comment:15 by digitall, 7 months ago

Screenshot attached.

comment:16 by tag2015, 7 months ago

@digitall did a quick test now, it seems that the fix only works in OpenGL mode (in SDL Surface mode, the colors are still off). I wonder if the culprit is convertToInPlace

comment:17 by tag2015, 7 months ago

Summary: MOHAWK: Myst: Impossible to show the map in the GOG Polish version of MystMOHAWK: Myst ME: Wrong map colors in the GOG Polish version

comment:18 by digitall, 7 months ago

Have expanded the workaround / conversion to cover all Map images in the ME Polish version in commit 541badb

This doesn't fix the color conversion / palette issues but the workaround code now applies to all the affected slides.

comment:19 by tag2015, 7 months ago

Thanks! Definitely cleaner than checking all the ids

comment:20 by digitall, 7 months ago

Further notes, on Linux x86_64 with SDL Surface output, the colors are off, but they are fine if I switch to OpenGL output.

comment:21 by tag2015, 7 months ago

Yes, same thing on Win10. This was clearly a half-baked effort on my end, it seems the fix isn't as trivial as anticipated.
If anybody wants to attempt a proper fix, please go ahead (I'm really not focusing on this engine right now)

Note: See TracTickets for help on using tickets.