Opened 3 years ago

Last modified 3 years ago

#13022 new defect

SCUMM: Loom CD Talkie starts with subtitles disabled

Reported by: antoniou79 Owned by:
Priority: normal Component: Engine: SCUMM
Version: Keywords: LOOM, CD, Talkie, Subtitles
Cc: Game: Loom

Description

Tested with ScummVM 2.5.0 on Windows 10 x64, on the GOG and Steam versions of the game.

If the game is allowed to play the intro without skipping it, then subtitles will be disabled for the messenger nymph speech, Bobbin's thoughts afterwards, and also the gameplay will start in no subtitles mode.

This is regardless of a global setting or game domain setting enforcing showing subtitles.

It seems there's a script command at the end of showing the intro Loom logo (once the swans have flown by between the logo letters), that explicitly disables subtitles; it writes the value of VAR_NOSUBTITLES as true, which results in ScummVM setting the "subtitles" key for Confman to 0.

This was mentioned in the forums here:
https://forums.scummvm.org/viewtopic.php?p=96169#p96169

I was able to reproduce with ScummVM 2.5.0 and 2.6.0git

Change History (2)

comment:1 by antoniou79, 3 years ago

I created a PR with a possible fix for this here:
https://github.com/scummvm/scummvm/pull/3424

Version 0, edited 3 years ago by antoniou79 (next)

comment:2 by dwatteau, 3 years ago

For what it's worth, for our French fan translation at ATP, we've applied this quick workaround to the script no. 44 in room 2:

--- DISK_0001/LE/LF_0002/SC_0044
+++ DISK_0001/LE/LF_0002/SC_0044
 (68) VAR_RESULT = isScriptRunning(222);
 (28) unless (!VAR_RESULT) goto 0304;
 (07) setState(945,0);
 (5C) oldRoomEffect-set(-32640);
-(1A) VAR_NOSUBTITLES = 1;
+(1A) VAR_NOSUBTITLES = 0;
 (48) if (VAR_SOUNDCARD == 4) {
 (28)   if (!Local[9]) {
 (80)     breakHere();
 (38)     unless (VAR_MUSIC_TIMER >= 278) goto 0327;
 (**)   }
 (**) }
 (72) loadRoom(2);
 (32) setCameraAt(160);
 (0A) startScript(200,[]);

i.e. force subtitles in the nymph scene. Since we always want both audio and subtitles in this version, it works nicely for us.

Of course, as you explained above, you probably want something more subtle for ScummVM, but I'm giving this workaround here in case it can be helpful.

Note: See TracTickets for help on using tickets.