Difference between revisions of "Sonic 3D: Flickies' Island/Technical information"
From Sonic Retro
(tables -> prettytables) |
Ccawley2011 (talk | contribs) |
||
(14 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{back}}[[Category:Technical information]] |
− | + | {{cleanup}} | |
− | == Level headers == | + | ==Mega Drive version== |
+ | ===Level headers=== | ||
Level headers are 42 bytes each. They contain data needed to load their layout, objects, etc. Below is the format for a level header. N/A means that we yet don't know its functionality, however looking at their values it seems like them all are pointers. If a question mark (?) is in the description, then the content isn't confirmed yet. All palettes pointers are indices from some array. | Level headers are 42 bytes each. They contain data needed to load their layout, objects, etc. Below is the format for a level header. N/A means that we yet don't know its functionality, however looking at their values it seems like them all are pointers. If a question mark (?) is in the description, then the content isn't confirmed yet. All palettes pointers are indices from some array. | ||
− | {|class="prettytable" | + | {| class="prettytable" style="width:auto;" |
!Offset | !Offset | ||
!Size | !Size | ||
!Type | !Type | ||
!Description | !Description | ||
+ | !Compression | ||
|- | |- | ||
|$0 | |$0 | ||
|4 bytes | |4 bytes | ||
|Pointer | |Pointer | ||
− | |Object | + | |Object placement |
+ | |[[RNC]] | ||
|- | |- | ||
|$4 | |$4 | ||
|4 bytes | |4 bytes | ||
|Pointer | |Pointer | ||
− | |Collision | + | |Collision layout |
+ | |RNC | ||
|- | |- | ||
|$8 | |$8 | ||
|4 bytes | |4 bytes | ||
|Pointer | |Pointer | ||
− | |B | + | |Graphics for plane B tiles |
+ | |RNC | ||
|- | |- | ||
|$C | |$C | ||
|4 bytes | |4 bytes | ||
|Pointer | |Pointer | ||
− | |Graphics | + | |Graphics for plane A tiles |
+ | |N/A | ||
|- | |- | ||
|$10 | |$10 | ||
|4 bytes | |4 bytes | ||
|Pointer | |Pointer | ||
− | |A | + | |32x32 mappings for plane B |
+ | |N/A | ||
|- | |- | ||
|$14 | |$14 | ||
|4 bytes | |4 bytes | ||
|Pointer | |Pointer | ||
+ | |32x32 mappings for plane A | ||
|N/A | |N/A | ||
|- | |- | ||
Line 45: | Line 53: | ||
|4 bytes | |4 bytes | ||
|Pointer | |Pointer | ||
− | | | + | |Level layout |
+ | |N/A | ||
|- | |- | ||
|$1C | |$1C | ||
|4 bytes | |4 bytes | ||
|Pointer | |Pointer | ||
− | | | + | |List of miscellaneous graphics to load |
+ | |Custom, graphics use RNC | ||
|- | |- | ||
|$20 | |$20 | ||
|4 bytes | |4 bytes | ||
|Pointer | |Pointer | ||
− | | | + | |Start position, checkpoint positions, etc. |
+ | |N/A | ||
|- | |- | ||
|$24 | |$24 | ||
Line 61: | Line 72: | ||
|N/A | |N/A | ||
|Unused? (always $0000) | |Unused? (always $0000) | ||
+ | |N/A | ||
|- | |- | ||
|$26 | |$26 | ||
Line 66: | Line 78: | ||
|Index | |Index | ||
|1st palette | |1st palette | ||
+ | |None | ||
|- | |- | ||
|$27 | |$27 | ||
Line 71: | Line 84: | ||
|Index | |Index | ||
|2nd palette | |2nd palette | ||
+ | |None | ||
|- | |- | ||
|$28 | |$28 | ||
Line 76: | Line 90: | ||
|Index | |Index | ||
|3rd palette | |3rd palette | ||
+ | |None | ||
|- | |- | ||
|$29 | |$29 | ||
Line 81: | Line 96: | ||
|Index | |Index | ||
|4th palette | |4th palette | ||
+ | |None | ||
|} | |} | ||
− | == Level headers locations == | + | ===Level headers locations=== |
Those are the addresses for the headers of all the levels in the game. They point to the beginning of the header data, of course. | Those are the addresses for the headers of all the levels in the game. They point to the beginning of the header data, of course. | ||
− | {|class="prettytable" | + | {| class="prettytable" style="width:auto;" |
!Offset | !Offset | ||
!Description | !Description | ||
Line 158: | Line 174: | ||
|} | |} | ||
+ | ===Eggman hit count locations=== | ||
+ | |||
+ | {| class="prettytable" style="width:auto;" | ||
+ | !Offset | ||
+ | !Description | ||
+ | |- | ||
+ | |$DDBB | ||
+ | |Green Grove Zone | ||
+ | |- | ||
+ | |$6DD5 | ||
+ | |Rusty Ruins | ||
+ | |- | ||
+ | |$8851 | ||
+ | |Spring Stadium Zone | ||
+ | |- | ||
+ | |$F265 | ||
+ | |Diamond Dust Zone | ||
+ | |- | ||
+ | |$9E65 | ||
+ | |Volcano Valley Zone | ||
+ | |- | ||
+ | |$11113 | ||
+ | |Gene Gadget Zone | ||
+ | |- | ||
+ | |$125ED | ||
+ | |Panic Puppet Zone Right Arm Part 1? | ||
+ | |- | ||
+ | |$13097 | ||
+ | |Panic Puppet Zone Right Arm Part 2? | ||
+ | |} | ||
+ | |||
+ | ===Sonic 3D FMV Player=== | ||
+ | [[:File:S3DPlay.zip|S3DPlay]] - Developed by sasuke, this is a proof of concept program to demonstrate how the Mega Drive version of ''Flickies' Island'' generates video during the opening sequence. | ||
+ | |||
+ | ==References== | ||
+ | <references /> | ||
+ | |||
+ | {{S3DOmni}} | ||
{{SCHGuides}} | {{SCHGuides}} | ||
− |
Latest revision as of 11:25, 29 December 2020
- Back to: Sonic 3D: Flickies' Island.
This article needs cleanup. This article needs to be edited to conform to a higher standard of article quality. |
Contents
Mega Drive version
Level headers
Level headers are 42 bytes each. They contain data needed to load their layout, objects, etc. Below is the format for a level header. N/A means that we yet don't know its functionality, however looking at their values it seems like them all are pointers. If a question mark (?) is in the description, then the content isn't confirmed yet. All palettes pointers are indices from some array.
Offset | Size | Type | Description | Compression |
---|---|---|---|---|
$0 | 4 bytes | Pointer | Object placement | RNC |
$4 | 4 bytes | Pointer | Collision layout | RNC |
$8 | 4 bytes | Pointer | Graphics for plane B tiles | RNC |
$C | 4 bytes | Pointer | Graphics for plane A tiles | N/A |
$10 | 4 bytes | Pointer | 32x32 mappings for plane B | N/A |
$14 | 4 bytes | Pointer | 32x32 mappings for plane A | N/A |
$18 | 4 bytes | Pointer | Level layout | N/A |
$1C | 4 bytes | Pointer | List of miscellaneous graphics to load | Custom, graphics use RNC |
$20 | 4 bytes | Pointer | Start position, checkpoint positions, etc. | N/A |
$24 | 2 bytes | N/A | Unused? (always $0000) | N/A |
$26 | 1 byte | Index | 1st palette | None |
$27 | 1 byte | Index | 2nd palette | None |
$28 | 1 byte | Index | 3rd palette | None |
$29 | 1 byte | Index | 4th palette | None |
Level headers locations
Those are the addresses for the headers of all the levels in the game. They point to the beginning of the header data, of course.
Offset | Description |
---|---|
$1AB62 | Green Grove Zone Act 1 |
$1AB8C | Green Grove Zone Act 2 |
$1ABB6 | Green Grove Zone Act 3 |
$1AC5E | Rusty Ruin Zone Act 1 |
$1AC34 | Rusty Ruin Zone Act 2 |
$1AC88 | Rusty Ruin Zone Act 3 |
$1ADAE | Spring Stadium Zone Act 1 |
$1ADD8 | Spring Stadium Zone Act 2 |
$1AE02 | Spring Stadium Zone Act 3 |
$1ACB2 | Diamond Dust Zone Act 1 |
$1ACDC | Diamond Dust Zone Act 2 |
$1AD06 | Diamond Dust Zone Act 3 |
$1AD5A | Volcano Valley Zone Act 1 |
$1AD30 | Volcano Valley Zone Act 2 |
$1AD84 | Volcano Valley Zone Act 3 |
$1ABE0 | Gene Gadget Zone Act 1 |
$1AC0A | Gene Gadget Zone Act 2 |
$1AE2C | Gene Gadget Zone Act 3 |
$1AE80 | Panic Puppet Zone Act 1 |
$1AE56 | Panic Puppet Zone Act 2 |
$1AEAA | Panic Puppet Zone Act 3 |
$1AED4 | The Final Fight |
Eggman hit count locations
Offset | Description |
---|---|
$DDBB | Green Grove Zone |
$6DD5 | Rusty Ruins |
$8851 | Spring Stadium Zone |
$F265 | Diamond Dust Zone |
$9E65 | Volcano Valley Zone |
$11113 | Gene Gadget Zone |
$125ED | Panic Puppet Zone Right Arm Part 1? |
$13097 | Panic Puppet Zone Right Arm Part 2? |
Sonic 3D FMV Player
S3DPlay - Developed by sasuke, this is a proof of concept program to demonstrate how the Mega Drive version of Flickies' Island generates video during the opening sequence.
References
Sonic 3D: Flickies' Island | |
---|---|
Main page Manuals Development |
show;hide
Scrapped Enemies: Mega Drive:
Saturn: |