Opened 18 years ago

Closed 18 years ago

Last modified 21 months ago

#8002 closed patch

Possible fix for bug #558711

Reported by: eriktorbjorn Owned by: SF/ender
Priority: normal Component: Engine: SCUMM
Keywords: Cc:
Game:

Description

I think the problem reported in bug #558711 is in o5_roomOps()'s "set palette color". In the GF_SMALL_HEADER case, it will manipulate _shadowPalette, which just won't do anything noticeable here.

I have two experimental patches which both seem to do the trick, albeit in different ways.

greatloom.diff sticks with the current _shadowPalette solution, and changes updatePalette() to take this into consideration if it's running a GF_SMALL_HEADER game. Note that it now says _shadowPalette[b] = a instead of _shadowPalette[a] = b. This is intentional. The animation would be wrong otherwise, and colours that shouldn't be remapped are.

greatloom2.diff adds a "backup" palette which stores a copy of the current palette as it was first loaded, and then uses setPalColor() to modify the current palette.

I think greatloom.diff is probably the better solution, assuming it doesn't break anything else. Since Loom is the only GF_SMALL_HEADER game that I own, and I haven't gotten very far into it yet, I can't test this.

Ticket imported from: #591581. Ticket imported from: patches/107.

Attachments (3)

greatloom.diff (1.6 KB ) - added by eriktorbjorn 18 years ago.
Patch which uses _shadowPalette
greatloom2.diff (1.5 KB ) - added by eriktorbjorn 18 years ago.
Patch which uses a new "backup" palette
greatloom.gif (38.1 KB ) - added by eriktorbjorn 18 years ago.
This is what the "great loom" animation will look like

Download all attachments as: .zip

Change History (7)

by eriktorbjorn, 18 years ago

Attachment: greatloom.diff added

Patch which uses _shadowPalette

by eriktorbjorn, 18 years ago

Attachment: greatloom2.diff added

Patch which uses a new "backup" palette

by eriktorbjorn, 18 years ago

Attachment: greatloom.gif added

This is what the "great loom" animation will look like

comment:1 by eriktorbjorn, 18 years ago

I forgot to mention that the patches were made against an August 4 CVS snapshot.

comment:2 by SF/ender, 18 years ago

Owner: set to SF/ender
Status: newclosed

comment:3 by SF/ender, 18 years ago

I've applied the first one, after some testing... it appears to work on a few small_header games without breaking anything.

Excellent work, thanks :)

comment:4 by digitall, 21 months ago

Component: Engine: SCUMM
Note: See TracTickets for help on using tickets.