<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.axiodl.com/index.php?action=history&amp;feed=atom&amp;title=TREE_%28File_Format%29</id>
	<title>TREE (File Format) - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.axiodl.com/index.php?action=history&amp;feed=atom&amp;title=TREE_%28File_Format%29"/>
	<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;action=history"/>
	<updated>2026-04-30T07:22:24Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2436&amp;oldid=prev</id>
		<title>&gt;Aruki: /* Header */</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2436&amp;oldid=prev"/>
		<updated>2015-09-14T22:18:23Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Header&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:18, 14 September 2015&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l24&quot;&gt;Line 24:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| 0x4&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| 0x4&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| u32&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| u32&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| &#039;&#039;&#039;Root Node &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Index&lt;/del&gt;&#039;&#039;&#039;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| &#039;&#039;&#039;Root Node &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Instance ID&lt;/ins&gt;&#039;&#039;&#039;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Points &lt;/del&gt;to a SCND object named RootTreeNode.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Should point &lt;/ins&gt;to a &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;SCND&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; &lt;/ins&gt;object&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;. The original file points to one &lt;/ins&gt;named RootTreeNode.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| 0x8&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;| 0x8&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>&gt;Aruki</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2435&amp;oldid=prev</id>
		<title>&gt;Aruki: /* SCND (Category) */</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2435&amp;oldid=prev"/>
		<updated>2015-09-14T22:11:29Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;SCND (Category)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:11, 14 September 2015&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l47&quot;&gt;Line 47:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 47:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== SCND (Category) ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== SCND (Category) ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;code&amp;gt;SCND&amp;lt;/code&amp;gt; object represents a category. Categories don&#039;t have very many properties; they do most of their work through the connections system instead. Category nodes are able to use their connections to mark other nodes as children. They do this by sending the message &#039;&#039;Attach&#039;&#039; (&amp;lt;code&amp;gt;ATCH&amp;lt;/code&amp;gt;) to the target child node on state &#039;&#039;Connect&#039;&#039; (&amp;lt;code&amp;gt;CONN&amp;lt;/code&amp;gt;). The progress bars that appear on the right side of the  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;code&amp;gt;SCND&amp;lt;/code&amp;gt; object represents a category. Categories don&#039;t have very many properties; they do most of their work through the connections system instead. Category nodes are able to use their connections to mark other nodes as children. They do this by sending the message &#039;&#039;Attach&#039;&#039; (&amp;lt;code&amp;gt;ATCH&amp;lt;/code&amp;gt;) to the target child node on state &#039;&#039;Connect&#039;&#039; (&amp;lt;code&amp;gt;CONN&amp;lt;/code&amp;gt;). The progress bars that appear on the right side of the &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;pause screen are set up automatically based on how many children the category has and how many of them are visible.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{| class=&amp;quot;wikitable&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>&gt;Aruki</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2434&amp;oldid=prev</id>
		<title>&gt;Aruki: /* Script Objects */</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2434&amp;oldid=prev"/>
		<updated>2015-09-14T22:10:42Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Script Objects&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:10, 14 September 2015&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l43&quot;&gt;Line 43:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 43:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* They all include [[EditorProperties]], which contains an instance name, an &amp;quot;active&amp;quot; flag, and a position/rotation/scale, even though none of them actually needs it.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* They all include [[EditorProperties]], which contains an instance name, an &amp;quot;active&amp;quot; flag, and a position/rotation/scale, even though none of them actually needs it.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Every node has a name. In the data, this is represented with a resource ID for a [[STRG (Metroid Prime)|STRG file]] &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;that &lt;/del&gt;the name of one of the strings in that file. The name is used to look up the actual string, which is then displayed ingame in the pause menu.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Every node has a name. In the data, this is represented with a resource ID for a [[STRG (Metroid Prime)|STRG file]] &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;and &lt;/ins&gt;the name of one of the strings in that file. The name is used to look up the actual string, which is then displayed ingame in the pause menu.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== SCND (Category) ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== SCND (Category) ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>&gt;Aruki</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2433&amp;oldid=prev</id>
		<title>&gt;Aruki at 22:07, 14 September 2015</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2433&amp;oldid=prev"/>
		<updated>2015-09-14T22:07:57Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:07, 14 September 2015&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l42&quot;&gt;Line 42:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 42:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The TREE format uses script objects to set up the hierarchy. There are five object types present, each representing a different node type in the hierarchy: a category, a scan, an inventory item description, an options slider, or an options menu. There are a few common parameters to all these object types:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The TREE format uses script objects to set up the hierarchy. There are five object types present, each representing a different node type in the hierarchy: a category, a scan, an inventory item description, an options slider, or an options menu. There are a few common parameters to all these object types:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* They all include [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;EditorParameters&lt;/del&gt;]], which contains an instance name, an &quot;active&quot; flag, and a position/rotation/scale, even though none of them actually needs it.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* They all include [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;EditorProperties&lt;/ins&gt;]], which contains an instance name, an &quot;active&quot; flag, and a position/rotation/scale, even though none of them actually needs it.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Every node has a name. In the data, this is represented with a resource ID for a [[STRG (Metroid Prime)|STRG file]] that the name of one of the strings in that file. The name is used to look up the actual string, which is then displayed ingame in the pause menu.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Every node has a name. In the data, this is represented with a resource ID for a [[STRG (Metroid Prime)|STRG file]] that the name of one of the strings in that file. The name is used to look up the actual string, which is then displayed ingame in the pause menu.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>&gt;Aruki</name></author>
	</entry>
	<entry>
		<id>https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2432&amp;oldid=prev</id>
		<title>&gt;Aruki: Created page with &quot;The &#039;&#039;&#039;TREE format&#039;&#039;&#039; is used to set up the pause menu hierarchy in &#039;&#039;Metroid Prime 2: Echoes&#039;&#039;. It&#039;s found in 95b61279.DUMB in LogBook.pak. The format name comes from the...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.axiodl.com/index.php?title=TREE_(File_Format)&amp;diff=2432&amp;oldid=prev"/>
		<updated>2015-09-14T22:05:35Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;The &amp;#039;&amp;#039;&amp;#039;TREE format&amp;#039;&amp;#039;&amp;#039; is used to set up the pause menu hierarchy in &amp;#039;&amp;#039;&lt;a href=&quot;/w/Metroid_Prime_2:_Echoes&quot; title=&quot;Metroid Prime 2: Echoes&quot;&gt;Metroid Prime 2: Echoes&lt;/a&gt;&amp;#039;&amp;#039;. It&amp;#039;s found in 95b61279.DUMB in LogBook.pak. The format name comes from the...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;The &amp;#039;&amp;#039;&amp;#039;TREE format&amp;#039;&amp;#039;&amp;#039; is used to set up the pause menu hierarchy in &amp;#039;&amp;#039;[[Metroid Prime 2: Echoes]]&amp;#039;&amp;#039;. It&amp;#039;s found in 95b61279.DUMB in LogBook.pak. The format name comes from the &amp;lt;code&amp;gt;TREE&amp;lt;/code&amp;gt; fourCC at the beginning of the file.&lt;br /&gt;
&lt;br /&gt;
{{research|minor|Unknown properties on SCSL and SCMN.}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
After the file header, the TREE format embeds a script layer using the [[Scriptable Layers (Metroid Prime 2)|scriptable layers]] 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;
! Name&lt;br /&gt;
! Notes&lt;br /&gt;
|-&lt;br /&gt;
| 0x0&lt;br /&gt;
| char[4]&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Magic&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &amp;lt;code&amp;gt;TREE&amp;lt;/code&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| 0x4&lt;br /&gt;
| u32&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Root Node Index&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| Points to a SCND object named RootTreeNode.&lt;br /&gt;
|-&lt;br /&gt;
| 0x8&lt;br /&gt;
| u8&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
| Value is 1&lt;br /&gt;
|-&lt;br /&gt;
| 0x9&lt;br /&gt;
| u32&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Instance Count&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Script Objects ==&lt;br /&gt;
&lt;br /&gt;
The TREE format uses script objects to set up the hierarchy. There are five object types present, each representing a different node type in the hierarchy: a category, a scan, an inventory item description, an options slider, or an options menu. There are a few common parameters to all these object types:&lt;br /&gt;
&lt;br /&gt;
* They all include [[EditorParameters]], which contains an instance name, an &amp;quot;active&amp;quot; flag, and a position/rotation/scale, even though none of them actually needs it.&lt;br /&gt;
* Every node has a name. In the data, this is represented with a resource ID for a [[STRG (Metroid Prime)|STRG file]] that the name of one of the strings in that file. The name is used to look up the actual string, which is then displayed ingame in the pause menu.&lt;br /&gt;
&lt;br /&gt;
=== SCND (Category) ===&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;SCND&amp;lt;/code&amp;gt; object represents a category. Categories don&amp;#039;t have very many properties; they do most of their work through the connections system instead. Category nodes are able to use their connections to mark other nodes as children. They do this by sending the message &amp;#039;&amp;#039;Attach&amp;#039;&amp;#039; (&amp;lt;code&amp;gt;ATCH&amp;lt;/code&amp;gt;) to the target child node on state &amp;#039;&amp;#039;Connect&amp;#039;&amp;#039; (&amp;lt;code&amp;gt;CONN&amp;lt;/code&amp;gt;). The progress bars that appear on the right side of the &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Property ID&lt;br /&gt;
! Type&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x255A4580&lt;br /&gt;
| struct&lt;br /&gt;
| [[EditorProperties]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x46219BAC&lt;br /&gt;
| [[STRG (Metroid Prime)|STRG]]&lt;br /&gt;
| Name String Table&lt;br /&gt;
|-&lt;br /&gt;
| 0x32698BD6&lt;br /&gt;
| string&lt;br /&gt;
| Name String Name&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== SCSN (Scan) ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;SCSN&amp;lt;/code&amp;gt; represents a scan node in the logbook. They&amp;#039;re initially invisible, but they appear when the player obtains the corresponding scan.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Property ID&lt;br /&gt;
! Type&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x255A4580&lt;br /&gt;
| struct&lt;br /&gt;
| [[EditorProperties]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x46219BAC&lt;br /&gt;
| [[STRG (Metroid Prime)|STRG]]&lt;br /&gt;
| Name String Table&lt;br /&gt;
|-&lt;br /&gt;
| 0x32698BD6&lt;br /&gt;
| string&lt;br /&gt;
| Name String Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x2DA1EC33&lt;br /&gt;
| struct&lt;br /&gt;
| [[ScannableParameters]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== SCIN (Inventory) ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;SCIN&amp;lt;/code&amp;gt; works basically the same way as &amp;lt;code&amp;gt;SCSN&amp;lt;/code&amp;gt;, except it&amp;#039;s used to display descriptions of inventory items instead of logbook scans. The main difference is that &amp;lt;code&amp;gt;SCIN&amp;lt;/code&amp;gt; nodes have an inventory slot parameter; they&amp;#039;re initially hidden, and they appear when the player collects an upgrade in the corresponding slot.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Property ID&lt;br /&gt;
! Type&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x255A4580&lt;br /&gt;
| struct&lt;br /&gt;
| [[EditorProperties]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x46219BAC&lt;br /&gt;
| [[STRG (Metroid Prime)|STRG]]&lt;br /&gt;
| Name String Table&lt;br /&gt;
|-&lt;br /&gt;
| 0x32698BD6&lt;br /&gt;
| string&lt;br /&gt;
| Name String Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x3D326F90&lt;br /&gt;
| enum&lt;br /&gt;
| Inventory Slot&lt;br /&gt;
|-&lt;br /&gt;
| 0x2DA1EC33&lt;br /&gt;
| struct&lt;br /&gt;
| [[ScannableParameters]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== SCSL (Slider) ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;SCSL&amp;lt;/code&amp;gt; is used to represent a slider for the options menu.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Property ID&lt;br /&gt;
! Type&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x255A4580&lt;br /&gt;
| struct&lt;br /&gt;
| [[EditorProperties]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x46219BAC&lt;br /&gt;
| [[STRG (Metroid Prime)|STRG]]&lt;br /&gt;
| Name String Table&lt;br /&gt;
|-&lt;br /&gt;
| 0x32698BD6&lt;br /&gt;
| string&lt;br /&gt;
| Name String Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0261A4E0&lt;br /&gt;
| u32&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== SCMN (Menu) ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;SCMN&amp;lt;/code&amp;gt; represents a multiple-choice menu for the options menu. It supports up to four menu options, although the game only uses three.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Property ID&lt;br /&gt;
! Type&lt;br /&gt;
! Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x255A4580&lt;br /&gt;
| struct&lt;br /&gt;
| [[EditorProperties]]&lt;br /&gt;
|-&lt;br /&gt;
| 0x46219BAC&lt;br /&gt;
| [[STRG (Metroid Prime)|STRG]]&lt;br /&gt;
| Name String Table&lt;br /&gt;
|-&lt;br /&gt;
| 0x32698BD6&lt;br /&gt;
| string&lt;br /&gt;
| Name String Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x0261A4E0&lt;br /&gt;
| u32&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0xA6A874E9&lt;br /&gt;
| [[STRG (Metroid Prime)|STRG]]&lt;br /&gt;
| Menu Options String Table&lt;br /&gt;
|-&lt;br /&gt;
| 0x30531924&lt;br /&gt;
| string&lt;br /&gt;
| Option 1 String Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x50BCE632&lt;br /&gt;
| u32&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x01BB03B9&lt;br /&gt;
| string&lt;br /&gt;
| Option 2 String Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x420949DC&lt;br /&gt;
| u32&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0xA7CC080D&lt;br /&gt;
| string&lt;br /&gt;
| Option 3 String Name&lt;br /&gt;
|-&lt;br /&gt;
| 0xFAB52EB9&lt;br /&gt;
| u32&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|-&lt;br /&gt;
| 0x626B3683&lt;br /&gt;
| string&lt;br /&gt;
| Option 4 String Name&lt;br /&gt;
|-&lt;br /&gt;
| 0x67621600&lt;br /&gt;
| u32&lt;br /&gt;
| {{unknown|Unknown}}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Metroid Prime 2: Echoes]]&lt;br /&gt;
[[Category:File Formats]]&lt;/div&gt;</summary>
		<author><name>&gt;Aruki</name></author>
	</entry>
</feed>