<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.axiodl.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Duncathan</id>
	<title>Retro Modding Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.axiodl.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Duncathan"/>
	<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/w/Special:Contributions/Duncathan"/>
	<updated>2026-05-09T14:34:11Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=MAPA_(File_Format)&amp;diff=2832</id>
		<title>MAPA (File Format)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=MAPA_(File_Format)&amp;diff=2832"/>
		<updated>2026-05-05T12:35:59Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: correct info about the offsets in the primitive headers&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &#039;&#039;&#039;.MAPA file format&#039;&#039;&#039; defines the minimap models used in the Metroid Prime series. MAPA or &#039;&#039;&#039;MAP A&#039;&#039;&#039;rea consists of several sections: The header, Mappable Object entries, Vertices, Primitive Headers, and the primitives.&lt;br /&gt;
&lt;br /&gt;
{{research|2|A few things are unknown in the header and Mappable Object Entries}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
== Format ==&lt;br /&gt;
=== Header ===&lt;br /&gt;
The header is very straightforward, and has some minor differences depending on version.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
!MP1&lt;br /&gt;
!MP2&lt;br /&gt;
!MP3&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Magic&#039;&#039;&#039;; Always 0xDEADD00D&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Version&#039;&#039;&#039;; See below&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Type&#039;&#039;&#039;; unknown function in MP1/3, specifies whether the area appears on the Light (0) or Dark (1) map in MP2&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Visibility Mode&#039;&#039;&#039;; &amp;lt;ol start=0&amp;gt;&amp;lt;li&amp;gt;Always Visible (Map Universe Area)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Visit or Map Station (most MP1 areas)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Visit only (latter areas of Ruins and Phendrana)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Never Visible&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|{{AABox}}&lt;br /&gt;
|&#039;&#039;&#039;Bounding Box&#039;&#039;&#039;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Vector3f}}&lt;br /&gt;
|&#039;&#039;&#039;Map Adjustment&#039;&#039;&#039;&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|{{unknown|Unknown}}&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Mappable Object Count&#039;&#039;&#039;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Vertex Count&#039;&#039;&#039;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Primitive Count&#039;&#039;&#039;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Environment Variable Section Size&#039;&#039;&#039;&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Environment Variable Count&#039;&#039;&#039;&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
| colspan=5 {{unknown|End of Header}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Version ====&lt;br /&gt;
The version value listed above can have the following values:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Game&lt;br /&gt;
!Value&lt;br /&gt;
|-&lt;br /&gt;
|Metroid Prime 1&lt;br /&gt;
|2&lt;br /&gt;
|-&lt;br /&gt;
|Metroid Prime 2: Echoes&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|Metroid Prime 3: Corruption&lt;br /&gt;
|5&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Environment Variables ===&lt;br /&gt;
Only exists in Corruption; used for some areas with Landing Sites.&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Count&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|string&lt;br /&gt;
|Environment Variable Count&lt;br /&gt;
|&#039;&#039;&#039;Environment Variable&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|Pad to 4 bytes}}&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of Environment Variables}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Mappable Objects ===&lt;br /&gt;
A Mappable Object in the Metroid Prime series can include: Elevators, Doors, and Save/Missile Stations. Each Mappable Object entry consists of the following struct:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
!MP1 &amp;amp; MP2&lt;br /&gt;
!MP3&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Type&#039;&#039;&#039;; See tables below for MP1/MP2 types&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Visibility Mode&#039;&#039;&#039;; &amp;lt;ol start=0&amp;gt;&amp;lt;li&amp;gt;Always Visible&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Map Station or Area Visit&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Door Visit&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Never Visible&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Map Station or Area Visit&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Editor ID&#039;&#039;&#039;; Same ID format as SCLY, indicates associated world object&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|[[GUID]]&lt;br /&gt;
|&#039;&#039;&#039;Saved State ID&#039;&#039;&#039;&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|{{unknown|Unknown}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Transform4f}}&lt;br /&gt;
|&#039;&#039;&#039;Transform Matrix&#039;&#039;&#039; The Mappable Object&#039;s position in &#039;&#039;&#039;world&#039;&#039;&#039; space.&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32 * 4&lt;br /&gt;
|{{unknown|Unknown}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
| colspan=4 {{unknown|End of Mappable Object}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== MP1 Types ====&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Normal Door&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Shield Door&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Ice Door&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Wave Door&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|Plasma Door&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|Big Door&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|Big Door 2&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|Ice Door Ceiling&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|Ice Door Floor&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|Wave Door Ceiling&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|Wave Door Floor&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|Plasma Door Ceiling&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|Plasma Door Floor&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|Ice Door Floor 2&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|Wave Door Floor 2&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|Plasma Door Floor 2&lt;br /&gt;
|-&lt;br /&gt;
|27&lt;br /&gt;
|Down Arrow Yellow (Maintenance Tunnel)&lt;br /&gt;
|-&lt;br /&gt;
|28&lt;br /&gt;
|Up Arrow Yellow (Phazon Processing Center)&lt;br /&gt;
|-&lt;br /&gt;
|29&lt;br /&gt;
|Down Arrow Green (Elevator A)&lt;br /&gt;
|-&lt;br /&gt;
|30&lt;br /&gt;
|Up Arrow Green (Elite Control Access)&lt;br /&gt;
|-&lt;br /&gt;
|31&lt;br /&gt;
|Down Arrow Red (Elevator B)&lt;br /&gt;
|-&lt;br /&gt;
|32&lt;br /&gt;
|Up Arrow Red (Fungal Hall Access)&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|Elevator&lt;br /&gt;
|-&lt;br /&gt;
|34&lt;br /&gt;
|Save Station&lt;br /&gt;
|-&lt;br /&gt;
|37&lt;br /&gt;
|Missile Station&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== MP2 Types ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Normal Door&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Missile Door&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Dark Door&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Annihilator Door&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|Light Door&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|Super Missile Door&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|Seeker Missile Door&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|Power Bomb Door&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|Elevator&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|Save Station&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|Ammo Station&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|Portal&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|Light Teleporter&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|Translator Gate&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|Up Arrow&lt;br /&gt;
|-&lt;br /&gt;
|25&lt;br /&gt;
|Down Arrow&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Vertices ===&lt;br /&gt;
&lt;br /&gt;
Vertices are a simple array of CVector3f. Geometry in MAPAs is, almost always, centered around the origin (0, 0, 0) and are simplified, full sized, versions of the map they replicate. Each vertex is referenced at least twice: once for the primitive, once for the line border.&lt;br /&gt;
&lt;br /&gt;
=== Primitive Headers ===&lt;br /&gt;
&lt;br /&gt;
The Primitive headers are extremely simple, they merely have a bounding box followed by the primitive table start and end point, relative to the end of the file header.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|{{Vector3f}}&lt;br /&gt;
|&#039;&#039;&#039;Normal&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|{{Vector3f}}&lt;br /&gt;
|&#039;&#039;&#039;Center of Mass&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Primitive Table Start&#039;&#039;&#039;; relative to the end of the file header&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Border Table Start&#039;&#039;&#039;; relative to the end of the file header&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Primitive Table ===&lt;br /&gt;
&lt;br /&gt;
The Primitive is also fairly simple, each one consists of two parts: The GX Primitive list, and the Border list. &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Primitive Count (PC)&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|Primitive * PC&lt;br /&gt;
|&#039;&#039;&#039;Primitives&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Border Count (BC)&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|Border * (BC)&lt;br /&gt;
|&#039;&#039;&#039;Borders&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Primitive ===&lt;br /&gt;
&lt;br /&gt;
A primitive in a MAPA is a simple 4 byte aligned list of indices into the vertex list, starting with the GX Primitive type, a count, then an array of indices, each index taking up one byte.&lt;br /&gt;
&lt;br /&gt;
=== Border ===&lt;br /&gt;
&lt;br /&gt;
A border in a MAPA is a simple count followed by a 4 byte aligned list indices into the vertex list, each index taking up one byte. A border is simply drawn using GX_LINESTRIP.&lt;br /&gt;
&lt;br /&gt;
[[Category:File Formats]]&lt;br /&gt;
[[Category:Metroid Prime]]&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;br /&gt;
[[Category:Metroid Prime 3: Corruption]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=HIER_(File_Format)&amp;diff=2831</id>
		<title>HIER (File Format)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=HIER_(File_Format)&amp;diff=2831"/>
		<updated>2025-09-20T15:06:55Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: create page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &#039;&#039;&#039;HIER format&#039;&#039;&#039; is used to group logbook scans in Echoes into hierarchal categories, which are displayed while scanning objects. There is only one HIER file in Echoes, &amp;lt;code&amp;gt;DUMB_ScanHierarchy&amp;lt;/code&amp;gt; in &amp;lt;code&amp;gt;NoARAM.pak&amp;lt;/code&amp;gt; (asset ID &amp;lt;code&amp;gt;0xDD79DC2A&amp;lt;/code&amp;gt;). The hierarchy described in this file matches that in [[TREE (File Format)|TREE]], but is optimized for in-game scanning rather than pause menu navigation.&lt;br /&gt;
&lt;br /&gt;
{{research|1|What are Options used for?}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
=== Header ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
!Count&lt;br /&gt;
! Name&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| FourCC&lt;br /&gt;
|1&lt;br /&gt;
| &#039;&#039;&#039;Magic&#039;&#039;&#039;&lt;br /&gt;
|Always &amp;lt;code&amp;gt;HIER&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u32&lt;br /&gt;
|1&lt;br /&gt;
| &#039;&#039;&#039;Node Count&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
|[[HIER (File Format)#Node|Node]]&lt;br /&gt;
|&#039;&#039;Node Count&#039;&#039;&lt;br /&gt;
|Nodes&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Node ===&lt;br /&gt;
Each node represents either a Category, a Scan, or an Option. When scanning a logbook scan, the game locates its node and all its parents, and displays up to 5 Categories as well as the Scan node.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
!Notes&lt;br /&gt;
|-&lt;br /&gt;
| STRG Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Name String Table&#039;&#039;&#039;&lt;br /&gt;
|Asset ID of the [[STRG (File Format)|STRG]] file with this node&#039;s name.&lt;br /&gt;
|-&lt;br /&gt;
| string&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Name String Name&#039;&#039;&#039;&lt;br /&gt;
|The named string in the Name String Table with this node&#039;s name.&lt;br /&gt;
|-&lt;br /&gt;
| SCAN Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Scan Asset&#039;&#039;&#039;&lt;br /&gt;
|Asset ID of the [[SCAN (File Format)|SCAN]] asset associated with this node. Always 0xFFFFFFFF for Categories and Options.&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Parent&#039;&#039;&#039;&lt;br /&gt;
|Index into the Nodes table. Top-level nodes have a parent of 0xFFFFFFFF.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:File Formats]]&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=Metroid_Prime_2:_Echoes&amp;diff=2830</id>
		<title>Metroid Prime 2: Echoes</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=Metroid_Prime_2:_Echoes&amp;diff=2830"/>
		<updated>2025-09-20T14:27:26Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: add HIER to format list&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Metroid Prime 2: Echoes&#039;&#039;&#039; is the sequel to the critically acclaimed [[Metroid Prime]], and the second game developed by Retro.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Builds ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Build&lt;br /&gt;
! Date/Time&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| v0.160&lt;br /&gt;
| 6/29/2004 18:53:25&lt;br /&gt;
| Metroid Prime 2: Echoes Bonus Disc&lt;br /&gt;
|-&lt;br /&gt;
| v0.227&lt;br /&gt;
| 9/21/2004 10:45:09&lt;br /&gt;
| Multi-Game Demo Disc v20, v23-26&lt;br /&gt;
|-&lt;br /&gt;
| v0.237&lt;br /&gt;
| 9/29/2004 14:51:17&lt;br /&gt;
| EUR Interactive Multi-Game Demo Disc: November 2004&lt;br /&gt;
|-&lt;br /&gt;
| v1.028&lt;br /&gt;
| 10/18/2004 10:44:32&lt;br /&gt;
| GameCube 0-00 NTSC (Original Release)&lt;br /&gt;
|-&lt;br /&gt;
| v1.035&lt;br /&gt;
| 10/27/2004 19:48:17&lt;br /&gt;
| GameCube 0-00 PAL&lt;br /&gt;
|-&lt;br /&gt;
| v1.036&lt;br /&gt;
| 12/20/2004 11:53:11&lt;br /&gt;
| GameCube 0-00 NTSC-J&lt;br /&gt;
|-&lt;br /&gt;
| v3.561&lt;br /&gt;
| 2008/06/30 14:13&lt;br /&gt;
| Wii de Asobu&lt;br /&gt;
|-&lt;br /&gt;
| v3.593&lt;br /&gt;
| 2008/08/21 17:09&lt;br /&gt;
| Metroid Prime: Trilogy NTSC&lt;br /&gt;
|-&lt;br /&gt;
| v3.629&lt;br /&gt;
| 2009/01/15 14:08&lt;br /&gt;
| Metroid Prime: Trilogy PAL&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Formats ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Format&lt;br /&gt;
! Contents&lt;br /&gt;
|-&lt;br /&gt;
| [[AFSM (File Format)|AFSM]]&lt;br /&gt;
| AI Finite State Machine&lt;br /&gt;
|-&lt;br /&gt;
| [[AGSC (File Format)|AGSC]]&lt;br /&gt;
| Audio Group Set&lt;br /&gt;
|-&lt;br /&gt;
| [[ANCS (File Format)|ANCS]]&lt;br /&gt;
| Animation/Character Set&lt;br /&gt;
|-&lt;br /&gt;
| [[ANIM (File Format)|ANIM]]&lt;br /&gt;
| Animation&lt;br /&gt;
|-&lt;br /&gt;
| [[ATBL (File Format)|ATBL]]&lt;br /&gt;
| Audio Lookup Table&lt;br /&gt;
|-&lt;br /&gt;
| [[CINF (File Format)|CINF]]&lt;br /&gt;
| Skeleton&lt;br /&gt;
|-&lt;br /&gt;
| [[CMDL (Metroid Prime)|CMDL]]&lt;br /&gt;
| Model&lt;br /&gt;
|-&lt;br /&gt;
| [[CRSC (File Format)|CRSC]]&lt;br /&gt;
| Collision Response Particle System&lt;br /&gt;
|-&lt;br /&gt;
| [[CSKR (File Format)|CSKR]]&lt;br /&gt;
| Skin Rules&lt;br /&gt;
|-&lt;br /&gt;
| [[CSNG (File Format)|CSNG]]&lt;br /&gt;
| MusyX MIDI File&lt;br /&gt;
|-&lt;br /&gt;
| [[CSPP (File Format)|CSPP]]&lt;br /&gt;
| Spatial Primitive&lt;br /&gt;
|-&lt;br /&gt;
| [[DCLN (Metroid Prime)|DCLN]]&lt;br /&gt;
| Dynamic Collision&lt;br /&gt;
|-&lt;br /&gt;
| [[DGRP (File Format)|DGRP]]&lt;br /&gt;
| Dependency Group&lt;br /&gt;
|-&lt;br /&gt;
| [[DPSC (File Format)|DPSC]]&lt;br /&gt;
| Decal Particle System&lt;br /&gt;
|-&lt;br /&gt;
| [[DSP (File Format)|DSP]]&lt;br /&gt;
| Music&lt;br /&gt;
|-&lt;br /&gt;
| [[DUMB (File Format)|DUMB]]&lt;br /&gt;
| Binary Data&lt;br /&gt;
|-&lt;br /&gt;
| [[EGMC (File Format)|EGMC]]&lt;br /&gt;
| Editor Object to Static Geometry Map&lt;br /&gt;
|-&lt;br /&gt;
| [[ELSC (File Format)|ELSC]]&lt;br /&gt;
| Electric Particle System&lt;br /&gt;
|-&lt;br /&gt;
| [[FONT (File Format)|FONT]]&lt;br /&gt;
| Font&lt;br /&gt;
|-&lt;br /&gt;
| [[FRME (File Format)|FRME]]&lt;br /&gt;
| GUI Frame&lt;br /&gt;
|-&lt;br /&gt;
| [[FSM2 (File Format)|FSM2]]&lt;br /&gt;
| Finite State Machine 2&lt;br /&gt;
|-&lt;br /&gt;
|[[HIER (File Format)|HIER]]&lt;br /&gt;
|Scan Hierarchy&lt;br /&gt;
|-&lt;br /&gt;
| [[HINT (File Format)|HINT]]&lt;br /&gt;
| Hint System&lt;br /&gt;
|-&lt;br /&gt;
| [[MAPA (File Format)|MAPA]]&lt;br /&gt;
| Area Map&lt;br /&gt;
|-&lt;br /&gt;
| [[MAPU (File Format)|MAPU]]&lt;br /&gt;
| Universe Map&lt;br /&gt;
|-&lt;br /&gt;
| [[MAPW (File Format)|MAPW]]&lt;br /&gt;
| World Map&lt;br /&gt;
|-&lt;br /&gt;
| [[MLVL (File Format)|MLVL]]&lt;br /&gt;
| World&lt;br /&gt;
|-&lt;br /&gt;
| [[MREA (File Format)|MREA]]&lt;br /&gt;
| Area&lt;br /&gt;
|-&lt;br /&gt;
| [[NTWK (File Format)|NTWK]]&lt;br /&gt;
| Tweaks&lt;br /&gt;
|-&lt;br /&gt;
| [[PAK (Metroid Prime)|PAK]]&lt;br /&gt;
| Package&lt;br /&gt;
|-&lt;br /&gt;
| [[PART (File Format)|PART]]&lt;br /&gt;
| Particle System&lt;br /&gt;
|-&lt;br /&gt;
| [[PATH (File Format)|PATH]]&lt;br /&gt;
| Pathfinding&lt;br /&gt;
|-&lt;br /&gt;
| [[PTLA (File Format)|PTLA]]&lt;br /&gt;
| Portal Area&lt;br /&gt;
|-&lt;br /&gt;
| [[REL (File Format)|REL]]&lt;br /&gt;
| Relocatable Module&lt;br /&gt;
|-&lt;br /&gt;
| [[RULE (File Format)|RULE]]&lt;br /&gt;
| Rule Set&lt;br /&gt;
|-&lt;br /&gt;
| [[SAVW (File Format)|SAVW]]&lt;br /&gt;
| World Save Info&lt;br /&gt;
|-&lt;br /&gt;
| [[SCAN (Metroid Prime 2)|SCAN]]&lt;br /&gt;
| Scannable Object Info&lt;br /&gt;
|-&lt;br /&gt;
| [[Scriptable_Layers_(Metroid_Prime_2)|SCLY]]&lt;br /&gt;
| Scriptable Layers&lt;br /&gt;
|-&lt;br /&gt;
| [[SPSC (File Format)|SPSC]]&lt;br /&gt;
| Spawn Particle System&lt;br /&gt;
|-&lt;br /&gt;
| [[SRSC (File Format)|SRSC]]&lt;br /&gt;
| Sorted Particle System&lt;br /&gt;
|-&lt;br /&gt;
| [[STLC (File Format)|STLC]]&lt;br /&gt;
| String List&lt;br /&gt;
|-&lt;br /&gt;
| [[STRG (File Format)|STRG]]&lt;br /&gt;
| String Table&lt;br /&gt;
|-&lt;br /&gt;
| [[SWHC (File Format)|SWHC]]&lt;br /&gt;
| Swoosh Particle System&lt;br /&gt;
|-&lt;br /&gt;
| [[THP (File Format)|THP]]&lt;br /&gt;
| Video&lt;br /&gt;
|-&lt;br /&gt;
| [[TREE (File Format)|TREE]]&lt;br /&gt;
| Pause Menu Hierarchy&lt;br /&gt;
|-&lt;br /&gt;
| [[TXTR (Metroid Prime)|TXTR]]&lt;br /&gt;
| Texture&lt;br /&gt;
|-&lt;br /&gt;
| [[WPSC (File Format)|WPSC]]&lt;br /&gt;
| Weapon Particle System&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Games]]&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=ScriptLayerController_(Metroid_Prime_2)&amp;diff=2824</id>
		<title>ScriptLayerController (Metroid Prime 2)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=ScriptLayerController_(Metroid_Prime_2)&amp;diff=2824"/>
		<updated>2023-07-01T19:43:20Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: /* States */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Properties ===&lt;br /&gt;
&lt;br /&gt;
=== States ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!State&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|Arrived&lt;br /&gt;
|Sent by dynamic controllers when they finish loading.&lt;br /&gt;
It can be useful to send a Play message from the controller to itself using this state, to activate the layer as soon as it&#039;s finished loading.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Messages ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Message&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|Increment&lt;br /&gt;
|Activates the target layer for the next time the area is loaded.&lt;br /&gt;
&#039;&#039;&#039;Dynamic controllers:&#039;&#039;&#039; begins loading the layer asynchronously. &#039;&#039;Does not activate the layer immediately.&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|Decrement&lt;br /&gt;
|Deactivates the target layer for the next time the area is loaded.&lt;br /&gt;
&#039;&#039;&#039;Dynamic controllers:&#039;&#039;&#039; unloads and deactivates the layer immediately.&lt;br /&gt;
|-&lt;br /&gt;
|Play&lt;br /&gt;
|&#039;&#039;&#039;Dynamic controllers&#039;&#039;&#039;: activates the target layer if it isn&#039;t yet active. &lt;br /&gt;
If the layer has not yet finished loading, it will load &#039;&#039;synchronously&#039;&#039;, blacking out the screen until finished.&lt;br /&gt;
|-&lt;br /&gt;
|Load&lt;br /&gt;
|Alias for Increment.&lt;br /&gt;
|-&lt;br /&gt;
|Unload&lt;br /&gt;
|Alias for Decrement.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=ScriptLayerController_(Metroid_Prime_2)&amp;diff=2823</id>
		<title>ScriptLayerController (Metroid Prime 2)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=ScriptLayerController_(Metroid_Prime_2)&amp;diff=2823"/>
		<updated>2023-07-01T19:42:46Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: Created page with &amp;quot;=== Properties ===  === States === {| class=&amp;quot;wikitable&amp;quot; |+ !State !Description |- |Arrived |Sent by dynamic controllers when they finish loading. It can be useful to send a Pl...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Properties ===&lt;br /&gt;
&lt;br /&gt;
=== States ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!State&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|Arrived&lt;br /&gt;
|Sent by dynamic controllers when they finish loading.&lt;br /&gt;
It can be useful to send a Play message from the controller to itself, to activate the layer as soon as it&#039;s finished loading.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Messages ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+&lt;br /&gt;
!Message&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|Increment&lt;br /&gt;
|Activates the target layer for the next time the area is loaded.&lt;br /&gt;
&#039;&#039;&#039;Dynamic controllers:&#039;&#039;&#039; begins loading the layer asynchronously. &#039;&#039;Does not activate the layer immediately.&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|Decrement&lt;br /&gt;
|Deactivates the target layer for the next time the area is loaded.&lt;br /&gt;
&#039;&#039;&#039;Dynamic controllers:&#039;&#039;&#039; unloads and deactivates the layer immediately.&lt;br /&gt;
|-&lt;br /&gt;
|Play&lt;br /&gt;
|&#039;&#039;&#039;Dynamic controllers&#039;&#039;&#039;: activates the target layer if it isn&#039;t yet active. &lt;br /&gt;
If the layer has not yet finished loading, it will load &#039;&#039;synchronously&#039;&#039;, blacking out the screen until finished.&lt;br /&gt;
|-&lt;br /&gt;
|Load&lt;br /&gt;
|Alias for Increment.&lt;br /&gt;
|-&lt;br /&gt;
|Unload&lt;br /&gt;
|Alias for Decrement.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=RubiksPuzzle_(Metroid_Prime_2)&amp;diff=2822</id>
		<title>RubiksPuzzle (Metroid Prime 2)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=RubiksPuzzle_(Metroid_Prime_2)&amp;diff=2822"/>
		<updated>2023-06-24T04:51:12Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: /* States */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Properties==&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!State!!Description&lt;br /&gt;
|-&lt;br /&gt;
|InternalState00||Attaching red holocubes&lt;br /&gt;
|-&lt;br /&gt;
|InternalState01||Attaching green holocubes&lt;br /&gt;
|-&lt;br /&gt;
|InternalState02||Attaching blue holocubes&lt;br /&gt;
|-&lt;br /&gt;
|InternalState03&lt;br /&gt;
|Attaching red input laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState04&lt;br /&gt;
|Attaching green input laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState05&lt;br /&gt;
|Attaching blue input laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState06&lt;br /&gt;
|Attaching left red laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState07&lt;br /&gt;
|Attaching right red laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState08&lt;br /&gt;
|Attaching left green laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState09&lt;br /&gt;
|Attaching right green laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState10&lt;br /&gt;
|Attaching left blue laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState11&lt;br /&gt;
|Attaching right blue laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState12&lt;br /&gt;
|Attaching red output laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState13&lt;br /&gt;
|Attaching green output laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState14&lt;br /&gt;
|Attaching blue output laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState15&lt;br /&gt;
|Attaching axis reference&lt;br /&gt;
The rotation of this instance is applied to the axis around which holocubes are rotated.&lt;br /&gt;
|-&lt;br /&gt;
|InternalState16&lt;br /&gt;
|Attaching top buttons&lt;br /&gt;
|-&lt;br /&gt;
|InternalState17&lt;br /&gt;
|Attaching bottom buttons&lt;br /&gt;
|-&lt;br /&gt;
|InternalState18&lt;br /&gt;
|Puzzle complete&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Messages==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Header text!!Header text&lt;br /&gt;
|-&lt;br /&gt;
|IntermalMessage00||Rotate top left&lt;br /&gt;
|-&lt;br /&gt;
|InternalMessage01||Rotate top right&lt;br /&gt;
|-&lt;br /&gt;
|InternalMessage02||Rotate bottom left&lt;br /&gt;
|-&lt;br /&gt;
|InternalMessage03||Rotate bottom right&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=RubiksPuzzle_(Metroid_Prime_2)&amp;diff=2821</id>
		<title>RubiksPuzzle (Metroid Prime 2)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=RubiksPuzzle_(Metroid_Prime_2)&amp;diff=2821"/>
		<updated>2023-06-24T04:50:47Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: Created page with &amp;quot;==Properties==  ==States== {| class=&amp;quot;wikitable&amp;quot; |- !State!!Description |- |InternalState00||Attaching red holocubes |- |InternalState01||Attaching green holocubes |- |Internal...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Properties==&lt;br /&gt;
&lt;br /&gt;
==States==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!State!!Description&lt;br /&gt;
|-&lt;br /&gt;
|InternalState00||Attaching red holocubes&lt;br /&gt;
|-&lt;br /&gt;
|InternalState01||Attaching green holocubes&lt;br /&gt;
|-&lt;br /&gt;
|InternalState02||Attaching blue holocubes&lt;br /&gt;
|-&lt;br /&gt;
|InternalState03&lt;br /&gt;
|Attaching red input laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState04&lt;br /&gt;
|Attaching green input laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState05&lt;br /&gt;
|Attaching blue input laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState06&lt;br /&gt;
|Attaching left red laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState07&lt;br /&gt;
|Attaching right red laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState08&lt;br /&gt;
|Attaching left green laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState09&lt;br /&gt;
|Attaching right green laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState10&lt;br /&gt;
|Attaching left blue laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState11&lt;br /&gt;
|Attaching right blue laser segment&lt;br /&gt;
|-&lt;br /&gt;
|InternalState12&lt;br /&gt;
|Attaching red output laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState13&lt;br /&gt;
|Attaching green output laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState14&lt;br /&gt;
|Attaching blue output laser&lt;br /&gt;
|-&lt;br /&gt;
|InternalState15&lt;br /&gt;
|Attaching axis reference (the rotation of this instance is applied to the axis around which holocubes are rotated)&lt;br /&gt;
|-&lt;br /&gt;
|InternalState16&lt;br /&gt;
|Attaching top buttons&lt;br /&gt;
|-&lt;br /&gt;
|InternalState17&lt;br /&gt;
|Attaching bottom buttons&lt;br /&gt;
|-&lt;br /&gt;
|InternalState18&lt;br /&gt;
|Puzzle complete&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Messages==&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Header text!!Header text&lt;br /&gt;
|-&lt;br /&gt;
|IntermalMessage00||Rotate top left&lt;br /&gt;
|-&lt;br /&gt;
|InternalMessage01||Rotate top right&lt;br /&gt;
|-&lt;br /&gt;
|InternalMessage02||Rotate bottom left&lt;br /&gt;
|-&lt;br /&gt;
|InternalMessage03||Rotate bottom right&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=MLVL_(File_Format)&amp;diff=2820</id>
		<title>MLVL (File Format)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=MLVL_(File_Format)&amp;diff=2820"/>
		<updated>2023-06-20T19:58:22Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: /* Area Dependencies */ Updates this section with the results of my research into recreating MP2&amp;#039;s dependencies as accurately as possible. I&amp;#039;ve overwritten the previous note about ANCS per-character dependencies - I&amp;#039;m assuming that it works the same way in MP1, but I haven&amp;#039;t confirmed that. I have confirmed the behavior for MP2.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &#039;&#039;&#039;MLVL format&#039;&#039;&#039; defines worlds in the Metroid Prime trilogy and Donkey Kong Country Returns. While the [[MREA (File Format)|MREA format]] defines individual areas, the MLVL is what links together all the areas to create a single cohesive world.&lt;br /&gt;
&lt;br /&gt;
{{research|minor|There&#039;s a couple unknown values in this format, but they all seem to have constant values.}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
The format largely defines properties related to each area in general and how they link together, as well as things that apply to the world on a global scale across all areas, such as the skybox.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
! MP1&lt;br /&gt;
! MP2&lt;br /&gt;
! MP3&lt;br /&gt;
! DKCR&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Magic&#039;&#039;&#039;&lt;br /&gt;
| Always &amp;lt;code&amp;gt;0xDEAFBABE&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Version&#039;&#039;&#039;&lt;br /&gt;
| [[#Version|See below]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID ([[STRG (File Format)|STRG]])&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;World Name ID&#039;&#039;&#039;&lt;br /&gt;
| [[STRG (File Format)|STRG]] file for the world name.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID ([[STRG (File Format)|STRG]])&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Dark World Name ID&#039;&#039;&#039;&lt;br /&gt;
| [[STRG (File Format)|STRG]] file for the Dark World name.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Temple Key World Index&#039;&#039;&#039;&lt;br /&gt;
| Controls which temple key icons appear on the map screen. Appears in Prime 3 but always 0.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| bool&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Has Time Attack&#039;&#039;&#039;&lt;br /&gt;
| Indicates whether this world has a Time Attack mode. &#039;&#039;&#039;If false, the next five values are not present.&#039;&#039;&#039;&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| string&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Level Number&#039;&#039;&#039;&lt;br /&gt;
| String of the world/level number; for example, &amp;quot;1-1&amp;quot;. Purpose unknown.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| float&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Time Attack Bronze Time&#039;&#039;&#039;&lt;br /&gt;
| Target time for a bronze medal in Time Attack.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| float&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Time Attack Silver Time&#039;&#039;&#039;&lt;br /&gt;
| Target time for a silver medal in Time Attack.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| float&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Time Attack Gold Time&#039;&#039;&#039;&lt;br /&gt;
| Target time for a gold medal in Time Attack.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| float&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Time Attack Shiny Gold Time&#039;&#039;&#039;&lt;br /&gt;
| Target time for a shiny gold medal in Time Attack.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID ([[SAVW (File Format)|SAVW]])&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;World Save Info ID&#039;&#039;&#039;&lt;br /&gt;
| Asset ID for this world&#039;s [[SAVW (File Format)|SAVW]] file.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID ([[CMDL (File Format)|CMDL]])&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Default Skybox ID&#039;&#039;&#039;&lt;br /&gt;
| [[CMDL (File Format)|CMDL]] file for this world&#039;s default skybox model. This can be overridden per-area by AreaAttributes objects.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Memory Relay Count&#039;&#039;&#039;&lt;br /&gt;
| Count of all outgoing connections from Memory Relay instances in this world.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| [[#Memory Relay|Memory Relay]]&lt;br /&gt;
| &#039;&#039;Memory Relay Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Memory Relay Array&#039;&#039;&#039;&lt;br /&gt;
| Array describing all outgoing Memory Relay connections in this world. Memory Relays connected to multiple objects are listed multiple times.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area Count&#039;&#039;&#039;&lt;br /&gt;
| Count of areas in this world.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| Always 1?&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| [[#Area|Area]]&lt;br /&gt;
| &#039;&#039;Area Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Area Array&#039;&#039;&#039;&lt;br /&gt;
| Array defining all areas that appear in this world.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID ([[MAPW (File Format)|MAPW]])&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;World Map ID&#039;&#039;&#039;&lt;br /&gt;
| ID of this world&#039;s [[MAPW (File Format)|MAPW]] file.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| u8&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| This is presumably the same unknown value as at the beginning of the [[Scriptable Layers (Metroid Prime)|SCLY]] format. Always 0.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Script Instance Count&#039;&#039;&#039;&lt;br /&gt;
| The MLVL format embeds a script layer. This script layer is used in the MP1 demo for storing Dock instances, but it&#039;s unused in all retail builds, so this is always 0.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Audio Group Count&#039;&#039;&#039;&lt;br /&gt;
| Count of all audio groups used in this world.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| [[#Audio Group|Audio Group]]&lt;br /&gt;
| &#039;&#039;Audio Group Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Audio Group Array&#039;&#039;&#039;&lt;br /&gt;
| Array describing all audio groups used in this world.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| string&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| Always empty, so the only value that ever appears here is the terminating 0.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area Count&#039;&#039;&#039;&lt;br /&gt;
| Will be equal to the earlier area count.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| [[#Area Layer Flags|Area Layer Flags]]&lt;br /&gt;
| &#039;&#039;Area Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Area Layer Flags&#039;&#039;&#039;&lt;br /&gt;
| This array initializes the default active state for all script layers in each area.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Layer Name Count&#039;&#039;&#039;&lt;br /&gt;
| Count of layer names in the next array.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| string&lt;br /&gt;
| &#039;&#039;Layer Name Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Layer Name Array&#039;&#039;&#039;&lt;br /&gt;
| Array of all layer names in the world.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Layer GUID Count&#039;&#039;&#039;&lt;br /&gt;
| Count of layer GUIDs in the next array.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| [[GUID]]&lt;br /&gt;
| &#039;&#039;Layer GUID Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Layer GUID Array&#039;&#039;&#039;&lt;br /&gt;
| Array of GUIDs for each layer. These GUIDs are responsible for storing the layer&#039;s &#039;&#039;Active&#039;&#039; state in the save file and are referenced by ScriptLayerController objects.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area Count&#039;&#039;&#039;&lt;br /&gt;
| Identical to the previous two area counts.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;Area Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Area Layer Name Offset Array&#039;&#039;&#039;&lt;br /&gt;
| Each value is an offset into the layer name array and points to where the layer names for each area begins.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| colspan=8 {{unknown|End of file}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Version ===&lt;br /&gt;
&lt;br /&gt;
These are the known version numbers:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! ID&lt;br /&gt;
! Game&lt;br /&gt;
|-&lt;br /&gt;
| 0xD&lt;br /&gt;
| Metroid Prime Demo&lt;br /&gt;
|-&lt;br /&gt;
| 0x11&lt;br /&gt;
| Metroid Prime&lt;br /&gt;
|-&lt;br /&gt;
| 0x14&lt;br /&gt;
| Metroid Prime 2 Demo&lt;br /&gt;
|-&lt;br /&gt;
| 0x17&lt;br /&gt;
| Metroid Prime 2&lt;br /&gt;
|-&lt;br /&gt;
| 0x19&lt;br /&gt;
| Metroid Prime 3&lt;br /&gt;
|-&lt;br /&gt;
| 0x1B&lt;br /&gt;
| Donkey Kong Country Returns&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Memory Relay ===&lt;br /&gt;
&lt;br /&gt;
This structure only appears in Prime 1. It describes an outgoing connection from a Memory Relay to another script instance. Any Memory Relays connected to multiple objects will appear in the array multiple times.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;&#039;Memory Relay Instance ID&#039;&#039;&#039;&lt;br /&gt;
| Instance ID of the sender Memory Relay.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;&#039;Target Instance ID&#039;&#039;&#039;&lt;br /&gt;
| Instance ID of the receiver object.&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| u16&lt;br /&gt;
| &#039;&#039;&#039;Message&#039;&#039;&#039;&lt;br /&gt;
| Script message sent to the receiver object.&lt;br /&gt;
|-&lt;br /&gt;
| 0xA&lt;br /&gt;
| bool&lt;br /&gt;
| &#039;&#039;&#039;Active&#039;&#039;&#039;&lt;br /&gt;
| Whether this Memory Relay object is active by default; almost always 0.&lt;br /&gt;
|-&lt;br /&gt;
| 0xB&lt;br /&gt;
| colspan=3 {{unknown|End of Memory Relay connection}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Area ===&lt;br /&gt;
&lt;br /&gt;
This structure defines a single area and describes its position in the world and how it connects to other areas.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
! MP1&lt;br /&gt;
! MP2&lt;br /&gt;
! MP3&lt;br /&gt;
! DKCR&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID ([[STRG (File Format)|STRG]])&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area Name ID&#039;&#039;&#039;&lt;br /&gt;
| [[STRG (File Format)|STRG]] ID for the area name.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| float&lt;br /&gt;
| 12&lt;br /&gt;
| &#039;&#039;&#039;Area Transform&#039;&#039;&#039;&lt;br /&gt;
| Area&#039;s transform matrix. Most area data is pre-transformed, but there are a few things that need to be transformed by this matrix.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| float&lt;br /&gt;
| 6&lt;br /&gt;
| &#039;&#039;&#039;Area Bounding Box&#039;&#039;&#039;&lt;br /&gt;
| This is the bounding box of the area&#039;s collision mesh and is equivalent to the bounding box found in the [[MREA (File Format)|MREA]] collision section.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID ([[MREA (File Format)|MREA]])&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area MREA ID&#039;&#039;&#039;&lt;br /&gt;
| ID of this area&#039;s [[MREA (File Format)|MREA]] file.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Internal Area ID&#039;&#039;&#039;&lt;br /&gt;
| Doesn&#039;t actually refer to an asset, but has the same length as an asset ID. This ID is used internally by some things to refer to this area, such as Script Layer Controllers.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Attached Area Count&#039;&#039;&#039;&lt;br /&gt;
| Count of areas attached to this one.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| u16&lt;br /&gt;
| &#039;&#039;Attached Area Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Attached Area Index Array&#039;&#039;&#039;&lt;br /&gt;
| Array of area indices attached to this one.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| [[#Area Dependencies|Area Dependencies]]&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Dependencies&#039;&#039;&#039;&lt;br /&gt;
| Asset dependencies in this area. See below for details. Starting in Prime 3, this section has been moved inside the [[MREA (File Format)|MREA]] file.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Dock Count&#039;&#039;&#039;&lt;br /&gt;
| Count of Dock instances in this area.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| [[#Dock|Dock]]&lt;br /&gt;
| &#039;&#039;Dock Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Dock Array&#039;&#039;&#039;&lt;br /&gt;
| Array describing all docks in this area.&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| [[#Area Module Dependencies|Area Module Dependencies]]&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Module Dependencies&#039;&#039;&#039;&lt;br /&gt;
| REL module dependencies in this area. See below for details. The equivalent section in Prime 3 and DKCR describing RSO modules has been moved inside the [[MREA (File Format)|MREA]] format.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| Always 0?&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| string&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Internal Area Name&#039;&#039;&#039;&lt;br /&gt;
| Internal name of this area. This name will be used ingame on the map screen if no &#039;&#039;Area Name ID&#039;&#039; is specified, prefixed with &amp;quot;!!&amp;quot;.&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|-&lt;br /&gt;
| colspan=8 {{unknown|End of area}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Area Dependencies ====&lt;br /&gt;
&lt;br /&gt;
This is a data chunk appearing in the area definition in Metroid Prime 1 and 2 that lists all assets needed to load the area. It&#039;s extremely important that this list be optimized and complete, as all assets listed here will be perpetually kept in memory as long as the area itself is in memory; the list also specifies the order that assets are loaded in, so &#039;&#039;&#039;it must be grouped by load order to roughly match the [[PAK (File Format)|PAK]] file for optimized load times&#039;&#039;&#039;. Assets that are missing will still be dynamically loaded after the area itself is loaded, but this will cause the game to freeze up until the load is finished. There are a few exceptions that are excluded from this list in the original game files (and should be excluded in custom MLVLs as well to avoid out-of-memory crashes):&lt;br /&gt;
&lt;br /&gt;
* Some [[AGSC (File Format)|AGSC]] files are not included in MP2. The game has specific DGRP files which include the &amp;quot;global&amp;quot; sound effects for that type of world. Any files inside that DGRP are excluded from the list. These are:&lt;br /&gt;
** Single-player worlds: &#039;&#039;AudioGrp/audio_groups_single_player_DGRP.DGRP&#039;&#039;&lt;br /&gt;
** Multiplayer worlds: &#039;&#039;AudioGrp/audio_groups_multi_player_DGRP.DGRP&#039;&#039;&lt;br /&gt;
** Frontend: &#039;&#039;AudioGrp/audio_groups_front_end_DGRP.DGRP&#039;&#039;&lt;br /&gt;
* [[SCAN (File Format)|SCAN]] files and their dependencies are not included in the list in MP1. These are loaded dynamically after the area itself is finished loading, presumably so that scan dependencies are not kept in memory when the scan isn&#039;t actually in use. In MP2, SCANs are actually included in the list but their dependencies aren&#039;t. Make sure to update the dependency list inside the SCAN file if you change them - the game may crash when scanning otherwise.&lt;br /&gt;
* Script instances with an AnimationParameters property only include the dependencies from their [[ANCS (File Format)|ANCS]] which are used by their character index. This includes:&lt;br /&gt;
** Any dependencies in the CharacterSet for that character&lt;br /&gt;
** Any [[ANIM (Metroid Prime)|ANIM]]s (and [[EVNT (File Format)|EVNT]]s, for MP1) used by that character&#039;s animations&lt;br /&gt;
** Any valid [[AGSC (File Format)|AGSC]] dependencies in any animation events used by that character, &#039;&#039;&#039;including&#039;&#039;&#039; events with a character index of -1.&lt;br /&gt;
** Any [[Particle Script|Particle Script]] dependencies in any animation events used by that character, &#039;&#039;&#039;not including&#039;&#039;&#039; events with a character index of -1.&lt;br /&gt;
** Any dependencies of &#039;&#039;&#039;all&#039;&#039;&#039; [[Meta-Transition|Meta-Transition]]s in the ANCS. &#039;&#039;&#039;This includes transitions not used by that character!&#039;&#039;&#039;&lt;br /&gt;
* The skybox model and its dependencies are not included.&lt;br /&gt;
&lt;br /&gt;
The dependency list is split by layer; after the dependencies itself, an array of offsets into the dependency list is provided that allows the game to only load assets for layers that are currently active. The last offset points to all common resources used by the area that aren&#039;t layer-specific. With that in mind, every layer needs to have a full list of its required assets even if they&#039;re also used by other layers. There&#039;s no harm in including an asset multiple times, as if an asset is already in memory then it&#039;ll simply be skipped over.&lt;br /&gt;
&lt;br /&gt;
This data chunk still exists in Prime 3 and DKCR, but it&#039;s been moved inside the [[MREA (File Format)|MREA]] format.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| Always 0?&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Dependency Count&#039;&#039;&#039;&lt;br /&gt;
| Count of dependencies.&lt;br /&gt;
|-&lt;br /&gt;
| [[#Dependency|Dependency]]&lt;br /&gt;
| &#039;&#039;Dependency Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Dependency Array&#039;&#039;&#039;&lt;br /&gt;
| Array of all asset dependencies in this area.&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Dependency Offset Count&#039;&#039;&#039;&lt;br /&gt;
| Count of dependency offsets. This will be equal to the area script layer count + 1.&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;Dependency Offset Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Dependency Offset Array&#039;&#039;&#039;&lt;br /&gt;
| Array of offsets into the dependency array. There is one offset per script layer, with the offset referring to the index of that layer&#039;s first dependency. There is a final extra offset that points to area dependencies that are not layer-specific. These include dependencies of the world geometry, as well as the PATH, PTLA, and EGMC dependencies from their respective sections. Note that the area name STRG is not included (at least in MP2).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Dependency =====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Dependency Asset ID&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| {{FourCC}}&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Dependency Asset Type&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Dock ====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Connecting Dock Count&#039;&#039;&#039;&lt;br /&gt;
| Count of docks connecting to this one. Typically 1 (but there are docks in Prime 3 that connect to multiple areas).&lt;br /&gt;
|-&lt;br /&gt;
| [[#Connecting Dock|Connecting Dock]]&lt;br /&gt;
| &#039;&#039;Connecting Dock Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Connecting Dock Array&#039;&#039;&#039;&lt;br /&gt;
| Array describing all docks connected to this one.&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Dock Coordinate Count&#039;&#039;&#039;&lt;br /&gt;
| Array of dock coordinates in the next array.&lt;br /&gt;
|-&lt;br /&gt;
| Vector3&lt;br /&gt;
| &#039;&#039;Dock Coordinate Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Dock Coordinates&#039;&#039;&#039;&lt;br /&gt;
| Exact purpose/function of this is not known yet.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Connecting Dock =====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;&#039;Area Index&#039;&#039;&#039;&lt;br /&gt;
| Index of the area this dock is in.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u16&lt;br /&gt;
| &#039;&#039;&#039;Dock Index&#039;&#039;&#039;&lt;br /&gt;
| Index of this dock within its area.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6&lt;br /&gt;
| u16&lt;br /&gt;
| &#039;&#039;&#039;Load other&#039;&#039;&#039;&lt;br /&gt;
| TODO&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Area Module Dependencies ====&lt;br /&gt;
&lt;br /&gt;
This is a data chunk appearing in the area definitions that describes all REL modules that must be linked in for this area to run. These are tied to script objects. The list is split per-layer so that only modules being used by the active layer are linked in; modules will appear once in the list for each layer that uses it. After the REL list, there is an array of offsets that points to the starting index in the list for each script layer, similar to the regular area dependencies list. For an unknown reason, the offsets list contains two offsets per layer. The first one refers to the layer&#039;s start index while the second one is usually empty, which effectively makes it an end index.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;REL Module Count&#039;&#039;&#039;&lt;br /&gt;
| Count of REL modules in the next array.&lt;br /&gt;
|-&lt;br /&gt;
| string&lt;br /&gt;
| &#039;&#039;REL Module Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;REL Module Array&#039;&#039;&#039;&lt;br /&gt;
| REL modules used by this area. Each array entry is the filename of a .REL module.&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;REL Offset Count&#039;&#039;&#039;&lt;br /&gt;
| Count of REL offsets in the next array. Should be equal to the area script layer count * 2.&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;REL Offset Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;REL Offset Array&#039;&#039;&#039;&lt;br /&gt;
| Array of offsets into the &#039;&#039;REL Module Array&#039;&#039;. There are two offsets per script layer, with the first one being that layer&#039;s start index and the second one effectively being that layer&#039;s end index.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Audio Group ===&lt;br /&gt;
&lt;br /&gt;
This structure is only present in Prime 1 and describes an [[AGSC (File Format)|AGSC]] file being used in this world.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;&#039;Group ID&#039;&#039;&#039;&lt;br /&gt;
| Group ID for this audio group. This is the same value that can be found in the Project chunk in the referenced [[AGSC (File Format)|AGSC]] file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| Asset ID ([[AGSC (File Format)|AGSC]])&lt;br /&gt;
| &#039;&#039;&#039;AGSC ID&#039;&#039;&#039;&lt;br /&gt;
| The [[AGSC (File Format)|AGSC]] file for this audio group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| colspan=3 {{unknown|End of audio group definition}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Area Layer Flags ===&lt;br /&gt;
&lt;br /&gt;
This is a small structure that determines which areas are active by default. It contains a layer count and then a 64-bit flag, with each bit corresponding to a particular layer; if the bit is set, then the layer will be active on a new save file. The low-order bits correspond to the lower layer indices. Bits for layers that don&#039;t exist are defaulted to on.&lt;br /&gt;
&lt;br /&gt;
Note that due to the size of these flags as well as a few other pieces of data in other formats, the maximum number of layers that can be contained in a single area is 64.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;&#039;Layer Count&#039;&#039;&#039;&lt;br /&gt;
| Count of layers in this area.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u64&lt;br /&gt;
| &#039;&#039;&#039;Layer Flags&#039;&#039;&#039;&lt;br /&gt;
| See above for a description of how these work.&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| colspan=3 {{unknown|End of area layer flags}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:File Formats]]&lt;br /&gt;
[[Category:Metroid Prime]]&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;br /&gt;
[[Category:Metroid Prime 3: Corruption]]&lt;br /&gt;
[[Category:Donkey Kong Country Returns]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=List_of_Script_Objects_(Metroid_Prime)&amp;diff=2819</id>
		<title>List of Script Objects (Metroid Prime)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=List_of_Script_Objects_(Metroid_Prime)&amp;diff=2819"/>
		<updated>2023-06-14T23:11:26Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: add to demo category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of script objects in Metroid Prime and its demo.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== List of script objects ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! ID&lt;br /&gt;
! Name&lt;br /&gt;
! Demo&lt;br /&gt;
! Final&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| [[Actor (Metroid Prime)|Actor]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x1&lt;br /&gt;
| [[Enemy (Metroid Prime)|Enemy]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| 0x2&lt;br /&gt;
| [[Waypoint (Metroid Prime)|Waypoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x3&lt;br /&gt;
| [[DoorArea (Metroid Prime)|DoorArea]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| [[Trigger (Metroid Prime)|Trigger]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x5&lt;br /&gt;
| [[Timer (Metroid Prime)|Timer]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x6&lt;br /&gt;
| [[Counter (Metroid Prime)|Counter]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x7&lt;br /&gt;
| [[Effect (Metroid Prime)|Effect]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| [[Platform (Metroid Prime)|Platform]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x9&lt;br /&gt;
| [[Sound (Metroid Prime)|Sound]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0xA&lt;br /&gt;
| [[Generator (Metroid Prime)|Generator]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0xB&lt;br /&gt;
| [[Dock (Metroid Prime)|Dock]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| [[Camera (Metroid Prime)|Camera]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0xD&lt;br /&gt;
| [[CameraWaypoint (Metroid Prime)|CameraWaypoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0xE&lt;br /&gt;
| [[NewIntroBoss (Metroid Prime)|NewIntroBoss]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Parasite Queen&lt;br /&gt;
|-&lt;br /&gt;
| 0xF&lt;br /&gt;
| [[SpawnPoint (Metroid Prime)|SpawnPoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| [[CameraHint (Metroid Prime)|CameraHint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x11&lt;br /&gt;
| [[Pickup (Metroid Prime)|Pickup]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x12&lt;br /&gt;
| [[JumpPoint (Metroid Prime)|JumpPoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| 0x13&lt;br /&gt;
| [[MemoryRelay (Metroid Prime)|MemoryRelay]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x14&lt;br /&gt;
| [[RandomRelay (Metroid Prime)|RandomRelay]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x15&lt;br /&gt;
| [[Relay (Metroid Prime)|Relay]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x16&lt;br /&gt;
| [[Beetle (Metroid Prime)|Beetle]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Beetle, Plated Beetle&lt;br /&gt;
|-&lt;br /&gt;
| 0x17&lt;br /&gt;
| [[HUDMemo (Metroid Prime)|HUDMemo]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| [[CameraFilterKeyframe (Metroid Prime)|CameraFilterKeyframe]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x19&lt;br /&gt;
| [[CameraBlurKeyframe (Metroid Prime)|CameraBlurKeyframe]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x1A&lt;br /&gt;
| [[DamageableTrigger (Metroid Prime)|DamageableTrigger]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x1B&lt;br /&gt;
| [[Debris (Metroid Prime)|Debris]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x1C&lt;br /&gt;
| [[CameraShaker (Metroid Prime)|CameraShaker]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x1D&lt;br /&gt;
| [[ActorKeyframe (Metroid Prime)|ActorKeyframe]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| [[Water (Metroid Prime)|Water]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x21&lt;br /&gt;
| [[WarWasp (Metroid Prime)|WarWasp]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for War Wasp, Barbed War Wasp, Ram War Wasp&lt;br /&gt;
|-&lt;br /&gt;
| 0x22&lt;br /&gt;
| [[MapStation (Metroid Prime)|MapStation]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| Deprecated. Use a [[SpecialFunction (Metroid Prime)|SpecialFunction]] instead.&lt;br /&gt;
|-&lt;br /&gt;
| 0x24&lt;br /&gt;
| [[SpacePirate (Metroid Prime)|SpacePirate]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Space Pirate, Shadow Pirate, Beam Troopers&lt;br /&gt;
|-&lt;br /&gt;
| 0x25&lt;br /&gt;
| [[FlyingPirate (Metroid Prime)|FlyingPirate]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Flying Pirate, Aqua Pirate&lt;br /&gt;
|-&lt;br /&gt;
| 0x26&lt;br /&gt;
| [[ElitePirate (Metroid Prime)|ElitePirate]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x27&lt;br /&gt;
| [[MetroidBeta (Metroid Prime)|MetroidBeta]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Hunter Metroid&lt;br /&gt;
|-&lt;br /&gt;
| 0x28&lt;br /&gt;
| [[ChozoGhost (Metroid Prime)|ChozoGhost]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x2A&lt;br /&gt;
| [[CoverPoint (Metroid Prime)|CoverPoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x2C&lt;br /&gt;
| [[SpiderBallWaypoint (Metroid Prime)|SpiderBallWaypoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x2D&lt;br /&gt;
| [[BloodFlower (Metroid Prime)|BloodFlower]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x2E&lt;br /&gt;
| [[FlickerBat (Metroid Prime)|FlickerBat]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x2F&lt;br /&gt;
| [[PathCamera (Metroid Prime)|PathCamera]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x30&lt;br /&gt;
| [[GrapplePoint (Metroid Prime)|GrapplePoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x31&lt;br /&gt;
| [[PuddleSpore (Metroid Prime)|PuddleSpore]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x32&lt;br /&gt;
| [[DebugCameraWaypoint (Metroid Prime)|DebugCameraWaypoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| 0x33&lt;br /&gt;
| [[SpiderBallAttractionSurface (Metroid Prime)|SpiderBallAttractionSurface]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x34&lt;br /&gt;
| [[PuddleToadGamma (Metroid Prime)|PuddleToadGamma]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Stone Toad&lt;br /&gt;
|-&lt;br /&gt;
| 0x35&lt;br /&gt;
| [[DistanceFog (Metroid Prime)|DistanceFog]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x36&lt;br /&gt;
| [[FireFlea (Metroid Prime)|FireFlea]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Plazmite&lt;br /&gt;
|-&lt;br /&gt;
| 0x37&lt;br /&gt;
| [[MetareeAlpha (Metroid Prime)|MetareeAlpha]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Shriekbat, Ice Shriekbat&lt;br /&gt;
|-&lt;br /&gt;
| 0x38&lt;br /&gt;
| [[DockAreaChange (Metroid Prime)|DockAreaChange]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| 0x39&lt;br /&gt;
| [[ActorRotate (Metroid Prime)|ActorRotate]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x3A&lt;br /&gt;
| [[SpecialFunction (Metroid Prime)|SpecialFunction]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x3B&lt;br /&gt;
| [[SpankWeed (Metroid Prime)|SpankWeed]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Reaper Vine, Aqua Vine&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C&lt;br /&gt;
| [[Sova (Metroid Prime)|Sova]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| 0x3D&lt;br /&gt;
| [[Parasite (Metroid Prime)|Parasite]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Parasite, Plated Parasite, Ice Parasite, Zoomer, Grizby, Crystallite&lt;br /&gt;
|-&lt;br /&gt;
| 0x3E&lt;br /&gt;
| [[PlayerHint (Metroid Prime)|PlayerHint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x3F&lt;br /&gt;
| [[Ripper (Metroid Prime)|Ripper]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Glider&lt;br /&gt;
|-&lt;br /&gt;
| 0x40&lt;br /&gt;
| [[PickupGenerator (Metroid Prime)|PickupGenerator]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x41&lt;br /&gt;
| [[AIKeyframe (Metroid Prime)|AIKeyframe]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| 0x42&lt;br /&gt;
| [[PointOfInterest (Metroid Prime)|PointOfInterest]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x43&lt;br /&gt;
| [[Drone (Metroid Prime)|Drone]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x44&lt;br /&gt;
| [[MetroidAlpha (Metroid Prime)|MetroidAlpha]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Metroid, Fission Metroid&lt;br /&gt;
|-&lt;br /&gt;
| 0x45&lt;br /&gt;
| [[DebrisExtended (Metroid Prime)|DebrisExtended]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x46&lt;br /&gt;
| [[Steam (Metroid Prime)|Steam]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x47&lt;br /&gt;
| [[Ripple (Metroid Prime)|Ripple]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x48&lt;br /&gt;
| [[BallTrigger (Metroid Prime)|BallTrigger]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x49&lt;br /&gt;
| [[TargetingPoint (Metroid Prime)|TargetingPoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x4A&lt;br /&gt;
| [[ElectroMagneticPulse (Metroid Prime)|ElectroMagneticPulse]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x4B&lt;br /&gt;
| [[IceSheegoth (Metroid Prime)|IceSheegoth]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x4C&lt;br /&gt;
| [[PlayerActor (Metroid Prime)|PlayerActor]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x4D&lt;br /&gt;
| [[Flaahgra (Metroid Prime)|Flaahgra]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x4E&lt;br /&gt;
| [[AreaAttributes (Metroid Prime)|AreaAttributes]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x4F&lt;br /&gt;
| [[FishCloud (Metroid Prime)|FishCloud]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x50&lt;br /&gt;
| [[FishCloudModifier (Metroid Prime)|FishCloudModifier]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x51&lt;br /&gt;
| [[VisorFlare (Metroid Prime)|VisorFlare]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x52&lt;br /&gt;
| [[WorldTeleporter (Metroid Prime)|WorldTeleporter]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Redundant unused slot; 0x62 is the one that the game uses (both are identical)&lt;br /&gt;
|-&lt;br /&gt;
| 0x53&lt;br /&gt;
| [[VisorGoo (Metroid Prime)|VisorGoo]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x54&lt;br /&gt;
| [[JellyZap (Metroid Prime)|JellyZap]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Jelzap&lt;br /&gt;
|-&lt;br /&gt;
| 0x55&lt;br /&gt;
| [[ControllerAction (Metroid Prime)|ControllerAction]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x56&lt;br /&gt;
| [[Switch (Metroid Prime)|Switch]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x57&lt;br /&gt;
| [[PlayerStateChange (Metroid Prime)|PlayerStateChange]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x58&lt;br /&gt;
| [[Thardus (Metroid Prime)|Thardus]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x59&lt;br /&gt;
| [[SaveStation (Metroid Prime)|SaveStation]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| Deprecated. Use a [[SpecialFunction (Metroid Prime)|SpecialFunction]] instead.&lt;br /&gt;
|-&lt;br /&gt;
| 0x5A&lt;br /&gt;
| [[WallCrawlerSwarm (Metroid Prime)|WallCrawlerSwarm]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Parasite, Scarab, Tallon Crab&lt;br /&gt;
|-&lt;br /&gt;
| 0x5B&lt;br /&gt;
| [[AIJumpPoint (Metroid Prime)|AIJumpPoint]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x5C&lt;br /&gt;
| [[FlaahgraTentacle (Metroid Prime)|FlaahgraTentacle]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x5D&lt;br /&gt;
| [[RoomAcoustics (Metroid Prime)|RoomAcoustics]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x5E&lt;br /&gt;
| [[ColorModulate (Metroid Prime)|ColorModulate]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x5F&lt;br /&gt;
| [[ThardusRockProjectile (Metroid Prime)|ThardusRockProjectile]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x60&lt;br /&gt;
| [[Midi (Metroid Prime)|Midi]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x61&lt;br /&gt;
| [[StreamedAudio (Metroid Prime)|StreamedAudio]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x62&lt;br /&gt;
| [[WorldTeleporter (Metroid Prime)|WorldTeleporter]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x63&lt;br /&gt;
| [[Repulsor (Metroid Prime)|Repulsor]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x64&lt;br /&gt;
| [[GunTurret (Metroid Prime)|GunTurret]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| 0x65&lt;br /&gt;
| [[FogVolume (Metroid Prime)|FogVolume]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| 0x66&lt;br /&gt;
| [[Babygoth (Metroid Prime)|Babygoth]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x67&lt;br /&gt;
| [[Eyeball (Metroid Prime)|Eyeball]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Eyon&lt;br /&gt;
|-&lt;br /&gt;
| 0x68&lt;br /&gt;
| [[RadialDamage (Metroid Prime)|RadialDamage]]&lt;br /&gt;
| {{check}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x69&lt;br /&gt;
| [[CameraPitchVolume (Metroid Prime)|CameraPitchVolume]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x6A&lt;br /&gt;
| [[EnvFxDensityController (Metroid Prime)|EnvFxDensityController]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x6B&lt;br /&gt;
| [[Magdolite (Metroid Prime)|Magdolite]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Magmoor&lt;br /&gt;
|-&lt;br /&gt;
| 0x6C&lt;br /&gt;
| [[TeamAIMgr (Metroid Prime)|TeamAIMgr]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x6D&lt;br /&gt;
| [[SnakeWeedSwarm (Metroid Prime)|SnakeWeedSwarm]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Tangle Weed, Venom Weed&lt;br /&gt;
|-&lt;br /&gt;
| 0x6E&lt;br /&gt;
| [[ActorContraption (Metroid Prime)|ActorContraption]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Incinerator Drone&lt;br /&gt;
|-&lt;br /&gt;
| 0x6F&lt;br /&gt;
| [[Oculus (Metroid Prime)|Oculus]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x70&lt;br /&gt;
| [[Geemer (Metroid Prime)|Geemer]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x71&lt;br /&gt;
| [[SpindleCamera (Metroid Prime)|SpindleCamera]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x72&lt;br /&gt;
| [[AtomicAlpha (Metroid Prime)|AtomicAlpha]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Pulse Bombu&lt;br /&gt;
|-&lt;br /&gt;
| 0x73&lt;br /&gt;
| [[CameraHintTrigger (Metroid Prime)|CameraHintTrigger]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x74&lt;br /&gt;
| [[RumbleEffect (Metroid Prime)|RumbleEffect]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x75&lt;br /&gt;
| [[AmbientAI (Metroid Prime)|AmbientAI]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Blastcaps and other ambient creatures&lt;br /&gt;
|-&lt;br /&gt;
| 0x77&lt;br /&gt;
| [[AtomicBeta (Metroid Prime)|AtomicBeta]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Scatter Bombu&lt;br /&gt;
|-&lt;br /&gt;
| 0x78&lt;br /&gt;
| [[IceZoomer (Metroid Prime)|IceZoomer]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| 0x79&lt;br /&gt;
| [[Puffer (Metroid Prime)|Puffer]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x7A&lt;br /&gt;
| [[Tryclops (Metroid Prime)|Tryclops]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x7B&lt;br /&gt;
| [[Ridley (Metroid Prime)|Ridley]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x7C&lt;br /&gt;
| [[Seedling (Metroid Prime)|Seedling]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x7D&lt;br /&gt;
| [[ThermalHeatFader (Metroid Prime)|ThermalHeatFader]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x7F&lt;br /&gt;
| [[Burrower (Metroid Prime)|Burrower]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x81&lt;br /&gt;
| [[ScriptBeam (Metroid Prime)|ScriptBeam]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x82&lt;br /&gt;
| [[WorldLightFader (Metroid Prime)|WorldLightFader]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x83&lt;br /&gt;
| [[MetroidPrimeStage2 (Metroid Prime)|MetroidPrimeStage2]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x84&lt;br /&gt;
| [[MetroidPrimeRelay (Metroid Prime)|MetroidPrimeRelay]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| Used for Metroid Prime stage 1&lt;br /&gt;
|-&lt;br /&gt;
| 0x85&lt;br /&gt;
| [[MazeNode (Metroid Prime)|MazeNode]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x86&lt;br /&gt;
| [[OmegaPirate (Metroid Prime)|OmegaPirate]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x87&lt;br /&gt;
| [[PhazonPool (Metroid Prime)|PhazonPool]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x88&lt;br /&gt;
| [[PhazonHealingNodule (Metroid Prime)|PhazonHealingNodule]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x89&lt;br /&gt;
| [[NewCameraShaker (Metroid Prime)|NewCameraShaker]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x8A&lt;br /&gt;
| [[ShadowProjector (Metroid Prime)|ShadowProjector]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x8B&lt;br /&gt;
| [[EnergyBall (Metroid Prime)|EnergyBall]]&lt;br /&gt;
| {{nocheck}}&lt;br /&gt;
| {{check}}&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== List of states ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! ID&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| Active&lt;br /&gt;
|-&lt;br /&gt;
| 0x1&lt;br /&gt;
| Arrived&lt;br /&gt;
|-&lt;br /&gt;
| 0x2&lt;br /&gt;
| Closed&lt;br /&gt;
|-&lt;br /&gt;
| 0x3&lt;br /&gt;
| Entered&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| Exited&lt;br /&gt;
|-&lt;br /&gt;
| 0x5&lt;br /&gt;
| Inactive&lt;br /&gt;
|-&lt;br /&gt;
| 0x6&lt;br /&gt;
| Inside&lt;br /&gt;
|-&lt;br /&gt;
| 0x7&lt;br /&gt;
| MaxReached&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| Open&lt;br /&gt;
|-&lt;br /&gt;
| 0x9&lt;br /&gt;
| Zero&lt;br /&gt;
|-&lt;br /&gt;
| 0xA&lt;br /&gt;
| Attack&lt;br /&gt;
|-&lt;br /&gt;
| 0xB&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| Retreat&lt;br /&gt;
|-&lt;br /&gt;
| 0xD&lt;br /&gt;
| Patrol&lt;br /&gt;
|-&lt;br /&gt;
| 0xE&lt;br /&gt;
| Dead&lt;br /&gt;
|-&lt;br /&gt;
| 0xF&lt;br /&gt;
| CameraPath&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| CameraTarget&lt;br /&gt;
|-&lt;br /&gt;
| 0x11&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x12&lt;br /&gt;
| Play&lt;br /&gt;
|-&lt;br /&gt;
| 0x13&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x14&lt;br /&gt;
| DeathRattle&lt;br /&gt;
|-&lt;br /&gt;
| 0x15&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x16&lt;br /&gt;
| Damage&lt;br /&gt;
|-&lt;br /&gt;
| 0x17&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x19&lt;br /&gt;
| Modify&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C&lt;br /&gt;
| ScanDone&lt;br /&gt;
|-&lt;br /&gt;
| 0x1E&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x1F&lt;br /&gt;
| ReflectedDamage&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| InheritBounds&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== List of messages ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! ID&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x1&lt;br /&gt;
| Activate&lt;br /&gt;
|-&lt;br /&gt;
| 0x2&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x3&lt;br /&gt;
| Close&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| Deactivate&lt;br /&gt;
|-&lt;br /&gt;
| 0x5&lt;br /&gt;
| Decrement&lt;br /&gt;
|-&lt;br /&gt;
| 0x6&lt;br /&gt;
| Follow&lt;br /&gt;
|-&lt;br /&gt;
| 0x7&lt;br /&gt;
| Increment&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| Next&lt;br /&gt;
|-&lt;br /&gt;
| 0x9&lt;br /&gt;
| Open&lt;br /&gt;
|-&lt;br /&gt;
| 0xA&lt;br /&gt;
| Reset&lt;br /&gt;
|-&lt;br /&gt;
| 0xB&lt;br /&gt;
| ResetAndStart&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| SetToMax&lt;br /&gt;
|-&lt;br /&gt;
| 0xD&lt;br /&gt;
| SetToZero&lt;br /&gt;
|-&lt;br /&gt;
| 0xE&lt;br /&gt;
| Start&lt;br /&gt;
|-&lt;br /&gt;
| 0xF&lt;br /&gt;
| Stop&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| StopAndReset&lt;br /&gt;
|-&lt;br /&gt;
| 0x11&lt;br /&gt;
| ToggleActive&lt;br /&gt;
|-&lt;br /&gt;
| 0x12&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x13&lt;br /&gt;
| Action&lt;br /&gt;
|-&lt;br /&gt;
| 0x14&lt;br /&gt;
| Play&lt;br /&gt;
|-&lt;br /&gt;
| 0x15&lt;br /&gt;
| Alert&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Metroid Prime]]&lt;br /&gt;
[[Category:Metroid Prime Demo]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=List_of_Script_Objects_(Metroid_Prime_2)&amp;diff=2818</id>
		<title>List of Script Objects (Metroid Prime 2)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=List_of_Script_Objects_(Metroid_Prime_2)&amp;diff=2818"/>
		<updated>2023-06-14T23:10:43Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: add to echoes category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is a list of script objects in Metroid Prime 2: Echoes.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== List of script objects ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! ID&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ACTR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Actor (Metroid Prime 2)|Actor]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ACKF&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ActorKeyframe (Metroid Prime 2)|ActorKeyframe]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AROT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ActorRotate (Metroid Prime 2)|ActorRotate]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ACNT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AdvancedCounter (Metroid Prime 2)|AdvancedCounter]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ADMG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AreaDamage (Metroid Prime 2)|AreaDamage]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AIHT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AIHint (Metroid Prime 2)|AIHint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AJMP&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AIJumpPoint (Metroid Prime 2)|AIJumpPoint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AIKF&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AIKeyframe (Metroid Prime 2)|AIKeyframe]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AIMT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AIMannedTurret (Metroid Prime 2)|AIMannedTurret]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AIWP&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AIWaypoint (Metroid Prime 2)|AIWaypoint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AMIA&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AmbientAI (Metroid Prime 2)|AmbientAI]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;REAA&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AreaAttributes (Metroid Prime 2)|AreaAttributes]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ATMA&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AtomicAlpha (Metroid Prime 2)|AtomicAlpha]]&lt;br /&gt;
| Used for Harmony Class Drone&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ATMB&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[AtomicBeta (Metroid Prime 2)|AtomicBeta]]&lt;br /&gt;
| Used for Diligence Class Drone&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;BSWM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[BacteriaSwarm (Metroid Prime 2)|BacteriaSwarm]]&lt;br /&gt;
| Used for Ingstorm&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;BALT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[BallTrigger (Metroid Prime 2)|BallTrigger]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;BLOG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Blogg (Metroid Prime 2)|Blogg]]&lt;br /&gt;
| Used for Blogg, Alpha Blogg&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;BRZG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Brizgee (Metroid Prime 2)|Brizgee]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CAMR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Camera (Metroid Prime 2)|Camera]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;BLUR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[CameraBlurKeyframe (Metroid Prime 2)|CameraBlurKeyframe]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FILT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[CameraFilterKeyframe (Metroid Prime 2)|CameraFilterKeyframe]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CAMH&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[CameraHint (Metroid Prime 2)|CameraHint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CAMP&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[CameraPitch (Metroid Prime 2)|CameraPitch]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CAMS&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[CameraShaker (Metroid Prime 2)|CameraShaker]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CAMW&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[CameraWaypoint (Metroid Prime 2)|CameraWaypoint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CANB&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[CannonBall (Metroid Prime 2)|CannonBall]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CHOG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ChozoGhost (Metroid Prime 2)|ChozoGhost]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;COIN&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Coin (Metroid Prime 2)|Coin]]&lt;br /&gt;
| Unused; use a [[Pickup (Metroid Prime 2)|Pickup]] instead&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CLRM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ColorModulate (Metroid Prime 2)|ColorModulate]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CMDO&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[CommandoPirate (Metroid Prime 2)|CommandoPirate]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CRLY&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ConditionalRelay (Metroid Prime 2)|ConditionalRelay]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CTLH&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ControlHint (Metroid Prime 2)|ControlHint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CNTA&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ControllerAction (Metroid Prime 2)|ControllerAction]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CNTR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Counter (Metroid Prime 2)|Counter]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;COVR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[CoverPoint (Metroid Prime 2)|CoverPoint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CRLT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Crystallite (Metroid Prime 2)|Crystallite]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DTRG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DamageableTrigger (Metroid Prime 2)|DamageableTrigger]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DTRO&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DamageableTriggerOrientated (Metroid Prime 2)|DamageableTriggerOrientated]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DMGA&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DamageActor (Metroid Prime 2)|DamageActor]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DRKC&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DarkCommando (Metroid Prime 2)|DarkCommando]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DRKS&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DarkSamus (Metroid Prime 2)|DarkSamus]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DSBS&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DarkSamusBattleStage (Metroid Prime 2)|DarkSamusBattleStage]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DKTR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DarkTrooper (Metroid Prime 2)|DarkTrooper]]&lt;br /&gt;
| Used for Dark Trooper, Dark Missile Trooper&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DBR1&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Debris (Metroid Prime 2)|Debris]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DBR2&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DebrisExtended (Metroid Prime 2)|DebrisExtended]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DBAR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DestructibleBarrier (Metroid Prime 2)|DestructibleBarrier]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DGRD&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DigitalGuardian (Metroid Prime 2)|DigitalGuardian]]&lt;br /&gt;
| Used for Quadraxis&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DGHD&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DigitalGuardianHead (Metroid Prime 2)|DigitalGuardianHead]]&lt;br /&gt;
| Used for Quadraxis&#039;s head&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DFOG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DistanceFog (Metroid Prime 2)|DistanceFog]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DOCK&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Dock (Metroid Prime 2)|Dock]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DOOR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Door (Metroid Prime 2)|Door]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EFCT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Effect (Metroid Prime 2)|Effect]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EPRT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ElitePirate (Metroid Prime 2)|ElitePirate]]&lt;br /&gt;
| Used for Ingsmasher&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EMS1&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[EmperorIngStage1 (Metroid Prime 2)|EmperorIngStage1]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EM2T&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[EmperorIngStage2Tentacle (Metroid Prime 2)|EmperorIngStage2Tentacle]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EMS3&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[EmperorIngStage3 (Metroid Prime 2)|EmperorIngStage3]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EMPU&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[EMPulse (Metroid Prime 2)|EMPulse]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FXDC&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[EnvFxDensityController (Metroid Prime 2)|EnvFxDensityController]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EYEB&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[EyeBall (Metroid Prime 2)|EyeBall]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FISH&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[FishCloud (Metroid Prime 2)|FishCloud]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FSHM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[FishCloudModifier (Metroid Prime 2)|FishCloudModifier]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FSWM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[FlyerSwarm (Metroid Prime 2)|FlyerSwarm]]&lt;br /&gt;
| Used for Sandbat, Nightbarb, Hydling, Chykling, Airthorn&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FPRT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[FlyingPirate (Metroid Prime 2)|FlyingPirate]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FOGO&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[FogOverlay (Metroid Prime 2)|FogOverlay]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FOGV&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[FogVolume (Metroid Prime 2)|FogVolume]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FGTO&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ForgottenObject (Metroid Prime 2)|ForgottenObject]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FNWK&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[FrontEndDataNetwork (Metroid Prime 2)|FrontEndDataNetwork]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GENR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Generator (Metroid Prime 2)|Generator]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GBUG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Glowbug (Metroid Prime 2)|Glowbug]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GRAP&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[GrapplePoint (Metroid Prime 2)|GrapplePoint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GRCH&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Grenchler (Metroid Prime 2)|Grenchler]]&lt;br /&gt;
| Used for Grenchler, Grapple Guardian&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GMNU&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[GuiMenu (Metroid Prime 2)|GuiMenu]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GPJN&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[GuiPlayerJoinManager (Metroid Prime 2)|GuiPlayerJoinManager]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GSCR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[GuiScreen (Metroid Prime 2)|GuiScreen]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GSLD&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[GuiSlider (Metroid Prime 2)|GuiSlider]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GWIG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[GuiWidget (Metroid Prime 2)|GuiWidget]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GNTB&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[GunTurretBase (Metroid Prime 2)|GunTurretBase]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GNTT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[GunTurretTop (Metroid Prime 2)|GunTurretTop]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;HHNT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[HUDHint (Metroid Prime 2)|HUDHint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MEMO&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[HUDMemo (Metroid Prime 2)|HUDMemo]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;INGS&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Ing (Metroid Prime 2)|Ing]]&lt;br /&gt;
| Used for Warrior Ing&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IBSM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[IngBlogSwarm (Metroid Prime 2)|IngBlogSwarm]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IBBG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[IngBoostBallGuardian (Metroid Prime 2)|IngBoostBallGuardian]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IPUD&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[IngPuddle (Metroid Prime 2)|IngPuddle]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ISSW&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[IngSnatchingSwarm (Metroid Prime 2)|IngSnatchingSwarm]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ISJG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[IngSpaceJumpGuardian (Metroid Prime 2)|IngSpaceJumpGuardian]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ISBG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[IngSpiderballGuardian (Metroid Prime 2)|IngSpiderballGuardian]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;KRAL&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Kralee (Metroid Prime 2)|Kralee]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;KROC&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Krocuss (Metroid Prime 2)|Krocuss]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DLHT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[DynamicLight (Metroid Prime 2)|DynamicLight]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;LUMI&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Lumite (Metroid Prime 2)|Lumite]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MING&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[MediumIng (Metroid Prime 2)|MediumIng]]&lt;br /&gt;
| Used for Hunter Ing&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MRLY&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[MemoryRelay (Metroid Prime 2)|MemoryRelay]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MREE&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Metaree (Metroid Prime 2)|Metaree]]&lt;br /&gt;
| Used for Shriekbat&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MSWM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[MetareeSwarm (Metroid Prime 2)|MetareeSwarm]]&lt;br /&gt;
| Used for Serenity Class Drone&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MTDA&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[MetroidAlpha (Metroid Prime 2)|MetroidAlpha]]&lt;br /&gt;
| Used for Tallon Metroid&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MIDI&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Midi (Metroid Prime 2)|Midi]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MNNG&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[MinorIng (Metroid Prime 2)|MinorIng]]&lt;br /&gt;
| Used for Inglet&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MYSF&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[MysteryFlyer (Metroid Prime 2)|MysteryFlyer]]&lt;br /&gt;
| Used for War Wasp&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;OCTS&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[OctapedeSegment (Metroid Prime 2)|OctapedeSegment]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PARA&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Parasite (Metroid Prime 2)|Parasite]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PCAM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PathCamera (Metroid Prime 2)|PathCamera]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PMCT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PathMeshCtrl (Metroid Prime 2)|PathMeshCtrl]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PCKP&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Pickup (Metroid Prime 2)|Pickup]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PKGN&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PickupGenerator (Metroid Prime 2)|PickupGenerator]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PILB&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Pillbug (Metroid Prime 2)|Pillbug]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PLAT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Platform (Metroid Prime 2)|Platform]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PSSM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PlantScarabSwarm (Metroid Prime 2)|PlantScarabSwarm]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PLAC&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PlayerActor (Metroid Prime 2)|PlayerActor]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PLCT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PlayerController (Metroid Prime 2)|PlayerController]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;HINT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PlayerHint (Metroid Prime 2)|PlayerHint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PSCH&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PlayerStateChange (Metroid Prime 2)|PlayerStateChange]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PLRT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PlayerTurret (Metroid Prime 2)|PlayerTurret]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;POIN&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PointOfInterest (Metroid Prime 2)|PointOfInterest]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PRTT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PortalTransition (Metroid Prime 2)|PortalTransition]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPOR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[PuddleSpore (Metroid Prime 2)|PuddleSpore]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PUFR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Puffer (Metroid Prime 2)|Puffer]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RADD&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[RadialDamage (Metroid Prime 2)|RadialDamage]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RRLY&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[RandomRelay (Metroid Prime 2)|RandomRelay]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;REPL&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Repulsor (Metroid Prime 2)|Repulsor]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;REZB&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Rezbit (Metroid Prime 2)|Rezbit]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RPTL&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[RiftPortal (Metroid Prime 2)|RiftPortal]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RIPR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Ripper (Metroid Prime 2)|Ripper]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RIPL&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Ripple (Metroid Prime 2)|Ripple]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RMAC&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[RoomAcoustics (Metroid Prime 2)|RoomAcoustics]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RSFA&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[RsfAudio (Metroid Prime 2)|RsfAudio]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RBPZ&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[RubiksPuzzle (Metroid Prime 2)|RubiksPuzzle]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RUMB&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[RumbleEffect (Metroid Prime 2)|RumbleEffect]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SAFE&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SafeZone (Metroid Prime 2)|SafeZone]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SFZC&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SafeZoneCrystal (Metroid Prime 2)|SafeZoneCrystal]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SNDB&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SandBoss (Metroid Prime 2)|SandBoss]]&lt;br /&gt;
| Used for Amorbis&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;WORM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Sandworm (Metroid Prime 2)|Sandworm]]&lt;br /&gt;
| Used for Sandigger, Bomb Guardian&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SLCT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ScriptLayerController (Metroid Prime 2)|ScriptLayerController]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SRLY&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Relay (Metroid Prime 2)|Relay]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SQTR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SequenceTimer (Metroid Prime 2)|SequenceTimer]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SHDW&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[ShadowProjector (Metroid Prime 2)|ShadowProjector]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SHRD&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Shredder (Metroid Prime 2)|Shredder]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SHRK&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Shrieker (Metroid Prime 2)|Shrieker]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SILH&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Silhouette (Metroid Prime 2)|Silhouette]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SKRP&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SkyRipple (Metroid Prime 2)|SkyRipple]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SNAK&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SnakeWeedSwarm (Metroid Prime 2)|SnakeWeedSwarm]]&lt;br /&gt;
| Used for Venom Weed&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SOND&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Sound (Metroid Prime 2)|Sound]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SNDM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SoundModifier (Metroid Prime 2)|SoundModifier]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PIRT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SpacePirate (Metroid Prime 2)|SpacePirate]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPNK&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SpankWeed (Metroid Prime 2)|SpankWeed]]&lt;br /&gt;
| Unused&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPWN&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SpawnPoint (Metroid Prime 2)|SpawnPoint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPFN&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SpecialFunction (Metroid Prime 2)|SpecialFunction]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;BALS&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SpiderBallAttractionSurface (Metroid Prime 2)|SpiderBallAttractionSurface]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;BALW&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SpiderBallWaypoint (Metroid Prime 2)|SpiderBallWaypoint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPND&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SpindleCamera (Metroid Prime 2)|SpindleCamera]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPIN&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Spinner (Metroid Prime 2)|Spinner]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPTR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Splinter (Metroid Prime 2)|Splinter]]&lt;br /&gt;
| Used for Splinter, Alpha Splinter&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPLU&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SplitterCommandModule (Metroid Prime 2)|SplitterCommandModule]]&lt;br /&gt;
| Used for Quad MB&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPLL&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SplitterMainChassis (Metroid Prime 2)|SplitterMainChassis]]&lt;br /&gt;
| Used for Quad CM&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPBB&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SporbBase (Metroid Prime 2)|SporbBase]]&lt;br /&gt;
| Used for Sporb, Power Bomb Guardian&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPBN&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SporbNeedle (Metroid Prime 2)|SporbNeedle]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPBT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SporbTop (Metroid Prime 2)|SporbTop]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SPBP&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SporbProjectile (Metroid Prime 2)|SporbProjectile]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;STEM&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Steam (Metroid Prime 2)|Steam]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;STOD&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[StoneToad (Metroid Prime 2)|StoneToad]]&lt;br /&gt;
| Used for Watchdrone&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;STAU&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[StreamedAudio (Metroid Prime 2)|StreamedAudio]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MOVI&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[StreamedMovie (Metroid Prime 2)|StreamedMovie]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SUBT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Subtitle (Metroid Prime 2)|Subtitle]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SURC&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SurfaceCamera (Metroid Prime 2)|SurfaceCamera]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SWTC&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Switch (Metroid Prime 2)|Switch]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SBS1&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SwampBossStage1 (Metroid Prime 2)|SwampBossStage1]]&lt;br /&gt;
| Used for Chykka Larva&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SBS2&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[SwampBossStage2 (Metroid Prime 2)|SwampBossStage2]]&lt;br /&gt;
| Used for Chykka&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TGPT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[TargetingPoint (Metroid Prime 2)|TargetingPoint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TMAI&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[TeamAI (Metroid Prime 2)|TeamAI]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TXPN&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[TextPane (Metroid Prime 2)|TextPane]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TKEY&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[TimeKeyframe (Metroid Prime 2)|TimeKeyframe]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TIMR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Timer (Metroid Prime 2)|Timer]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TRGR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Trigger (Metroid Prime 2)|Trigger]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TRGE&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[TriggerEllipsoid (Metroid Prime 2)|TriggerEllipsoid]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TRGO&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[TriggerOrientated (Metroid Prime 2)|TriggerOrientated]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TRYC&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Tryclops (Metroid Prime 2)|Tryclops]]&lt;br /&gt;
| Used for Mechlops&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FLAR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[VisorFlare (Metroid Prime 2)|VisorFlare]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VGOO&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[VisorGoo (Metroid Prime 2)|VisorGoo]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;WATR&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Water (Metroid Prime 2)|Water]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;WLWK&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[WallWalker (Metroid Prime 2)|WallWalker]]&lt;br /&gt;
| Used for Mekenobite&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;WAYP&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Waypoint (Metroid Prime 2)|Waypoint]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;WISP&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[WispTentacle (Metroid Prime 2)|WispTentacle]]&lt;br /&gt;
| Used for DarklingTentacle&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;WLIT&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[WorldLightFader (Metroid Prime 2)|WorldLightFader]]&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TEL1&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[WorldTeleporter (Metroid Prime 2)|WorldTeleporter]]&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== List of states ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! ID&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;!ZER&amp;lt;/code&amp;gt;&lt;br /&gt;
| NonZero&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ACTV&amp;lt;/code&amp;gt;&lt;br /&gt;
| Active&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AIS1&amp;lt;/code&amp;gt;&lt;br /&gt;
| AILogicState1&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AIS2&amp;lt;/code&amp;gt;&lt;br /&gt;
| AILogicState2&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;AIS3&amp;lt;/code&amp;gt;&lt;br /&gt;
| AILogicState3&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;APRC&amp;lt;/code&amp;gt;&lt;br /&gt;
| Approach&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ARRV&amp;lt;/code&amp;gt;&lt;br /&gt;
| Arrived&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ATCL&amp;lt;/code&amp;gt;&lt;br /&gt;
| AttachedCollisionObject&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ATOB&amp;lt;/code&amp;gt;&lt;br /&gt;
| AttachedAnimatedObject&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ATTK&amp;lt;/code&amp;gt;&lt;br /&gt;
| Attack&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;BIDG&amp;lt;/code&amp;gt;&lt;br /&gt;
| BallIceXDamage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;BXDG&amp;lt;/code&amp;gt;&lt;br /&gt;
| BallXDamage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CLOS&amp;lt;/code&amp;gt;&lt;br /&gt;
| Closed&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CONN&amp;lt;/code&amp;gt;&lt;br /&gt;
| Connect&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CPLR&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CPTH&amp;lt;/code&amp;gt;&lt;br /&gt;
| CameraPath&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CTGT&amp;lt;/code&amp;gt;&lt;br /&gt;
| CameraTarget&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CTIM&amp;lt;/code&amp;gt;&lt;br /&gt;
| CameraTime&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DAMG&amp;lt;/code&amp;gt;&lt;br /&gt;
| Damage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DANN&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DBAI&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DBAL&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DBMB&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DCAN&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DDRK&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DEAD&amp;lt;/code&amp;gt;&lt;br /&gt;
| Dead&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DFST&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DGNR&amp;lt;/code&amp;gt;&lt;br /&gt;
| DeGenerate&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DLGT&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DMIS&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DPBM&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DPHZ&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DPWR&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DRKX&amp;lt;/code&amp;gt;&lt;br /&gt;
| DarkXDamage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DSCW&amp;lt;/code&amp;gt;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ENTR&amp;lt;/code&amp;gt;&lt;br /&gt;
| Entered&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;EXIT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Exited&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FOOT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Footstep&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FREZ&amp;lt;/code&amp;gt;&lt;br /&gt;
| Freeze&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;GRNT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Generate&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IBND&amp;lt;/code&amp;gt;&lt;br /&gt;
| InheritBounds&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ICTV&amp;lt;/code&amp;gt;&lt;br /&gt;
| Inactive&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IDMG&amp;lt;/code&amp;gt;&lt;br /&gt;
| IceXDamage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;INSD&amp;lt;/code&amp;gt;&lt;br /&gt;
| Inside&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS00&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState00&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS01&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState01&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS02&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState02&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS03&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState03&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS04&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState04&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS05&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState05&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS06&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState06&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS07&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState07&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS08&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState08&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS09&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState09&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS10&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState10&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS11&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState11&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS12&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState12&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS13&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS14&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState14&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS15&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState15&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS16&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState16&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS17&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState17&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS18&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState18&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IS19&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalState19&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;LEFT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Left&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MAXR&amp;lt;/code&amp;gt;&lt;br /&gt;
| MaxReached&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;MDFY&amp;lt;/code&amp;gt;&lt;br /&gt;
| Modify&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;OPEN&amp;lt;/code&amp;gt;&lt;br /&gt;
| Open&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PLAY&amp;lt;/code&amp;gt;&lt;br /&gt;
| Play&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PRSA&amp;lt;/code&amp;gt;&lt;br /&gt;
| PressA&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PRSB&amp;lt;/code&amp;gt;&lt;br /&gt;
| PressB&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PRST&amp;lt;/code&amp;gt;&lt;br /&gt;
| PressStart&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PRSX&amp;lt;/code&amp;gt;&lt;br /&gt;
| PressX&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PRSY&amp;lt;/code&amp;gt;&lt;br /&gt;
| PressY&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PRSZ&amp;lt;/code&amp;gt;&lt;br /&gt;
| PressZ&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PTRL&amp;lt;/code&amp;gt;&lt;br /&gt;
| Patrol&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RATL&amp;lt;/code&amp;gt;&lt;br /&gt;
| DeathRattle&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RDUE&amp;lt;/code&amp;gt;&lt;br /&gt;
| SpawnResidue&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;REFD&amp;lt;/code&amp;gt;&lt;br /&gt;
| ReflectedDamage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RESD&amp;lt;/code&amp;gt;&lt;br /&gt;
| ResistedDamage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RGHT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Right&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RTRT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Retreat&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SCND&amp;lt;/code&amp;gt;&lt;br /&gt;
| ScanDone&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SCNS&amp;lt;/code&amp;gt;&lt;br /&gt;
| ScanSource&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SQNC&amp;lt;/code&amp;gt;&lt;br /&gt;
| Sequence&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;UFRZ&amp;lt;/code&amp;gt;&lt;br /&gt;
| UnFreeze&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;UP  &amp;lt;/code&amp;gt;&lt;br /&gt;
| Up&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;XDMG&amp;lt;/code&amp;gt;&lt;br /&gt;
| XDamage&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;XINB&amp;lt;/code&amp;gt;&lt;br /&gt;
| InBack&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;XINF&amp;lt;/code&amp;gt;&lt;br /&gt;
| InFront&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ZERO&amp;lt;/code&amp;gt;&lt;br /&gt;
| Zero&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== List of messages ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! ID&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ACTN&amp;lt;/code&amp;gt;&lt;br /&gt;
| Action&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ACTV&amp;lt;/code&amp;gt;&lt;br /&gt;
| Activate&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ALRT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Alert&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ARRV&amp;lt;/code&amp;gt;&lt;br /&gt;
| Arrive&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ATCH&amp;lt;/code&amp;gt;&lt;br /&gt;
| Attach&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CLOS&amp;lt;/code&amp;gt;&lt;br /&gt;
| Close&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;CORG&amp;lt;/code&amp;gt;&lt;br /&gt;
| ClearOriginator&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DCTV&amp;lt;/code&amp;gt;&lt;br /&gt;
| Deactivate&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;DECR&amp;lt;/code&amp;gt;&lt;br /&gt;
| Decrement&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ESCP&amp;lt;/code&amp;gt;&lt;br /&gt;
| Escape&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;FOLW&amp;lt;/code&amp;gt;&lt;br /&gt;
| Follow&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM00&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage00&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM01&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage01&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM02&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage02&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM03&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage03&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM04&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage04&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM05&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage05&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM06&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage06&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM07&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage07&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM08&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage08&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM09&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage09&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM10&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage10&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM11&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage11&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM12&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage12&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM13&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage13&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;IM14&amp;lt;/code&amp;gt;&lt;br /&gt;
| InternalMessage14&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;INCR&amp;lt;/code&amp;gt;&lt;br /&gt;
| Increment&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;KILL&amp;lt;/code&amp;gt;&lt;br /&gt;
| Kill&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;LEFT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Left&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;LOAD&amp;lt;/code&amp;gt;&lt;br /&gt;
| Load&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;LOCK&amp;lt;/code&amp;gt;&lt;br /&gt;
| Lock&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;NEXT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Next&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;OPEN&amp;lt;/code&amp;gt;&lt;br /&gt;
| Open&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;PLAY&amp;lt;/code&amp;gt;&lt;br /&gt;
| Play&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RSET&amp;lt;/code&amp;gt;&lt;br /&gt;
| Reset&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;RSTS&amp;lt;/code&amp;gt;&lt;br /&gt;
| ResetAndStart&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SMAX&amp;lt;/code&amp;gt;&lt;br /&gt;
| SetToMax&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SORG&amp;lt;/code&amp;gt;&lt;br /&gt;
| SetOriginator&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;STOP&amp;lt;/code&amp;gt;&lt;br /&gt;
| Stop&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;STPR&amp;lt;/code&amp;gt;&lt;br /&gt;
| StopAndReset&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;STRT&amp;lt;/code&amp;gt;&lt;br /&gt;
| Start&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;TCTV&amp;lt;/code&amp;gt;&lt;br /&gt;
| ToggleActive&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ULCK&amp;lt;/code&amp;gt;&lt;br /&gt;
| Unlock&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ULOD&amp;lt;/code&amp;gt;&lt;br /&gt;
| Unload&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;XCLR&amp;lt;/code&amp;gt;&lt;br /&gt;
| Clear&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;XDEL&amp;lt;/code&amp;gt;&lt;br /&gt;
| Delete&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;XDMG&amp;lt;/code&amp;gt;&lt;br /&gt;
| XDamage	&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;ZERO&amp;lt;/code&amp;gt;&lt;br /&gt;
| SetToZero&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
{{category:Metroid Prime 2: Echoes}}&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=MAPA_(File_Format)&amp;diff=2817</id>
		<title>MAPA (File Format)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=MAPA_(File_Format)&amp;diff=2817"/>
		<updated>2023-05-02T03:00:56Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: added list of mappable object types for echoes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &#039;&#039;&#039;.MAPA file format&#039;&#039;&#039; defines the minimap models used in the Metroid Prime series. MAPA or &#039;&#039;&#039;MAP A&#039;&#039;&#039;rea consists of several sections: The header, Mappable Object entries, Vertices, Primitive Headers, and the primitives.&lt;br /&gt;
&lt;br /&gt;
{{research|2|A few things are unknown in the header and Mappable Object Entries}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
== Format ==&lt;br /&gt;
=== Header ===&lt;br /&gt;
The header is very straightforward, and has some minor differences depending on version.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
!MP1&lt;br /&gt;
!MP2&lt;br /&gt;
!MP3&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Magic&#039;&#039;&#039;; Always 0xDEADD00D&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Version&#039;&#039;&#039;; See below&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Type&#039;&#039;&#039;; unknown function in MP1/3, specifies whether the area appears on the Light (0) or Dark (1) map in MP2&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Visibility Mode&#039;&#039;&#039;; &amp;lt;ol start=0&amp;gt;&amp;lt;li&amp;gt;Always Visible (Map Universe Area)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Visit or Map Station (most MP1 areas)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Visit only (latter areas of Ruins and Phendrana)&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Never Visible&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|{{AABox}}&lt;br /&gt;
|&#039;&#039;&#039;Bounding Box&#039;&#039;&#039;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Vector3f}}&lt;br /&gt;
|&#039;&#039;&#039;Map Adjustment&#039;&#039;&#039;&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|{{unknown|Unknown}}&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Mappable Object Count&#039;&#039;&#039;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Vertex Count&#039;&#039;&#039;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Primitive Count&#039;&#039;&#039;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Environment Variable Section Size&#039;&#039;&#039;&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Environment Variable Count&#039;&#039;&#039;&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
| colspan=5 {{unknown|End of Header}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Version ====&lt;br /&gt;
The version value listed above can have the following values:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Game&lt;br /&gt;
!Value&lt;br /&gt;
|-&lt;br /&gt;
|Metroid Prime 1&lt;br /&gt;
|2&lt;br /&gt;
|-&lt;br /&gt;
|Metroid Prime 2: Echoes&lt;br /&gt;
|3&lt;br /&gt;
|-&lt;br /&gt;
|Metroid Prime 3: Corruption&lt;br /&gt;
|5&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Environment Variables ===&lt;br /&gt;
Only exists in Corruption; used for some areas with Landing Sites.&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Count&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|string&lt;br /&gt;
|Environment Variable Count&lt;br /&gt;
|&#039;&#039;&#039;Environment Variable&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|Pad to 4 bytes}}&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of Environment Variables}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Mappable Objects ===&lt;br /&gt;
A Mappable Object in the Metroid Prime series can include: Elevators, Doors, and Save/Missile Stations. Each Mappable Object entry consists of the following struct:&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
!MP1 &amp;amp; MP2&lt;br /&gt;
!MP3&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Type&#039;&#039;&#039;; See tables below for MP1/MP2 types&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Visibility Mode&#039;&#039;&#039;; &amp;lt;ol start=0&amp;gt;&amp;lt;li&amp;gt;Always Visible&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Map Station or Area Visit&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Door Visit&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Never Visible&amp;lt;/li&amp;gt;&amp;lt;li&amp;gt;Visible on Map Station or Area Visit&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Editor ID&#039;&#039;&#039;; Same ID format as SCLY, indicates associated world object&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|[[GUID]]&lt;br /&gt;
|&#039;&#039;&#039;Saved State ID&#039;&#039;&#039;&lt;br /&gt;
|{{nocheck}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|{{unknown|Unknown}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|{{Transform4f}}&lt;br /&gt;
|&#039;&#039;&#039;Transform Matrix&#039;&#039;&#039; The Mappable Object&#039;s position in &#039;&#039;&#039;world&#039;&#039;&#039; space.&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
|u32 * 4&lt;br /&gt;
|{{unknown|Unknown}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|{{check}}&lt;br /&gt;
|-&lt;br /&gt;
| colspan=4 {{unknown|End of Mappable Object}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== MP1 Types ====&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Normal Door&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Shield Door&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Ice Door&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Wave Door&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|Plasma Door&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|Big Door&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|Big Door 2&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|Ice Door Ceiling&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|Ice Door Floor&lt;br /&gt;
|-&lt;br /&gt;
|9&lt;br /&gt;
|Wave Door Ceiling&lt;br /&gt;
|-&lt;br /&gt;
|10&lt;br /&gt;
|Wave Door Floor&lt;br /&gt;
|-&lt;br /&gt;
|11&lt;br /&gt;
|Plasma Door Ceiling&lt;br /&gt;
|-&lt;br /&gt;
|12&lt;br /&gt;
|Plasma Door Floor&lt;br /&gt;
|-&lt;br /&gt;
|13&lt;br /&gt;
|Ice Door Floor 2&lt;br /&gt;
|-&lt;br /&gt;
|14&lt;br /&gt;
|Wave Door Floor 2&lt;br /&gt;
|-&lt;br /&gt;
|15&lt;br /&gt;
|Plasma Door Floor 2&lt;br /&gt;
|-&lt;br /&gt;
|27&lt;br /&gt;
|Down Arrow Yellow (Maintenance Tunnel)&lt;br /&gt;
|-&lt;br /&gt;
|28&lt;br /&gt;
|Up Arrow Yellow (Phazon Processing Center)&lt;br /&gt;
|-&lt;br /&gt;
|29&lt;br /&gt;
|Down Arrow Green (Elevator A)&lt;br /&gt;
|-&lt;br /&gt;
|30&lt;br /&gt;
|Up Arrow Green (Elite Control Access)&lt;br /&gt;
|-&lt;br /&gt;
|31&lt;br /&gt;
|Down Arrow Red (Elevator B)&lt;br /&gt;
|-&lt;br /&gt;
|32&lt;br /&gt;
|Up Arrow Red (Fungal Hall Access)&lt;br /&gt;
|-&lt;br /&gt;
|33&lt;br /&gt;
|Elevator&lt;br /&gt;
|-&lt;br /&gt;
|34&lt;br /&gt;
|Save Station&lt;br /&gt;
|-&lt;br /&gt;
|37&lt;br /&gt;
|Missile Station&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== MP2 Types ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|0&lt;br /&gt;
|Normal Door&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Missile Door&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Dark Door&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Annihilator Door&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|Light Door&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|Super Missile Door&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|Seeker Missile Door&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|Power Bomb Door&lt;br /&gt;
|-&lt;br /&gt;
|16&lt;br /&gt;
|Elevator&lt;br /&gt;
|-&lt;br /&gt;
|17&lt;br /&gt;
|Save Station&lt;br /&gt;
|-&lt;br /&gt;
|20&lt;br /&gt;
|Ammo Station&lt;br /&gt;
|-&lt;br /&gt;
|21&lt;br /&gt;
|Portal&lt;br /&gt;
|-&lt;br /&gt;
|22&lt;br /&gt;
|Light Teleporter&lt;br /&gt;
|-&lt;br /&gt;
|23&lt;br /&gt;
|Translator Gate&lt;br /&gt;
|-&lt;br /&gt;
|24&lt;br /&gt;
|Up Arrow&lt;br /&gt;
|-&lt;br /&gt;
|25&lt;br /&gt;
|Down Arrow&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Vertices ===&lt;br /&gt;
&lt;br /&gt;
Vertices are a simple array of CVector3f. Geometry in MAPAs is, almost always, centered around the origin (0, 0, 0) and are simplified, full sized, versions of the map they replicate. Each vertex is referenced at least twice: once for the primitive, once for the line border.&lt;br /&gt;
&lt;br /&gt;
=== Primitive Headers ===&lt;br /&gt;
&lt;br /&gt;
The Primitive headers are extremely simple, they merely have a bounding box followed by the primitive table start and end point, relative to the end of the current primitive header. In other words: read in the header, seek to the start of the table from the &#039;&#039;&#039;current&#039;&#039;&#039; position, then read the primitives tables.&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|{{Vector3f}}&lt;br /&gt;
|&#039;&#039;&#039;Normal&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|{{Vector3f}}&lt;br /&gt;
|&#039;&#039;&#039;Center of Mass&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Primitive Table Start&#039;&#039;&#039;; relative to the end of the header&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Border Table Start&#039;&#039;&#039;; relative to the end of the header&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Primitive Table ===&lt;br /&gt;
&lt;br /&gt;
The Primitive is also fairly simple, each one consists of two parts: The GX Primitive list, and the Border list. &lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
!Type&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Primitive Count (PC)&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|Primitive * PC&lt;br /&gt;
|&#039;&#039;&#039;Primitives&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|u32&lt;br /&gt;
|&#039;&#039;&#039;Border Count (BC)&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|Border * (BC)&lt;br /&gt;
|&#039;&#039;&#039;Borders&#039;&#039;&#039;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Primitive ===&lt;br /&gt;
&lt;br /&gt;
A primitive in a MAPA is a simple 4 byte aligned list of indices into the vertex list, starting with the GX Primitive type, a count, then an array of indices, each index taking up one byte.&lt;br /&gt;
&lt;br /&gt;
=== Border ===&lt;br /&gt;
&lt;br /&gt;
A border in a MAPA is a simple count followed by a 4 byte aligned list indices into the vertex list, each index taking up one byte. A border is simply drawn using GX_LINESTRIP.&lt;br /&gt;
&lt;br /&gt;
[[Category:File Formats]]&lt;br /&gt;
[[Category:Metroid Prime]]&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;br /&gt;
[[Category:Metroid Prime 3: Corruption]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=MREA_(Metroid_Prime_2)&amp;diff=2814</id>
		<title>MREA (Metroid Prime 2)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=MREA_(Metroid_Prime_2)&amp;diff=2814"/>
		<updated>2022-01-24T21:07:30Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: fix and add links in TOC&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See [[MREA (File Format)]] for the other revisions of this format.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;MREA format&#039;&#039;&#039; defines areas (rooms) in Metroid Prime 2. It serves the same purpose as the MREA files from Prime 1, but in Echoes it was updated with new features, including some new data sections and the ability to compress most of the data in the file.&lt;br /&gt;
&lt;br /&gt;
{{todo|Rest of the article needs to be written. There&#039;s a lot known about this format that should be documented.}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
Like CMDL, MREA files are split up into a number of 32-byte aligned sections. Every section both starts and ends on a 32-byte boundary. These are used to separate different parts of the file; different types of sections typically indicate different sets of data. The header declares the section count and the size of each one; using these is the only way to navigate the file.&lt;br /&gt;
&lt;br /&gt;
These are the sections in each MREA file, in the order they appear in the file:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Identifier&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#World Geometry|World Geometry]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Unknown Section 1|Unknown Section 1]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SCLY&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Scriptable_Layers_(Metroid_Prime_2)|Script Layers]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SCGN&amp;lt;/code&amp;gt;&lt;br /&gt;
| Generated Script Objects&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;0xDEAFBABE&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[#Collision|Collision]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[MREA (Metroid Prime)#Unknown Section|Unknown Section 2]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;0xBABEDEAD&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Lights (Metroid Prime)|Lights]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VISI&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[VISI (MREA Section)|Visibility Tree]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Path|Path]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Portal Area|Portal Area]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Static Geometry Map|Static Geometry Map]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Header ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Magic&#039;&#039;&#039;&lt;br /&gt;
| Always &amp;lt;code&amp;gt;0xDEADBEEF&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Version&#039;&#039;&#039;&lt;br /&gt;
| See [[MREA (File Format)|hub article]] for a list of possible version numbers.&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| float&lt;br /&gt;
| 12&lt;br /&gt;
| &#039;&#039;&#039;Area Transform&#039;&#039;&#039;&lt;br /&gt;
| Matrix that represents the area&#039;s transform from the origin. Most area data is pre-transformed, so this matrix is only used occasionally.&lt;br /&gt;
|-&lt;br /&gt;
| 0x38&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;World Model Count&#039;&#039;&#039;&lt;br /&gt;
| Number of world models in this area.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Script Layer Count&#039;&#039;&#039;&lt;br /&gt;
| Number of script layers in this area.&lt;br /&gt;
|-&lt;br /&gt;
| 0x40&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Data Section Count&#039;&#039;&#039;&lt;br /&gt;
| Number of data sections in the file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x44&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Geometry Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for world geometry data. Always 0; starts on materials.&lt;br /&gt;
|-&lt;br /&gt;
| 0x48&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Script Layers Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for script layer data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Generated Script Objects Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for generated script object data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x50&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Collision Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for collision data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x54&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Unknown Section 1&#039;&#039;&#039;&lt;br /&gt;
| Section index for first unknown section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x58&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Lights Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for light data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x5C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Visibility Tree Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for visibility tree data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x60&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Path Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for path data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x64&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Unknown Section 2&#039;&#039;&#039;&lt;br /&gt;
| Section index for second unknown section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x68&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Portal Area Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for portal area data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Static Geometry Map Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for static geometry map data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x70&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Compressed Block Count&#039;&#039;&#039;&lt;br /&gt;
| Number of compressed data blocks in the file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x74&lt;br /&gt;
| u32&lt;br /&gt;
| 3&lt;br /&gt;
| &#039;&#039;&#039;Padding&#039;&#039;&#039;&lt;br /&gt;
| Padding bytes that align the file with the next multiple-of-32 offset.&lt;br /&gt;
|-&lt;br /&gt;
| 0x80&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;Data Section Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Data Section Sizes&#039;&#039;&#039;&lt;br /&gt;
| Array containing the size of each data section in the file. Every size is always a multiple of 32.&lt;br /&gt;
|-&lt;br /&gt;
| colspan=5 {{unknown|Pad to 32 bytes before compressed block definitions begins}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Compressed Blocks ====&lt;br /&gt;
&lt;br /&gt;
The MREA format contains compressed blocks that can each contain a number of regular file sections within them. The data defining these blocks is at the end of the MREA header; the beginning and end of the compressed block list is padded to 32 bytes. The decompressed size of a block is capped at 0x20000 bytes; each section contains as many MREA sections as it can fit under that size limit. There are two exceptions:&lt;br /&gt;
&lt;br /&gt;
* If a single section&#039;s uncompressed size is larger than 0x20000, then its corresponding compressed block can exceed the size limit.&lt;br /&gt;
* Each SCLY and SCGN layer is always in its own block, regardless of how close to the limit it is.&lt;br /&gt;
&lt;br /&gt;
This is the structure of each block definition:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Buffer Size&#039;&#039;&#039;&lt;br /&gt;
| This is always 0x120 bytes larger than the uncompressed size on compressed bytes, and the same value as the uncompressed size on uncompressed blocks&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Uncompressed Size&#039;&#039;&#039;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Compressed Size&#039;&#039;&#039;&lt;br /&gt;
| This is 0 on uncompressed blocks.&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Data Section Count&#039;&#039;&#039;&lt;br /&gt;
| The number of regular data sections contained in this block.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| colspan=5 {{unknown|Block definition end}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The actual data contained in these blocks is padded to 32 bytes, but their padding is located at the beginning of the block rather than the end, so it&#039;s required to account for the padding before you start decompressing. Thee data is compressed using segmented LZO1X-999; the &amp;quot;segmented&amp;quot; part means there&#039;s multiple segments of data that are compressed/decompressed separately. Each segment starts with a 16-bit size value. The size value is signed; a negative value indicates the segment is not compressed (this is done when compressing a segment doesn&#039;t reduce its size). Each segment is 0x4000 bytes large when decompressed (except the last one).&lt;br /&gt;
&lt;br /&gt;
=== World Geometry ===&lt;br /&gt;
&#039;&#039;See [[MREA (Metroid Prime)#World Geometry]], [[Materials (Metroid Prime)]] and [[Geometry (Metroid Prime)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Largely [[MREA (Metroid Prime)#World Geometry|the same as Prime 1]]. There are two new sections to watch out for on each world model (described on the [[Geometry (Metroid Prime)]] page). There&#039;s two sections that are now grouped under the same section number as world geometry.&lt;br /&gt;
&lt;br /&gt;
==== Area Octree ====&lt;br /&gt;
&lt;br /&gt;
The [[MREA (Metroid Prime)#Area Octree|area octree]] section is back from Prime 1, but no longer has its own section number - it&#039;s now grouped under the same section number as world geometry.&lt;br /&gt;
&lt;br /&gt;
==== Surface Group Bounding Boxes ====&lt;br /&gt;
&lt;br /&gt;
This is a new section introduced in Metroid Prime 2, which is grouped under the world geometry section number and appears after the area octree. It contains an array of a structure that provides the bounding box for every surface group. The first entry in the array has the combined bounding box for all of the world geometry in the entire area, then each surface group is listed in order.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Group Bounds Entry Count&#039;&#039;&#039;&lt;br /&gt;
| Count of elements in the following array.&lt;br /&gt;
|-&lt;br /&gt;
| [[#Group Bounds|Group Bounds Entry]]&lt;br /&gt;
| &#039;&#039;Group Bounds Entry Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Group Bounds Entry Array&#039;&#039;&#039;&lt;br /&gt;
| Array of a struct that provides the bounding box for each surface group in the area.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Group Bounds Entry =====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| float&lt;br /&gt;
| 6&lt;br /&gt;
| &#039;&#039;&#039;Group Bounding Box&#039;&#039;&#039;&lt;br /&gt;
| Axis-aligned bounding box of all surfaces contained in the group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;World Model Index&#039;&#039;&#039;&lt;br /&gt;
| Index of the world model that contains this group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Surface Group Index&#039;&#039;&#039;&lt;br /&gt;
| Model-relative index of the surface group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| On the first entry, always 1. On other entries, always -1.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1E&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| On the first entry, always -1. On other entries, always the entry&#039;s index position + 1.&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| colspan=4 {{unknown|End of bounds entry}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Unknown Section 1 ===&lt;br /&gt;
&lt;br /&gt;
This section appears to be related to world geometry.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Element Count 1&#039;&#039;&#039;&lt;br /&gt;
| Count of elements in the next array. Always 0 in light world areas.&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;Element Count 1&#039;&#039;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| May also be a pair of u16s?&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Element Count 2&#039;&#039;&#039;&lt;br /&gt;
| Count of elements in the next array. Matches the area&#039;s surface group count.&lt;br /&gt;
|-&lt;br /&gt;
| u8&lt;br /&gt;
| &#039;&#039;Element Count 2&#039;&#039;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| Every entry is always 0xFF in light world areas. Dark world appears to include both 0x00 and 0xFF?&lt;br /&gt;
|-&lt;br /&gt;
| colspan=4 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Collision ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Main article: [[Area Collision (File Format)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Path ===&lt;br /&gt;
&lt;br /&gt;
This section only contains a single [[PATH (File Format)|PATH]] asset ID.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area PATH Resource&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Portal Area ===&lt;br /&gt;
&lt;br /&gt;
This section only contains a single [[PTLA (File Format)|PTLA]] asset ID.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area PTLA Resource&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Static Geometry Map ===&lt;br /&gt;
&lt;br /&gt;
This section only contains a single [[EGMC (File Format)|EGMC]] asset ID.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area EGMC Resource&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:File Formats]]&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=MREA_(Metroid_Prime_2)&amp;diff=2813</id>
		<title>MREA (Metroid Prime 2)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=MREA_(Metroid_Prime_2)&amp;diff=2813"/>
		<updated>2022-01-24T20:55:44Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: /* Unknown Section 1 */fixes typo in previous edit&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See [[MREA (File Format)]] for the other revisions of this format.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;MREA format&#039;&#039;&#039; defines areas (rooms) in Metroid Prime 2. It serves the same purpose as the MREA files from Prime 1, but in Echoes it was updated with new features, including some new data sections and the ability to compress most of the data in the file.&lt;br /&gt;
&lt;br /&gt;
{{todo|Rest of the article needs to be written. There&#039;s a lot known about this format that should be documented.}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
Like CMDL, MREA files are split up into a number of 32-byte aligned sections. Every section both starts and ends on a 32-byte boundary. These are used to separate different parts of the file; different types of sections typically indicate different sets of data. The header declares the section count and the size of each one; using these is the only way to navigate the file.&lt;br /&gt;
&lt;br /&gt;
These are the sections in each MREA file, in the order they appear in the file:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Identifier&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#World Geometry|World Geometry]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Unknown Section 1|Unknown Section 1]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SCLY&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Scriptable_Layers_(Metroid_Prime_2)|Script Layers]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SCGN&amp;lt;/code&amp;gt;&lt;br /&gt;
| Generated Script Objects&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;0xDEAFBABE&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[#Collision|Collision]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#MREA (Metroid Prime)#Unknown Section|Unknown Section 2]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;0xBABEDEAD&amp;lt;/code&amp;gt;&lt;br /&gt;
| Lights&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VISI&amp;lt;/code&amp;gt;&lt;br /&gt;
| Visibility Tree&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Path|Path]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Portal Area|Portal Area]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Static Geometry Map|Static Geometry Map]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Header ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Magic&#039;&#039;&#039;&lt;br /&gt;
| Always &amp;lt;code&amp;gt;0xDEADBEEF&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Version&#039;&#039;&#039;&lt;br /&gt;
| See [[MREA (File Format)|hub article]] for a list of possible version numbers.&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| float&lt;br /&gt;
| 12&lt;br /&gt;
| &#039;&#039;&#039;Area Transform&#039;&#039;&#039;&lt;br /&gt;
| Matrix that represents the area&#039;s transform from the origin. Most area data is pre-transformed, so this matrix is only used occasionally.&lt;br /&gt;
|-&lt;br /&gt;
| 0x38&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;World Model Count&#039;&#039;&#039;&lt;br /&gt;
| Number of world models in this area.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Script Layer Count&#039;&#039;&#039;&lt;br /&gt;
| Number of script layers in this area.&lt;br /&gt;
|-&lt;br /&gt;
| 0x40&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Data Section Count&#039;&#039;&#039;&lt;br /&gt;
| Number of data sections in the file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x44&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Geometry Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for world geometry data. Always 0; starts on materials.&lt;br /&gt;
|-&lt;br /&gt;
| 0x48&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Script Layers Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for script layer data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Generated Script Objects Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for generated script object data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x50&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Collision Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for collision data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x54&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Unknown Section 1&#039;&#039;&#039;&lt;br /&gt;
| Section index for first unknown section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x58&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Lights Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for light data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x5C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Visibility Tree Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for visibility tree data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x60&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Path Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for path data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x64&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Unknown Section 2&#039;&#039;&#039;&lt;br /&gt;
| Section index for second unknown section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x68&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Portal Area Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for portal area data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Static Geometry Map Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for static geometry map data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x70&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Compressed Block Count&#039;&#039;&#039;&lt;br /&gt;
| Number of compressed data blocks in the file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x74&lt;br /&gt;
| u32&lt;br /&gt;
| 3&lt;br /&gt;
| &#039;&#039;&#039;Padding&#039;&#039;&#039;&lt;br /&gt;
| Padding bytes that align the file with the next multiple-of-32 offset.&lt;br /&gt;
|-&lt;br /&gt;
| 0x80&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;Data Section Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Data Section Sizes&#039;&#039;&#039;&lt;br /&gt;
| Array containing the size of each data section in the file. Every size is always a multiple of 32.&lt;br /&gt;
|-&lt;br /&gt;
| colspan=5 {{unknown|Pad to 32 bytes before compressed block definitions begins}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Compressed Blocks ====&lt;br /&gt;
&lt;br /&gt;
The MREA format contains compressed blocks that can each contain a number of regular file sections within them. The data defining these blocks is at the end of the MREA header; the beginning and end of the compressed block list is padded to 32 bytes. The decompressed size of a block is capped at 0x20000 bytes; each section contains as many MREA sections as it can fit under that size limit. There are two exceptions:&lt;br /&gt;
&lt;br /&gt;
* If a single section&#039;s uncompressed size is larger than 0x20000, then its corresponding compressed block can exceed the size limit.&lt;br /&gt;
* Each SCLY and SCGN layer is always in its own block, regardless of how close to the limit it is.&lt;br /&gt;
&lt;br /&gt;
This is the structure of each block definition:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Buffer Size&#039;&#039;&#039;&lt;br /&gt;
| This is always 0x120 bytes larger than the uncompressed size on compressed bytes, and the same value as the uncompressed size on uncompressed blocks&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Uncompressed Size&#039;&#039;&#039;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Compressed Size&#039;&#039;&#039;&lt;br /&gt;
| This is 0 on uncompressed blocks.&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Data Section Count&#039;&#039;&#039;&lt;br /&gt;
| The number of regular data sections contained in this block.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| colspan=5 {{unknown|Block definition end}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The actual data contained in these blocks is padded to 32 bytes, but their padding is located at the beginning of the block rather than the end, so it&#039;s required to account for the padding before you start decompressing. Thee data is compressed using segmented LZO1X-999; the &amp;quot;segmented&amp;quot; part means there&#039;s multiple segments of data that are compressed/decompressed separately. Each segment starts with a 16-bit size value. The size value is signed; a negative value indicates the segment is not compressed (this is done when compressing a segment doesn&#039;t reduce its size). Each segment is 0x4000 bytes large when decompressed (except the last one).&lt;br /&gt;
&lt;br /&gt;
=== World Geometry ===&lt;br /&gt;
&#039;&#039;See [[MREA (Metroid Prime)#World Geometry]], [[Materials (Metroid Prime)]] and [[Geometry (Metroid Prime)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Largely [[MREA (Metroid Prime)#World Geometry|the same as Prime 1]]. There are two new sections to watch out for on each world model (described on the [[Geometry (Metroid Prime)]] page). There&#039;s two sections that are now grouped under the same section number as world geometry.&lt;br /&gt;
&lt;br /&gt;
==== Area Octree ====&lt;br /&gt;
&lt;br /&gt;
The [[MREA (Metroid Prime)#Area Octree|area octree]] section is back from Prime 1, but no longer has its own section number - it&#039;s now grouped under the same section number as world geometry.&lt;br /&gt;
&lt;br /&gt;
==== Surface Group Bounding Boxes ====&lt;br /&gt;
&lt;br /&gt;
This is a new section introduced in Metroid Prime 2, which is grouped under the world geometry section number and appears after the area octree. It contains an array of a structure that provides the bounding box for every surface group. The first entry in the array has the combined bounding box for all of the world geometry in the entire area, then each surface group is listed in order.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Group Bounds Entry Count&#039;&#039;&#039;&lt;br /&gt;
| Count of elements in the following array.&lt;br /&gt;
|-&lt;br /&gt;
| [[#Group Bounds|Group Bounds Entry]]&lt;br /&gt;
| &#039;&#039;Group Bounds Entry Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Group Bounds Entry Array&#039;&#039;&#039;&lt;br /&gt;
| Array of a struct that provides the bounding box for each surface group in the area.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Group Bounds Entry =====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| float&lt;br /&gt;
| 6&lt;br /&gt;
| &#039;&#039;&#039;Group Bounding Box&#039;&#039;&#039;&lt;br /&gt;
| Axis-aligned bounding box of all surfaces contained in the group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;World Model Index&#039;&#039;&#039;&lt;br /&gt;
| Index of the world model that contains this group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Surface Group Index&#039;&#039;&#039;&lt;br /&gt;
| Model-relative index of the surface group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| On the first entry, always 1. On other entries, always -1.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1E&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| On the first entry, always -1. On other entries, always the entry&#039;s index position + 1.&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| colspan=4 {{unknown|End of bounds entry}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Unknown Section 1 ===&lt;br /&gt;
&lt;br /&gt;
This section appears to be related to world geometry.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Element Count 1&#039;&#039;&#039;&lt;br /&gt;
| Count of elements in the next array. Always 0 in light world areas.&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;Element Count 1&#039;&#039;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| May also be a pair of u16s?&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Element Count 2&#039;&#039;&#039;&lt;br /&gt;
| Count of elements in the next array. Matches the area&#039;s surface group count.&lt;br /&gt;
|-&lt;br /&gt;
| u8&lt;br /&gt;
| &#039;&#039;Element Count 2&#039;&#039;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| Every entry is always 0xFF in light world areas. Dark world appears to include both 0x00 and 0xFF?&lt;br /&gt;
|-&lt;br /&gt;
| colspan=4 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Collision ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Main article: [[Area Collision (File Format)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Path ===&lt;br /&gt;
&lt;br /&gt;
This section only contains a single [[PATH (File Format)|PATH]] asset ID.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area PATH Resource&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Portal Area ===&lt;br /&gt;
&lt;br /&gt;
This section only contains a single [[PTLA (File Format)|PTLA]] asset ID.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area PTLA Resource&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Static Geometry Map ===&lt;br /&gt;
&lt;br /&gt;
This section only contains a single [[EGMC (File Format)|EGMC]] asset ID.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area EGMC Resource&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:File Formats]]&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=MREA_(Metroid_Prime_2)&amp;diff=2812</id>
		<title>MREA (Metroid Prime 2)</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=MREA_(Metroid_Prime_2)&amp;diff=2812"/>
		<updated>2022-01-24T20:52:16Z</updated>

		<summary type="html">&lt;p&gt;Duncathan: /* Unknown Section 2 */adds some missing information to Unknown Section 2&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See [[MREA (File Format)]] for the other revisions of this format.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The &#039;&#039;&#039;MREA format&#039;&#039;&#039; defines areas (rooms) in Metroid Prime 2. It serves the same purpose as the MREA files from Prime 1, but in Echoes it was updated with new features, including some new data sections and the ability to compress most of the data in the file.&lt;br /&gt;
&lt;br /&gt;
{{todo|Rest of the article needs to be written. There&#039;s a lot known about this format that should be documented.}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
Like CMDL, MREA files are split up into a number of 32-byte aligned sections. Every section both starts and ends on a 32-byte boundary. These are used to separate different parts of the file; different types of sections typically indicate different sets of data. The header declares the section count and the size of each one; using these is the only way to navigate the file.&lt;br /&gt;
&lt;br /&gt;
These are the sections in each MREA file, in the order they appear in the file:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Identifier&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#World Geometry|World Geometry]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Unknown Section 1|Unknown Section 1]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SCLY&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[Scriptable_Layers_(Metroid_Prime_2)|Script Layers]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;SCGN&amp;lt;/code&amp;gt;&lt;br /&gt;
| Generated Script Objects&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;0xDEAFBABE&amp;lt;/code&amp;gt;&lt;br /&gt;
| [[#Collision|Collision]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#MREA (Metroid Prime)#Unknown Section|Unknown Section 2]]&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;0xBABEDEAD&amp;lt;/code&amp;gt;&lt;br /&gt;
| Lights&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;code&amp;gt;VISI&amp;lt;/code&amp;gt;&lt;br /&gt;
| Visibility Tree&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Path|Path]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Portal Area|Portal Area]]&lt;br /&gt;
|-&lt;br /&gt;
| {{none}}&lt;br /&gt;
| [[#Static Geometry Map|Static Geometry Map]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Header ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Magic&#039;&#039;&#039;&lt;br /&gt;
| Always &amp;lt;code&amp;gt;0xDEADBEEF&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Version&#039;&#039;&#039;&lt;br /&gt;
| See [[MREA (File Format)|hub article]] for a list of possible version numbers.&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| float&lt;br /&gt;
| 12&lt;br /&gt;
| &#039;&#039;&#039;Area Transform&#039;&#039;&#039;&lt;br /&gt;
| Matrix that represents the area&#039;s transform from the origin. Most area data is pre-transformed, so this matrix is only used occasionally.&lt;br /&gt;
|-&lt;br /&gt;
| 0x38&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;World Model Count&#039;&#039;&#039;&lt;br /&gt;
| Number of world models in this area.&lt;br /&gt;
|-&lt;br /&gt;
| 0x3C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Script Layer Count&#039;&#039;&#039;&lt;br /&gt;
| Number of script layers in this area.&lt;br /&gt;
|-&lt;br /&gt;
| 0x40&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Data Section Count&#039;&#039;&#039;&lt;br /&gt;
| Number of data sections in the file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x44&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Geometry Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for world geometry data. Always 0; starts on materials.&lt;br /&gt;
|-&lt;br /&gt;
| 0x48&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Script Layers Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for script layer data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x4C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Generated Script Objects Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for generated script object data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x50&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Collision Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for collision data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x54&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Unknown Section 1&#039;&#039;&#039;&lt;br /&gt;
| Section index for first unknown section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x58&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Lights Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for light data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x5C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Visibility Tree Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for visibility tree data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x60&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Path Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for path data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x64&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Unknown Section 2&#039;&#039;&#039;&lt;br /&gt;
| Section index for second unknown section.&lt;br /&gt;
|-&lt;br /&gt;
| 0x68&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Portal Area Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for portal area data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x6C&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Static Geometry Map Section&#039;&#039;&#039;&lt;br /&gt;
| Section index for static geometry map data.&lt;br /&gt;
|-&lt;br /&gt;
| 0x70&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Compressed Block Count&#039;&#039;&#039;&lt;br /&gt;
| Number of compressed data blocks in the file.&lt;br /&gt;
|-&lt;br /&gt;
| 0x74&lt;br /&gt;
| u32&lt;br /&gt;
| 3&lt;br /&gt;
| &#039;&#039;&#039;Padding&#039;&#039;&#039;&lt;br /&gt;
| Padding bytes that align the file with the next multiple-of-32 offset.&lt;br /&gt;
|-&lt;br /&gt;
| 0x80&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;Data Section Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Data Section Sizes&#039;&#039;&#039;&lt;br /&gt;
| Array containing the size of each data section in the file. Every size is always a multiple of 32.&lt;br /&gt;
|-&lt;br /&gt;
| colspan=5 {{unknown|Pad to 32 bytes before compressed block definitions begins}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Compressed Blocks ====&lt;br /&gt;
&lt;br /&gt;
The MREA format contains compressed blocks that can each contain a number of regular file sections within them. The data defining these blocks is at the end of the MREA header; the beginning and end of the compressed block list is padded to 32 bytes. The decompressed size of a block is capped at 0x20000 bytes; each section contains as many MREA sections as it can fit under that size limit. There are two exceptions:&lt;br /&gt;
&lt;br /&gt;
* If a single section&#039;s uncompressed size is larger than 0x20000, then its corresponding compressed block can exceed the size limit.&lt;br /&gt;
* Each SCLY and SCGN layer is always in its own block, regardless of how close to the limit it is.&lt;br /&gt;
&lt;br /&gt;
This is the structure of each block definition:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Buffer Size&#039;&#039;&#039;&lt;br /&gt;
| This is always 0x120 bytes larger than the uncompressed size on compressed bytes, and the same value as the uncompressed size on uncompressed blocks&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Uncompressed Size&#039;&#039;&#039;&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Compressed Size&#039;&#039;&#039;&lt;br /&gt;
| This is 0 on uncompressed blocks.&lt;br /&gt;
|-&lt;br /&gt;
| 0xC&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Data Section Count&#039;&#039;&#039;&lt;br /&gt;
| The number of regular data sections contained in this block.&lt;br /&gt;
|-&lt;br /&gt;
| 0x10&lt;br /&gt;
| colspan=5 {{unknown|Block definition end}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The actual data contained in these blocks is padded to 32 bytes, but their padding is located at the beginning of the block rather than the end, so it&#039;s required to account for the padding before you start decompressing. Thee data is compressed using segmented LZO1X-999; the &amp;quot;segmented&amp;quot; part means there&#039;s multiple segments of data that are compressed/decompressed separately. Each segment starts with a 16-bit size value. The size value is signed; a negative value indicates the segment is not compressed (this is done when compressing a segment doesn&#039;t reduce its size). Each segment is 0x4000 bytes large when decompressed (except the last one).&lt;br /&gt;
&lt;br /&gt;
=== World Geometry ===&lt;br /&gt;
&#039;&#039;See [[MREA (Metroid Prime)#World Geometry]], [[Materials (Metroid Prime)]] and [[Geometry (Metroid Prime)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Largely [[MREA (Metroid Prime)#World Geometry|the same as Prime 1]]. There are two new sections to watch out for on each world model (described on the [[Geometry (Metroid Prime)]] page). There&#039;s two sections that are now grouped under the same section number as world geometry.&lt;br /&gt;
&lt;br /&gt;
==== Area Octree ====&lt;br /&gt;
&lt;br /&gt;
The [[MREA (Metroid Prime)#Area Octree|area octree]] section is back from Prime 1, but no longer has its own section number - it&#039;s now grouped under the same section number as world geometry.&lt;br /&gt;
&lt;br /&gt;
==== Surface Group Bounding Boxes ====&lt;br /&gt;
&lt;br /&gt;
This is a new section introduced in Metroid Prime 2, which is grouped under the world geometry section number and appears after the area octree. It contains an array of a structure that provides the bounding box for every surface group. The first entry in the array has the combined bounding box for all of the world geometry in the entire area, then each surface group is listed in order.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Group Bounds Entry Count&#039;&#039;&#039;&lt;br /&gt;
| Count of elements in the following array.&lt;br /&gt;
|-&lt;br /&gt;
| [[#Group Bounds|Group Bounds Entry]]&lt;br /&gt;
| &#039;&#039;Group Bounds Entry Count&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Group Bounds Entry Array&#039;&#039;&#039;&lt;br /&gt;
| Array of a struct that provides the bounding box for each surface group in the area.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===== Group Bounds Entry =====&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Offset&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| float&lt;br /&gt;
| 6&lt;br /&gt;
| &#039;&#039;&#039;Group Bounding Box&#039;&#039;&#039;&lt;br /&gt;
| Axis-aligned bounding box of all surfaces contained in the group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x18&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;World Model Index&#039;&#039;&#039;&lt;br /&gt;
| Index of the world model that contains this group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1A&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Surface Group Index&#039;&#039;&#039;&lt;br /&gt;
| Model-relative index of the surface group.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1C&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| On the first entry, always 1. On other entries, always -1.&lt;br /&gt;
|-&lt;br /&gt;
| 0x1E&lt;br /&gt;
| u16&lt;br /&gt;
| 1&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| On the first entry, always -1. On other entries, always the entry&#039;s index position + 1.&lt;br /&gt;
|-&lt;br /&gt;
| 0x20&lt;br /&gt;
| colspan=4 {{unknown|End of bounds entry}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Unknown Section 2 ===&lt;br /&gt;
&lt;br /&gt;
This section appears to be related to world geometry.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Element Count 1&#039;&#039;&#039;&lt;br /&gt;
| Count of elements in the next array. Always 0 in light world areas.&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| &#039;&#039;Element Count 1&#039;&#039;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| May also be a pair of u16s?&lt;br /&gt;
|-&lt;br /&gt;
| u32&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Element Count 2&#039;&#039;&#039;&lt;br /&gt;
| Count of elements in the next array. Matches the area&#039;s surface group count.&lt;br /&gt;
|-&lt;br /&gt;
| u8&lt;br /&gt;
| &#039;&#039;Element Count 2&#039;&#039;&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| Every entry is always 0xFF in light world areas. Dark world appears to include both 0x00 and 0xFF?&lt;br /&gt;
|-&lt;br /&gt;
| colspan=4 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Collision ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Main article: [[Area Collision (File Format)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Path ===&lt;br /&gt;
&lt;br /&gt;
This section only contains a single [[PATH (File Format)|PATH]] asset ID.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area PATH Resource&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Portal Area ===&lt;br /&gt;
&lt;br /&gt;
This section only contains a single [[PTLA (File Format)|PTLA]] asset ID.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area PTLA Resource&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Static Geometry Map ===&lt;br /&gt;
&lt;br /&gt;
This section only contains a single [[EGMC (File Format)|EGMC]] asset ID.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Type&lt;br /&gt;
! Count&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| Asset ID&lt;br /&gt;
| 1&lt;br /&gt;
| &#039;&#039;&#039;Area EGMC Resource&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=3 {{unknown|End of section}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:File Formats]]&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;/div&gt;</summary>
		<author><name>Duncathan</name></author>
	</entry>
</feed>