Jump to content

Home

Leaderboard

Popular Content

Showing content with the highest reputation on 07/31/23 in all areas

  1. Hi folks. A few weeks ago I started working on a spare time project: a complete collection of all the background art from every LucasArts adventure game (Maniac thru EMI), in palettized PNG format and in its original resolution and aspect ratio. My ultimate goal is to upload this to archive.org, but since they don't seem to support editing the actual data contents of collections once you've uploaded them, I want to make sure I get things right before I do so. So I thought I'd present my work so far to some adventure game experts. Here's a dump of the data on my personal website - as the page says, please do not link this page anywhere; I do not intend to host these files indefinitely and intend to take them down once the collection is completed and uploaded: [link redacted for now] The presentation on that page is also temp, it's just the quickest easiest way I found to provide access to all the data. I'll let the draft readme on that page speak for itself - see the sections on "presentation of the work". To be very clear, these aren't raw dumps from a ripping program, though ripped data was the starting point for most of the images, I've edited these images (some quite extensively, eg the runtime-generated maze rooms in some games) to get them as close to how they look in-game as possible, minus most of the characters, obviously - the idea is to foreground and celebrate the art, and the artists who created it. Stuff I'm looking for feedback on: Any artist credits I missed or got wrong in the draft readme. Any glitches in the images, ie places where I didn't patch in an object correctly, something is missing, etc. Anything I missed? ie entire rooms I forgot, etc. In the interests of not flooding the collection hundreds of very similar images, I didn't include every maze room as those are cobbled together from pieces, but I tried to represent most or all of said pieces in a smaller number of "iconic" room images. Filenames - my naming convention was arbitrary and probably inconsistent in several places. Also I may have simply gotten the name or purpose of a room wrong. I didn't replay all these games while working on this, but I did jump in and out of ScummVM a ton to check my work. I will probably rename all the files to move from snake_case to regular human filenames with capitalization and spaces. Any quality improvement suggestions, eg better versions of the existing images. Stuff I can't figure out: How to get accurate palette shifts for the rooms in Zak FM Towns that use them, eg the jungle mazes, the Blue Crystal / Yellow Crystal / Mars Ankh / Mars Teleporter room, and the Egypt / Mars sarcophagus rooms. These rooms were all authored in one palette each, with SCUMM code (RoomColor?) setting the palette shift appropriately for each variation. But I can't figure out how to get those shifted palettes and map the images to them. It was easy to do this with Zak C64 and EGA because it's only 16 colors and it was trivial to just eyeball em... not so much with several different arbitrary 256 color palettes.
    6 points
  2. The palette mutation script looks pretty much like this: https://scumm.jither.net/?Jither/4ad155c14594f848e3e4cc8d2c39355e The room-color command here doesn't actually set a color, it puts an index to the actual palette (the PA chunk for Zak FM) into the room palette. By default (when entering a room), the room palette looks like 0, 1, 2, 3, 4, 5... 254, 255 - meaning the room will just use the colors in the actual palette as-is: If the background or an object image has the value 78 for a pixel, it will use color 78 from the PA chunk. So, changing a value in the room palette using e.g. room-color 215 in-slot 78 doesn't actually change any colors as such - it just makes color 78 in room graphics use color 215 in the actual palette stored in the game files. The palette mutation script works with the palettes in a 16x16 grid: It is generally called in one of two ways: With 2 arguments or with 4 arguments. You'll see cases in room 47 (which contains the system scripts) where it's called with a third 0 argument, but that has the same effect as calling it with two. The two argument version changes a row of 16 palette entries to point to a different row than the default. The four argument version allows to change a subset of a row - in practice, it's only used to swap the two halves of a single row. So, for example: mutate-palette 3 12 ... will remap 16 palette indices starting from row 12 - i.e. index 192 (16 times 12) to instead point to the 16 colors starting at index 48 (16 times 3) in the actual palette. So, it can be read as "change the palette at row 12 to use the colors at row 3". mutate-palette 6 6 This will change the room palette to the default for this row. The 16 palette indices starting from 96 (16 times 6) will point to the actual palette colors starting from 96. In other words, the colors are unchanged from the PA palette (for this row). So, it can be read as "change the palette at row 6 to use the colors at row 6". mutate-palette 5 5 0 8 This will remap 8 palette indices starting from 88 (16 times 5 + 8) to instead point to the colors starting at 80 (16 times 5 + 0). So, it can be read as "change the palette of the last 8 colors in row 5 to point to the first 8 colors in row 5". The script where this occurs follows up with mutate-palette 5 5 8 0 - in combination, the two result in swapping the 8 "left" colors of row 5 with the 8 "right" colors of row 5. Does that make sense? 🙂 Yeah, you're right. 🙂
    2 points
  3. Just a bit of what I remember from Zak FM, not sure if it helps any - don't have the scripts around... Generally, the palette was modified by moving rows of 16 palette entries around. E.g. replacing colors 16-31 with the colors in 128-143 - always a complete row, i.e. the first index to move (and move to) would be a multiple of 16. And always 16 entries to be moved. The one special room that I recall is the Egypt maze, which has one or two cases where the first 8 colors of a row are swapped with the last 8 colors. Something you may or may not want to include: MI2 introduced parallax scrolling in the foreground, although I think they only did it for the ship hull in the foreground in Woodtick. FOA has quite a few more instances of it: The lamp post in New York, a palm tree and roof in the Azores, a rope in the Algiers Dig Interior, etc. I guess those might be considered part of the "background", although the parallax nature of them complicates things when representing the background as a still image, of course. 😁 Because objects (generally) can't really change their position within a room, these parallax effects were implemented with actors and costumes, rather than object images. I've attached the cels for those costumes (I may not have identified all of them), just in case. Ship hull in woodtick; roof in the Azores; palm in the Azores; pillar in the orichalcum machine room; rock in the lava pool room; rope in Algiers Dig interior; lamp post in New York.
    2 points
  4. https://quickandeasysoftware.net/software/scumm-revisited The one in the dump specifically is SCUMM Revisited 5, but as far as I recall, there are palette viewers in all 3 versions (but they don't all support the same games or features - I was rather haphazard with coding back then). The default palette is in the game data - for Zak FM it's the PA chunk. All SCUMM Revisited versions open Zak FM, but 2 may be slightly more useful in this case, since it also list the hex values for each color. Although, of course, you can use a color picker to get the colors too - 5 is generally more useful for viewing rooms, since it also allows showing or hiding object images individually (click "View Room" when a RO or ROOM chunk is seleced) etc. In general, the colors may be more reliable than ScummVM, since ScummVM may apply filters and color profiles(?) that will change the actual output. The palette viewer (and image and room viewers) use the colors straight from the game files. All that should really be needed is to rearrange that default palette according to the calls to the palette mutation script. I.e. copy the colors in row 3 to row 12 if the parameters are "12 3". Of course, beware that if another line says e.g. "10 12", you'd need to copy the original colors in row 12 to row 10 - not the colors that were copied from row 3 earlier. Oh, and it should be entirely possible to skip to a specific room - while, yes, they're variations on a single room, they all do have their own room number. I haven't annotated all of Zak, so a lot of the rooms in this script are unnamed, but this shows the general idea: https://scumm.jither.net/?Jither/8f01826cd23b042264fc50db2b59a438 I.e., room 29 has four "variations" (pseudo rooms) - which have the room numbers 189, 190, 191, and 182.
    1 point
  5. Yea the mansion had parallax scrolling, and similarly was the only case of this in the game.
    1 point
×
×
  • Create New...