Menu

#2693 SCUMM: Potential savegame incompatibility

All Games
open
nobody
5
2006-06-18
2006-06-18
No

I've only tested this bug with the latest SVN and the
VGA version of Indy 3, but it should be reproducable in
a couple of other games.

If I run the game using the Adlib music driver, _imuse
is created (even though the game does not really use
iMUSE), and when I save a game, the iMUSE state is
saved in it.

If I run the game using the PCjr music driver, _imuse
is not created (since the PC speaker drivers are not
played through iMUSE). But when I try to load the
previously created savegame, the iMUSE state is not
skipped. So the data is read back to the wrong
variables. Most noticeably (and probably least
seriously), the mouse cursor is corrupted.

Discussion

  • kirben

    kirben - 2006-06-19

    Logged In: YES
    user_id=34715

    The original versions of SCUMM 3 - 4 games, would check the
    value of VAR_SOUNDCARD when loading a saved game, to make
    sure it matched current sound driver. And reject the saved
    game, if it didn't match.

    We can either add dummy data for imuse to saved games, when
    it isn't active in these games. Although there could be
    unusal side effects when sound card drivers are changed in
    some situations.

    Or limit saved games in these games, to the specific sound
    card driver used, when game was saved, like original
    versions.

     
  • Eugene Sandulenko

    Logged In: YES
    user_id=166507

    Since we have all 'soundcards' in-place, I would consider
    another route: give user a warning and force sound driver
    change, i.e. something like this:

    "This save was written with PC-Speaker sound driver. Current
    driver is Adlib. Forcing PC-Speakier driver"

     
  • Johannes Schickel

    Logged In: YES
    user_id=991728

    I would prefer to keep the possibilty to switch the sound
    driver while playing so you are able to use the same
    savegame once with PC-Speaker and another time with AdLib.
    It's much nicer than restricting a savegame to a specific
    music driver.

     
  • Max Horn

    Max Horn - 2008-01-03

    Logged In: YES
    user_id=12935
    Originator: NO

    See also the (now closed) bug report #1804278 (Monkey) and #1752196 (in FOA).

    In both cases, there are problems with missing/garbled cursor data. In the second bug I quote, there are 714 bytes of extra data *after* the iMuse data and before the cursor data, and I have no idea why...