SCAN (Metroid Prime): Difference between revisions
>Darkeye No edit summary |
>Darkeye No edit summary |
||
Line 240: | Line 240: | ||
File:Scan_position_10000.png|This unused Chozo Elder scan (hacked onto Parasite Queen) shows image positions 0x0A and 0x0D. This scan is the only one where these positions are used. | File:Scan_position_10000.png|This unused Chozo Elder scan (hacked onto Parasite Queen) shows image positions 0x0A and 0x0D. This scan is the only one where these positions are used. | ||
File:Scan_position_99.png|Image positions for 0x0B and 0x0C (unused) | File:Scan_position_99.png|Image positions for 0x0B and 0x0C (unused) | ||
File:Scan_offset_11.png|Image positions for 0x07 and 0x11 (unused) | |||
File:Scan_offset_12.png|Image positions for 0x08 and 0x12 (unused) | |||
</gallery> | </gallery> | ||
[[Category:File Formats]] | [[Category:File Formats]] | ||
[[Category:Metroid Prime]] | [[Category:Metroid Prime]] |
Revision as of 07:20, 23 February 2015
The .SCAN file format describes scannable objects and has references to several resources. It is a relatively simple format and has a static size.
This file format needs more research Too many unknowns. |
Format
The SCAN format is very simple; it has a header with data that contains general settings related to the scan, and then four structs defining how the scan images work. Even if a scan doesn't use four images, there are always four image structs, which means that the SCAN format has a static size; every SCAN file is 0x89 bytes (or 0xA0 bytes padded).
Header
The header is rather simple, and consists of the following:
Offset | Size | Description |
---|---|---|
0x0 | 4 | Version; 3 for the demo, 5 for the final |
0x4 | 4 | Magic; always 0x0BADBEEF |
0x8 | 4 | FRME ID |
0xC | 4 | Scan text STRG ID |
0x10 | 4 | Scan Speed Flag; 0 = normal fast scan, 1 = slower scan (usually found in boss fights) |
0x14 | 4 | Logbook Category; see below |
0x18 | 1 | Scan Icon Flag; 0 = orange icon, 1 = red icon |
0x19 | End of header |
Logbook Category
There are five possible values:
ID | Category |
---|---|
0 | Not a logbook scan |
1 | Space Pirate Data |
2 | Chozo Lore |
3 | Creatures |
4 | Research |
Scan Images
Following the header is an array of four structs that contain settings for up to four scan images. Although there can be anywhere from 0 to 4 scan images attached to a scan, there are always four scan image entries here. Entries that aren't used have their TXTR ID set to 0xFFFFFFFF, with the rest of the settings mostly left at defaults. They follow this format:
Offset | Size | Type | Description |
---|---|---|---|
0x0 | 4 | long | TXTR ID |
0x4 | 4 | float | Appearance %; image will appear when the scan is this% complete. Should range from 0 to 1. |
0x8 | 4 | long | Image Position; See below. |
0xC | 4 | long | Unknown |
0x10 | 4 | long | Unknown |
0x14 | 4 | long | Unknown |
0x18 | 4 | float | Unknown |
0x1C | End of entry |
Image Position
There are 20 possible values for the scan image's position; there are ten for the left side, and ten for the right:
Value | Size | Position | FRME_ScanHud Widget |
---|---|---|---|
0x00 | 1/4 | Top-left corner | imagepane_pane0 |
0x01 | 1/4 | Upper-middle-left | imagepane_pane1 |
0x02 | 1/4 | Lower-middle-left | imagepane_pane2 |
0x03 | 1/4 | Bottom-left corner | imagepane_pane3 |
0x04 | 1/2 | Top-left corner | imagepane_pane01 |
0x05 | 1/2 | Middle-left | imagepane_pane12 |
0x06 | 1/2 | Bottom-left corner | imagepane_pane23 |
0x07 | 3/4 | Top-left corner | imagepane_pane012 |
0x08 | 3/4 | Bottom-left corner | imagepane_pane123 |
0x09 | 1 | Left side | imagepane_pane0123 |
0x0A | 1/4 | Top-right corner | imagepane_pane4 |
0x0B | 1/4 | Upper-middle-right | imagepane_pane5 |
0x0C | 1/4 | Lower-middle-right | imagepane_pane6 |
0x0D | 1/4 | Bottom-right corner | imagepane_pane7 |
0x0E | 1/2 | Top-right corner | imagepane_pane45 |
0x0F | 1/2 | Middle-right | imagepane_pane56 |
0x10 | 1/2 | Bottom-right corner | imagepane_pane67 |
0x11 | 3/4 | Top-right corner | imagepane_pane456 |
0x12 | 3/4 | Bottom-right corner | imagepane_pane567 |
0x13 | 1 | Right side | imagepane_pane4567 |
-
Image positions 0x00, 0x01, and 0x02
-
Image positions for 0x04, 0x06, 0x0E, and 0x10
-
Image positions for 0x03, 0x05, and 0x0F. Note that 0x03 appears only for this scan (Omega Pirate's projectiles) and no others.
-
Image positions for 0x09 and 0x13
-
This unused Chozo Elder scan (hacked onto Parasite Queen) shows image positions 0x0A and 0x0D. This scan is the only one where these positions are used.
-
Image positions for 0x0B and 0x0C (unused)
-
Image positions for 0x07 and 0x11 (unused)
-
Image positions for 0x08 and 0x12 (unused)