Opened 3 weeks ago

Last modified 2 weeks ago

#15159 new defect

SCI: Betrayed Alliance - Menu discrepancy: "Music" in Speed menu item

Reported by: dfsgand Owned by:
Priority: low Component: Engine: SCI
Version: Keywords: menu graphics
Cc: Game: SCI Fanmade

Description (last modified by sluicebox)

ScummVM version checked:
ScummVM 2.9.0git5034-g8019d0eea13 (Jun 1 2024 20:18:24)
Using SDL backend with SDL 2.0.14
Features compiled in: Vorbis FLAC MP3 ALSA SEQ sndio TiMidity RGB zLib MikMod VPX A/52 FreeType2 FriBiDi JPEG PNG ENet SDL2 TinyGL OpenGL (with shaders)
Platform: Debian 11.9 bullseye, x86-64

Games: Betrayed Alliance v1.3.2: https://github.com/Slattstudio/BetrayedAllianceBook1/releases/tag/release-v1.3.2

Upon being given control in ScummVM, the last entry in the "Speed" menu reads "Slower -Music". This does not happen in native: the last line instead reads "Slower -" with the dash properly aligned. See the screenshots for more details. (Native DOS screenshot courtesy of PickledDog.)

Attachments (2)

betrayed_alliance_speed.png (106.1 KB ) - added by dfsgand 3 weeks ago.
ScummVM screenshot
betrayed_alliance_132_native.png (533.2 KB ) - added by dfsgand 3 weeks ago.
Screenshot from DOS with MT-32 enables

Download all attachments as: .zip

Change History (5)

by dfsgand, 3 weeks ago

Attachment: betrayed_alliance_speed.png added

ScummVM screenshot

by dfsgand, 3 weeks ago

Screenshot from DOS with MT-32 enables

comment:1 by sluicebox, 2 weeks ago

What makes you think this is related to MT-32? I see the same results with a default ScummVM config (no MT-32), so I'm confused. Are you seeing something different, or were you guessing? =)

comment:2 by sluicebox, 2 weeks ago

Description: modified (diff)
Priority: normallow
Summary: SCI: Betrayed Alliance v1.3.2: "Music" in last Speed menu line when MT32 is enabledSCI: Betrayed Alliance - Menu disrepancy: "Music" in Speed menu item

I'm now certain this has nothing to do with MT-32 or any music, so let's ignore all that. It also applies to all versions of this game.

This game has a malformed menu string which has exposed a discrepancy in how we parse malformed menu strings. We display "-Music" because that's the text that this menu string ends in. By luck, Sierra's interpreter ignores the junk "Music" at the end, so the author didn't notice their mistake.

It would be good to fix this, but it's also about as low priority as you can get: this doesn't happen in real games, and the easy solution is to email the author and let them know. I've done that, so presumably this will be fixed in the next game version.

Our menu code is a 200 line function of classic C string parsing. It's also based on reverse engineering, so the names are guesses, meanwhile Here In The Future we know the real spec and the real names of menu string components. Our code also handles dual-language games too. It's risky to alter any of this, and the next game release will make it moot.

It's still worth doing eventually, even if it just makes our menu code a better reference. We'll keep this open, and I'll lower priority and remove the MT-32 references.

comment:3 by sluicebox, 2 weeks ago

Summary: SCI: Betrayed Alliance - Menu disrepancy: "Music" in Speed menu itemSCI: Betrayed Alliance - Menu discrepancy: "Music" in Speed menu item
Note: See TracTickets for help on using tickets.