#14386 closed defect (fixed)

MOHAWK: RIVEN: White rectangle around the mouse pointer

Reported by: ctoroman Owned by: elasota
Priority: normal Component: Engine: Mohawk
Version: Keywords:
Cc: Game: Riven

Description

ScummVM 2.8.0git3456-g8d228df4185 (Apr 4 2023 04:39:47)

White rectangle around the mouse pointer

I tried the version ScummVM 2.7.1pre76-gc4f24b2f7e0 (Mar 6 2023 14:51:00), everything is OK

Attachments (5)

screen1.JPG (46.5 KB ) - added by ctoroman 20 months ago.
arcriven_z-mac-openGL-purple.png (297.1 KB ) - added by macca8 20 months ago.
arcriven_z-mac-openGL-blue.png (428.5 KB ) - added by macca8 20 months ago.
arcriven_z-mac-openGL-shade.png (192.7 KB ) - added by macca8 20 months ago.
arcriven_z-mac-surface SDL.png (496.2 KB ) - added by macca8 20 months ago.

Download all attachments as: .zip

Change History (13)

by ctoroman, 20 months ago

Attachment: screen1.JPG added

comment:1 by antoniou79, 20 months ago

I can also reproduce this on Windows 10, with a built from current master HEAD (2.8git).

This is quite possibly similar to another recently fixed issue for the SCUMM engine, which seems specific for Windows OS:
Bug: https://bugs.scummvm.org/ticket/14346
Fix for that bug (merged): https://github.com/scummvm/scummvm/pull/4872

I am not very familiar with the Mohawk engine to try a fix.

Last edited 20 months ago by antoniou79 (previous) (diff)

comment:2 by macca8, 20 months ago

I'm running macOS 10.11.6, and have the 5-CD English hybrid Windows/Mac version. The issue dates back to before 4 March 2023.

My testing indicates that this bug is restricted to game installations containing the arcriven.z installer file, instead of an actual game executable. This includes my CD version, and also the windows demo (available on our demo page).

In my case, substituting the Riven (Mac) executable, and the extras.mhk file, for the arcriven.z file resolved the issue.

Of course, to manually extract the game executable from the arcriven.z file requires the game to be installed natively on a compatible machine (for macOS, this requires access to an old PPC Mac), so this won't be a viable option, and it's certainly inconvenient, for most users.

The actual game cursor is already displayed correctly, so the issue here is strictly with handling the new cursor mask feature (as referenced by @antoniou79). I suspect we will need a similar fix to that applied to #14346, except in this case, we're extracting info from the arcriven.z file.

With respect to the actual bug, it's more extensive than indicated above:

  • In OpenGL, shaded areas (light or heavy) appear predominantly as an opaque white square. However, unshaded areas display full transparency, but appear as the reverse colours of the overlaid background (e.g. blue sky appears orange, green foliage appears purple, and so on).
  • In SDL surface, the overlaid area always appears as an opaque black square.

I'll attach a few sample screenshots.

by macca8, 20 months ago

by macca8, 20 months ago

by macca8, 20 months ago

by macca8, 20 months ago

comment:3 by antoniou79, 20 months ago

@macca8 can you try the recent PR: https://github.com/scummvm/scummvm/pull/4885
and report if it resolves the issue for you too?

(I tested it and if fixes the issue for me (GOG's Riven))

comment:4 by macca8, 20 months ago

I'm dependent on buildbot's master builds when it comes to testing.
Unfortunately, I'll have to wait until it's accepted into master before I can test.

Last edited 20 months ago by macca8 (previous) (diff)

comment:5 by ctoroman, 20 months ago

@antoniou79, i'll try https://github.com/scummvm/scummvm/pull/4885
it fixes the issue for me. Thank you)

in reply to:  4 comment:6 by antoniou79, 20 months ago

Replying to macca8:

I'm dependent on buildbot's master builds when it comes to testing.
Unfortunately, I'll have to wait until it's accepted into master before I can test.

Hello, the PR was merged into master yesterday (at least CET time-wise); maybe it's already part of the current daily build.

comment:7 by macca8, 20 months ago

Thanks.
PR 4885 fixes the issue for me on macOS for both OpenGL and SDL Surface modes.
The cursor is now displayed correctly whether using the arcriven.z file or the Riven (Mac) executable in the installation.

in reply to:  7 comment:8 by antoniou79, 20 months ago

Owner: set to elasota
Resolution: fixed
Status: newclosed

Fixed by PR 4885

Note: See TracTickets for help on using tickets.