Opened 21 years ago

Closed 21 years ago

Last modified 5 years ago

#644 closed defect (fixed)

MI2: Savegames during intro don't work

Reported by: fingolfin Owned by: SF/jamieson630
Priority: normal Component: Engine: SCUMM
Version: Keywords:
Cc: Game: Monkey Island 2

Description

I think this worked with older versions, but now if I save during the MI2 intro (which I can only run with adlib currently, see my other bug report), and I then load that save game, it'll start the music from scratch, and the intro is frozen until the cue point for the currently visible part of the intro is reached.

Ticket imported from: #656039. Ticket imported from: bugs/644.

Change History (6)

comment:1 by eriktorbjorn, 21 years ago

It probably did work, a long time ago. But since loading a savegame doesn't restore the Adlib instruments the music used to sound horrible, so IMuseInternal::fix_players_after_load() was modified to restart the music track in the Adlib case so that the instruments would be reloaded.

Not an ideal solution, by any stretch of imagination. Perhaps this could be fixed properly now?

comment:2 by SF/jamieson630, 21 years ago

This might be fixed with the new Instrument class I've implemented. Now that savegame version 11 is storing any kind of instrumentation (program changes as well as Adlib or Roland instrument definitions), I've removed the hack that restarted Adlib music from the beginning. You should be able to load the game and have the music pick up right where it left off, with all the instruments intact.

(NOTE TO SELF: In version 12 we need to be storing the global Adlib instrument definitions as well. Kinda forgot that part....)

comment:3 by eriktorbjorn, 21 years ago

Seems to work for me. Fingolfin?

comment:4 by fingolfin, 21 years ago

Owner: set to SF/jamieson630
Resolution: fixed
Status: newclosed

comment:5 by fingolfin, 21 years ago

Yup, this works now properly :-)

comment:6 by digitall, 5 years ago

Component: Engine: SCUMM
Game: Monkey Island 2
Note: See TracTickets for help on using tickets.