<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.skytemple.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Deltaflare</id>
	<title>SkyTemple - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.skytemple.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Deltaflare"/>
	<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php/Special:Contributions/Deltaflare"/>
	<updated>2026-04-06T10:30:30Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.42.5</generator>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1473</id>
		<title>How to change textbox graphics (Window Frames)</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1473"/>
		<updated>2026-02-23T03:28:48Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* Gameplay Note */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See also: [[How to edit Team Stats graphics]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The window frames can be customized using the files from the &#039;&#039;&#039;Misc. Graphics&#039;&#039;&#039; section. In a nutshell, there are 5 frame styles for the top and bottom screens. These are labeled &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;FONT/frame_bX.chr&amp;lt;/code&amp;gt; respectively, with X being a number from 0 to 4.&lt;br /&gt;
&lt;br /&gt;
The visual design of the frames can be edited to your liking. But changing the colors as seen in-game requires editing certain color palettes, also called &#039;&#039;colormaps&#039;&#039;. A colormap is a set of colors specified in the image data, which the game uses to &amp;quot;map&amp;quot; what color values should be shown-on screen. Due to system limitations, each frame graphic palette can only have 16 total values (numbered 0-15, plus a teal transparency color).&lt;br /&gt;
&lt;br /&gt;
In the editor, each graphic can be viewed with the all 4 set of colors (by incrementing the &amp;quot;Palette Variant&amp;quot; number at the bottom of the image view). When exported, the image will reflect the ID chosen. For example, the image below was exported with ID 0 selected, causing it to appear blue.&lt;br /&gt;
[[File:Window frame colormap.png|alt=An image of a textbox window frame, showing the 4 available default colormaps|center|thumb|4 default palette rows, as seen in Libresprite]]&lt;br /&gt;
Each of these frames is exported from SkyTemple as an &#039;&#039;indexed image&#039;&#039; (where each color is assigned a number from 0 to 15) with 4 different palettes used in the colormap.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;ID 0&#039;&#039;&#039;: blue (male default)&lt;br /&gt;
* &#039;&#039;&#039;ID 1&#039;&#039;&#039;: pink (female default)&lt;br /&gt;
* &#039;&#039;&#039;ID 2&#039;&#039;&#039;: green (Special Episode default, and certain sequences like the personality quiz and main menu)&lt;br /&gt;
* &#039;&#039;&#039;ID 3&#039;&#039;&#039;: yellow (used to flash at low hunger)&lt;br /&gt;
&lt;br /&gt;
Edit these colors to alter the given palette! Note that teal and black should remain the same, as the editor uses those for transparency colors.&lt;br /&gt;
&lt;br /&gt;
== Tips ==&lt;br /&gt;
While the rows are unique, the colors share positions between palettes. This means that if the lightest blue is used anywhere in the frame, the lightest pink, green, and yellow respectively will appear in the same place when those palettes are used on-screen.&lt;br /&gt;
[[File:Frame window vertical example.png|center|thumb|160x160px|Color indices share same positions in every palette, from top down]]&lt;br /&gt;
&lt;br /&gt;
== Gameplay Note ==&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039; that the game is programmed to flash between the blue and pink palettes at low health. If these two are edited to be the same color, &#039;&#039;there will be no visual indicator of low health&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
Also, genderless or invalid species default to the using pink set of colors  (palette index 1) while in Dungeon Mode.&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_edit_Team_Stats_graphics&amp;diff=1472</id>
		<title>How to edit Team Stats graphics</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_edit_Team_Stats_graphics&amp;diff=1472"/>
		<updated>2026-02-23T03:24:18Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: team stats tutorial w images&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See also: [[How to change textbox graphics (Window Frames)]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The backgrounds for the Team Stats view can be edited in a similar way to the Window Frame graphics, though these are handled differently. Whereas the frame graphics had a single row for each color palette in use, the Team Stats graphics are split into two unique images: one indexed for male or female player use, and one for Special Episodes. These can be found in the &#039;&#039;&#039;Backgrounds&#039;&#039;&#039; section, as &amp;lt;code&amp;gt;DUNGEON/sub.bgp&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;DUNGEON/sub2bgp&amp;lt;/code&amp;gt; respectfully. Export these by using &#039;&#039;&#039;Background &amp;gt; Export&#039;&#039;&#039; in the top of the image view.&lt;br /&gt;
&lt;br /&gt;
The visual design of either can be edited to your liking. But changing the colors as seen in-game requires editing certain color palettes, also called &#039;&#039;colormaps&#039;&#039;. A colormap is a set of colors specified in the image data, which the game uses to &amp;quot;map&amp;quot; what color values should be shown-on screen. These colormaps have three unique sets, as seen below.&amp;lt;gallery widths=&amp;quot;200&amp;quot; heights=&amp;quot;200&amp;quot;&amp;gt;&lt;br /&gt;
File:Team Stats graphics mf.png|default Team Stats palette (blue/pink)&lt;br /&gt;
File:Team Stats graphics se.png|Special Episode Team Stats palette (only green used)&lt;br /&gt;
&amp;lt;/gallery&amp;gt;Note that brown checkered pattern included in the PNG will appear tiled beneath &#039;&#039;all other window frames used&#039;&#039;, aside from the Team Stats view itself. This can also be edited as needed, provided the pattern is the same size as the original.&lt;br /&gt;
&lt;br /&gt;
The gold colors are used for the spotlight effect where the character sprite is displayed.&lt;br /&gt;
&lt;br /&gt;
== Gameplay Note ==&lt;br /&gt;
As of now, it appears the use of the Team Stats graphics is limited to two colors (as opposed to the frames having four). As sub2.bpg is a separate image used for Special Episodes, genderless or invalid characters default to the blue set of colors. Also, the 1/2/3/4 number graphic is not able to be exported from SkyTemple.&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1471</id>
		<title>How to change textbox graphics (Window Frames)</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1471"/>
		<updated>2026-02-23T03:17:46Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* Tips */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See also: [[How to edit Team Stats graphics]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The window frames can be customized using the files from the &#039;&#039;&#039;Misc. Graphics&#039;&#039;&#039; section. In a nutshell, there are 5 frame styles for the top and bottom screens. These are labeled &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;FONT/frame_bX.chr&amp;lt;/code&amp;gt; respectively, with X being a number from 0 to 4.&lt;br /&gt;
&lt;br /&gt;
The visual design of the frames can be edited to your liking. But changing the colors as seen in-game requires editing certain color palettes, also called &#039;&#039;colormaps&#039;&#039;. A colormap is a set of colors specified in the image data, which the game uses to &amp;quot;map&amp;quot; what color values should be shown-on screen. Due to system limitations, each frame graphic palette can only have 16 total values (numbered 0-15, plus a teal transparency color).&lt;br /&gt;
&lt;br /&gt;
In the editor, each graphic can be viewed with the all 4 set of colors (by incrementing the &amp;quot;Palette Variant&amp;quot; number at the bottom of the image view). When exported, the image will reflect the ID chosen. For example, the image below was exported with ID 0 selected, causing it to appear blue.&lt;br /&gt;
[[File:Window frame colormap.png|alt=An image of a textbox window frame, showing the 4 available default colormaps|center|thumb|4 default palette rows, as seen in Libresprite]]&lt;br /&gt;
Each of these frames is exported from SkyTemple as an &#039;&#039;indexed image&#039;&#039; (where each color is assigned a number from 0 to 15) with 4 different palettes used in the colormap.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;ID 0&#039;&#039;&#039;: blue (male default)&lt;br /&gt;
* &#039;&#039;&#039;ID 1&#039;&#039;&#039;: pink (female default)&lt;br /&gt;
* &#039;&#039;&#039;ID 2&#039;&#039;&#039;: green (Special Episode default, and certain sequences like the personality quiz and main menu)&lt;br /&gt;
* &#039;&#039;&#039;ID 3&#039;&#039;&#039;: yellow (used to flash at low hunger)&lt;br /&gt;
&lt;br /&gt;
Edit these colors to alter the given palette! Note that teal and black should remain the same, as the editor uses those for transparency colors.&lt;br /&gt;
&lt;br /&gt;
== Tips ==&lt;br /&gt;
While the rows are unique, the colors share positions between palettes. This means that if the lightest blue is used anywhere in the frame, the lightest pink, green, and yellow respectively will appear in the same place when those palettes are used on-screen.&lt;br /&gt;
[[File:Frame window vertical example.png|center|thumb|160x160px|Color indices share same positions in every palette, from top down]]&lt;br /&gt;
&lt;br /&gt;
== Gameplay Note ==&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039; that the game is programmed to flash between the blue and pink palettes at low health. If these two are edited to be the same color, &#039;&#039;there will be no visual indicator of low health&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
Also, genderless or invalid species default to the using pink set of colors (palette index 1).&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1470</id>
		<title>How to change textbox graphics (Window Frames)</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1470"/>
		<updated>2026-02-23T03:16:36Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: invalid mon note&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See also: [[How to edit Team Stats graphics]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The window frames can be customized using the files from the &#039;&#039;&#039;Misc. Graphics&#039;&#039;&#039; section. In a nutshell, there are 5 frame styles for the top and bottom screens. These are labeled &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;FONT/frame_bX.chr&amp;lt;/code&amp;gt; respectively, with X being a number from 0 to 4.&lt;br /&gt;
&lt;br /&gt;
The visual design of the frames can be edited to your liking. But changing the colors as seen in-game requires editing certain color palettes, also called &#039;&#039;colormaps&#039;&#039;. A colormap is a set of colors specified in the image data, which the game uses to &amp;quot;map&amp;quot; what color values should be shown-on screen. Due to system limitations, each frame graphic palette can only have 16 total values (numbered 0-15, plus a teal transparency color).&lt;br /&gt;
&lt;br /&gt;
In the editor, each graphic can be viewed with the all 4 set of colors (by incrementing the &amp;quot;Palette Variant&amp;quot; number at the bottom of the image view). When exported, the image will reflect the ID chosen. For example, the image below was exported with ID 0 selected, causing it to appear blue.&lt;br /&gt;
[[File:Window frame colormap.png|alt=An image of a textbox window frame, showing the 4 available default colormaps|center|thumb|4 default palette rows, as seen in Libresprite]]&lt;br /&gt;
Each of these frames is exported from SkyTemple as an &#039;&#039;indexed image&#039;&#039; (where each color is assigned a number from 0 to 15) with 4 different palettes used in the colormap.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;ID 0&#039;&#039;&#039;: blue (male default)&lt;br /&gt;
* &#039;&#039;&#039;ID 1&#039;&#039;&#039;: pink (female default)&lt;br /&gt;
* &#039;&#039;&#039;ID 2&#039;&#039;&#039;: green (Special Episode default, and certain sequences like the personality quiz and main menu)&lt;br /&gt;
* &#039;&#039;&#039;ID 3&#039;&#039;&#039;: yellow (used to flash at low hunger)&lt;br /&gt;
&lt;br /&gt;
Edit these colors to alter the given palette! Note that teal and black should remain the same, as the editor uses those for transparency colors.&lt;br /&gt;
&lt;br /&gt;
== Tips ==&lt;br /&gt;
While the rows are unique, the colors share positions between palettes. This means that if the lightest blue is used anywhere in the frame, the lightest pink, green, and yellow respectively will appear in the same place when those palettes are used on-screen.&lt;br /&gt;
[[File:Frame window vertical example.png|center|thumb|160x160px|Color indices share same positions in every palette, from top down]]&lt;br /&gt;
&lt;br /&gt;
== Gameplay Note ==&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039; that the game is programmed to flash between the blue and pink palettes at low health. If these two are edited to be the same color, &#039;&#039;there will be no visual indicator of low health&#039;&#039;!&lt;br /&gt;
&lt;br /&gt;
Also, genderless or invalid species default to the using blue set of colors (palette index 0).&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1469</id>
		<title>How to change textbox graphics (Window Frames)</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1469"/>
		<updated>2026-02-23T03:12:26Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: weird phrasing fix&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See also: [[How to edit Team Stats graphics]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The window frames can be customized using the files from the &#039;&#039;&#039;Misc. Graphics&#039;&#039;&#039; section. In a nutshell, there are 5 frame styles for the top and bottom screens. These are labeled &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;FONT/frame_bX.chr&amp;lt;/code&amp;gt; respectively, with X being a number from 0 to 4.&lt;br /&gt;
&lt;br /&gt;
The visual design of the frames can be edited to your liking. But changing the colors as seen in-game requires editing certain color palettes, also called &#039;&#039;colormaps&#039;&#039;. A colormap is a set of colors specified in the image data, which the game uses to &amp;quot;map&amp;quot; what color values should be shown-on screen. Due to system limitations, each frame graphic palette can only have 16 total values (numbered 0-15, plus a teal transparency color).&lt;br /&gt;
&lt;br /&gt;
In the editor, each graphic can be viewed with the all 4 set of colors (by incrementing the &amp;quot;Palette Variant&amp;quot; number at the bottom of the image view). When exported, the image will reflect the ID chosen. For example, the image below was exported with ID 0 selected, causing it to appear blue.&lt;br /&gt;
[[File:Window frame colormap.png|alt=An image of a textbox window frame, showing the 4 available default colormaps|center|thumb|4 default palette rows, as seen in Libresprite]]&lt;br /&gt;
Each of these frames is exported from SkyTemple as an &#039;&#039;indexed image&#039;&#039; (where each color is assigned a number from 0 to 15) with 4 different palettes used in the colormap.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;ID 0&#039;&#039;&#039;: blue (male default)&lt;br /&gt;
* &#039;&#039;&#039;ID 1&#039;&#039;&#039;: pink (female default)&lt;br /&gt;
* &#039;&#039;&#039;ID 2&#039;&#039;&#039;: green (Special Episode default, and certain sequences like the personality quiz and main menu)&lt;br /&gt;
* &#039;&#039;&#039;ID 3&#039;&#039;&#039;: yellow (used to flash at low hunger)&lt;br /&gt;
&lt;br /&gt;
Edit these colors to alter the given palette! Note that teal and black should remain the same, as the editor uses those for transparency colors.&lt;br /&gt;
&lt;br /&gt;
== Tips ==&lt;br /&gt;
While the rows are unique, the colors share positions between palettes. This means that if the lightest blue is used anywhere in the frame, the lightest pink, green, and yellow respectively will appear in the same place when those palettes are used on-screen.&lt;br /&gt;
[[File:Frame window vertical example.png|center|thumb|160x160px|Color indices share same positions in every palette, from top down]]&lt;br /&gt;
&lt;br /&gt;
== Gameplay Note ==&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039; that the game is programmed to flash between the blue and pink palettes at low health. If these two are edited to be the same color, &#039;&#039;there will be no visual indicator of low health&#039;&#039;!&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Team_Stats_graphics_se.png&amp;diff=1468</id>
		<title>File:Team Stats graphics se.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Team_Stats_graphics_se.png&amp;diff=1468"/>
		<updated>2026-02-23T03:06:14Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Team_Stats_graphics_mf.png&amp;diff=1467</id>
		<title>File:Team Stats graphics mf.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Team_Stats_graphics_mf.png&amp;diff=1467"/>
		<updated>2026-02-23T03:05:19Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1466</id>
		<title>How to change textbox graphics (Window Frames)</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_change_textbox_graphics_(Window_Frames)&amp;diff=1466"/>
		<updated>2026-02-23T02:51:02Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: textbox tutorial w images&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;See also: [[How to edit Team Stats graphics]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The window frames can be customized using the files from the &#039;&#039;&#039;Misc. Graphics&#039;&#039;&#039; section. In a nutshell, there are 5 frame styles for the top and bottom screens. These are labeled &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;FONT/frame_bX.chr&amp;lt;/code&amp;gt; respectively, with X being a number from 0 to 4.&lt;br /&gt;
&lt;br /&gt;
The visual design of the frames can be edited as desired. But changing the colors as seen in-game requires editing certain color palettes, also called &#039;&#039;colormaps&#039;&#039;. A colormap is a set of colors specified in the image data, which the game uses to &amp;quot;map&amp;quot; what color values should be shown-on screen. Due to system limitations, each frame graphic palette can only have 16 total values (numbered 0-15, plus a teal transparency color).&lt;br /&gt;
&lt;br /&gt;
In the editor, each graphic can be viewed with the all 4 set of colors (by incrementing the &amp;quot;Palette Variant&amp;quot; number at the bottom of the image view). When exported, the image will reflect the ID chosen. For example, the image below was exported with ID 0 selected, causing it to appear blue.&lt;br /&gt;
[[File:Window frame colormap.png|alt=An image of a textbox window frame, showing the 4 available default colormaps|center|thumb|4 default palette rows, as seen in Libresprite]]&lt;br /&gt;
Each of these frames is exported from SkyTemple as an &#039;&#039;indexed image&#039;&#039; (where each color is assigned a number from 0 to 15) with 4 different palettes used in the colormap.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;ID 0&#039;&#039;&#039;: blue (male default)&lt;br /&gt;
* &#039;&#039;&#039;ID 1&#039;&#039;&#039;: pink (female default)&lt;br /&gt;
* &#039;&#039;&#039;ID 2&#039;&#039;&#039;: green (Special Episode default, and certain sequences like the personality quiz and main menu)&lt;br /&gt;
* &#039;&#039;&#039;ID 3&#039;&#039;&#039;: yellow (used to flash at low hunger)&lt;br /&gt;
&lt;br /&gt;
Edit these colors to alter the given palette! Note that teal and black should remain the same, as the editor uses those for transparency colors.&lt;br /&gt;
&lt;br /&gt;
== Tips ==&lt;br /&gt;
While the rows are unique, the colors share positions between palettes. This means that if the lightest blue is used anywhere in the frame, the lightest pink, green, and yellow respectively will appear in the same place when those palettes are used on-screen.&lt;br /&gt;
[[File:Frame window vertical example.png|center|thumb|160x160px|Color indices share same positions in every palette, from top down]]&lt;br /&gt;
&lt;br /&gt;
== Gameplay Note ==&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039; that the game is programmed to flash between the blue and pink palettes at low health. If these two are edited to be the same color, &#039;&#039;there will be no visual indicator of low health&#039;&#039;!&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Frame_window_vertical_example.png&amp;diff=1465</id>
		<title>File:Frame window vertical example.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Frame_window_vertical_example.png&amp;diff=1465"/>
		<updated>2026-02-23T02:40:38Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Color indices share same positions, from top down&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Window_frame_colormap.png&amp;diff=1464</id>
		<title>File:Window frame colormap.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Window_frame_colormap.png&amp;diff=1464"/>
		<updated>2026-02-23T02:16:32Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;4 palette colormaps, as seen in Libresprite&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=Item/Trap_Graphics&amp;diff=1398</id>
		<title>Item/Trap Graphics</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=Item/Trap_Graphics&amp;diff=1398"/>
		<updated>2025-12-26T22:23:43Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* Sprite Slots */ missed arrow icon, clarified dungeon palette&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Within the [[SkyTemple]] editor, graphics used by the game to render items and traps (including the Wonder Tile and stairs) can be edited.&lt;br /&gt;
&lt;br /&gt;
== Item Sprites ==&lt;br /&gt;
EoS has 120 slots (numbered 0 - 119) used for items and effect sprites in dungeons. Not all are permanent entries, some are updated at runtime with certain animations. In SkyTemple, slots 0 - 63 can always be seen. These are the sprites used for existing floor items. Slot 63 is unnused in the base game, and appears in SkyTemple as a blank, transparent sprite.&lt;br /&gt;
&lt;br /&gt;
=== Sprite Slots ===&lt;br /&gt;
It is possible to add custom item sprites without interfering with most existing ones. The valid, usable slots are &#039;&#039;italicized&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Slots 0 - 62&#039;&#039;&#039; are existing floor item sprites&lt;br /&gt;
** &#039;&#039;&#039;&#039;&#039;Slots 9, 45 and 48&#039;&#039;&#039;, containing the gear, shell and bone sprites, are unused in the vanilla game and can be replaced with new item sprites &#039;&#039;&#039;(3)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slot 63&#039;&#039;&#039; can be given a new item sprite &#039;&#039;&#039;(1)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Slots 64 - 81&#039;&#039;&#039; will always be replaced by the game at runtime with status animation sprites&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 82 - 95&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(14)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Edits to &#039;&#039;&#039;slots 96 - 103&#039;&#039;&#039; will &#039;&#039;permanently overwrite&#039;&#039; the sprites present in that row. Creating entries for these slots in SkyTemple (even if adding the correct sprites) &#039;&#039;will force the new sprites to use Palette 0 of the &amp;quot;dungeon effects palette&amp;quot;&#039;&#039; with no reliable way to change the ID&#039;&#039;.&#039;&#039; If trying to change Palette 0 to reflect desired colors, this can affect entries that may have had different colors originally assigned to them. These entries include slots:&lt;br /&gt;
** 96: small enemy shadow (black)&lt;br /&gt;
** 97: big enemy shadow (black)&lt;br /&gt;
** 98: small ally shadow  (yellow)&lt;br /&gt;
** 99: big ally shadow  (yellow)&lt;br /&gt;
** 100: big ally shadow  (yellow)&lt;br /&gt;
** 101: small arrow showing direction player is facing (seen when pressing Y)&lt;br /&gt;
** 102: small arrow showing direction player is facing (seen when pressing Y)&lt;br /&gt;
** 103: beta &amp;quot;for HP&amp;quot; text&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 104 - 107&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(4)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Slots 108 - 110&#039;&#039;&#039; will always be replaced by the game at runtime with water shadow animation sprites&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 111 - 119&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(9)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Any new entry after that slot (120+) will roll over into the next set of tiles, which will overwrite attack animation sprites. In total, there are &#039;&#039;&#039;31 slots&#039;&#039;&#039; available for custom item sprites.&lt;br /&gt;
&lt;br /&gt;
== Trap Sprites ==&lt;br /&gt;
&#039;&#039;Explorers of Sky&#039;&#039; has 35 slots (numbered 0 - 34) used for trap sprites in dungeons. Note that some interactive elements like Wonder Tiles and stairs are considered traps, though they are obviously not malicious. The sprites can be seen in &#039;&#039;Dungeon Graphics &amp;gt; Traps&#039;&#039;. These sprites only have 2 [[Item Data#Category and IDs|Palette IDs]] available. &lt;br /&gt;
&lt;br /&gt;
=== Sprite Slots ===&lt;br /&gt;
&lt;br /&gt;
# Blank (solid blue image)&lt;br /&gt;
# Mud Trap (uses Palette 1)&lt;br /&gt;
# Sticky Trap (uses Palette 1)&lt;br /&gt;
# Grimy Trap (uses Palette 1)&lt;br /&gt;
# Summon Trap (uses Palette 1)&lt;br /&gt;
# Pitfall Trap - unbroken (uses Palette 0)&lt;br /&gt;
# Warp Trap (uses Palette 1)&lt;br /&gt;
# Gust Trap (uses Palette 1)&lt;br /&gt;
# Spin Trap (uses Palette 1)&lt;br /&gt;
# Slumber Trap (uses Palette 1)&lt;br /&gt;
# Slow Trap (uses Palette 1)&lt;br /&gt;
# Seal Trap (uses Palette 1)&lt;br /&gt;
# Poison Trap (uses Palette 1)&lt;br /&gt;
# Selfdestruct Trap (uses Palette 1)&lt;br /&gt;
# Explosion Trap (uses Palette 1)&lt;br /&gt;
# PP-Zero Trap (uses Palette 1)&lt;br /&gt;
# Chestnut Trap (uses Palette 0)&lt;br /&gt;
# Wonder Tile (uses Palette 0)&lt;br /&gt;
# Pokémon Trap (uses Palette 1)&lt;br /&gt;
# Spiked Tile (uses Palette 0)&lt;br /&gt;
# Stealth Rock Trap (uses Palette 1)&lt;br /&gt;
# Toxic Spikes Trap (uses Palette 1)&lt;br /&gt;
# Trip Trap (uses Palette 0)&lt;br /&gt;
# Random Trap (uses Palette 1)&lt;br /&gt;
# Grudge Trap (uses Palette 1)&lt;br /&gt;
# Yellow floor grid outline (seen when pressing Y) (uses Palette 1)&lt;br /&gt;
# Pink floor grid outline showing direction player is facing (seen when pressing Y) (uses Palette 1)&lt;br /&gt;
# Stairs Down (uses Palette 0 or 1)&lt;br /&gt;
# Stairs Up (uses Palette 0 or 1)&lt;br /&gt;
# &amp;quot;P&amp;quot; Flag (uses Palette 1)&lt;br /&gt;
# Kecleon Shop carpet (uses Palette 1)&lt;br /&gt;
# Key Door (uses Palette 0 or 1)&lt;br /&gt;
# Pitfall Trap - broken (uses Palette 0)&lt;br /&gt;
# Blocked tile (uses Palette 1)&lt;br /&gt;
# Blank (solid blue image)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{NavSkyTemple}}&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=Item/Trap_Graphics&amp;diff=1397</id>
		<title>Item/Trap Graphics</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=Item/Trap_Graphics&amp;diff=1397"/>
		<updated>2025-12-26T20:36:26Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: added trap sprite slots&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Within the [[SkyTemple]] editor, graphics used by the game to render items and traps (including the Wonder Tile and stairs) can be edited.&lt;br /&gt;
&lt;br /&gt;
== Item Sprites ==&lt;br /&gt;
EoS has 120 slots (numbered 0 - 119) used for items and effect sprites in dungeons. Not all are permanent entries, some are updated at runtime with certain animations. In SkyTemple, slots 0 - 63 can always be seen. These are the sprites used for existing floor items. Slot 63 is unnused in the base game, and appears in SkyTemple as a blank, transparent sprite.&lt;br /&gt;
&lt;br /&gt;
=== Sprite Slots ===&lt;br /&gt;
It is possible to add custom item sprites without interfering with most existing ones. The valid, usable slots are &#039;&#039;italicized&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Slots 0 - 62&#039;&#039;&#039; are existing floor item sprites&lt;br /&gt;
** &#039;&#039;&#039;&#039;&#039;Slots 9, 45 and 48&#039;&#039;&#039;, containing the gear, shell and bone sprites, are unused in the vanilla game and can be replaced with new item sprites &#039;&#039;&#039;(3)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slot 63&#039;&#039;&#039; can be given a new item sprite &#039;&#039;&#039;(1)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Slots 64 - 81&#039;&#039;&#039; will always be replaced by the game at runtime with status animation sprites&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 82 - 95&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(14)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Edits to &#039;&#039;&#039;slots 96 - 103&#039;&#039;&#039; will &#039;&#039;permanently overwrite&#039;&#039; the sprites present in that row. Creating entries for these slots in SkyTemple (even if adding the correct sprites) &#039;&#039;will force the sprites to use Palette 0.&#039;&#039; This can affect entries that may have had different a palette originally assigned to them. For example, the ally shadows will no longer be shaded yellow, turning magenta instead. These entries include:&lt;br /&gt;
** 96: small enemy shadow (black)&lt;br /&gt;
** 97: big enemy shadow (black)&lt;br /&gt;
** 98: small ally shadow  (yellow) &lt;br /&gt;
** 99: big ally shadow  (yellow) &lt;br /&gt;
** 100: big ally shadow  (yellow) &lt;br /&gt;
** 101: small arrow?&lt;br /&gt;
** 102: small arrow?&lt;br /&gt;
** 103: beta &amp;quot;for HP&amp;quot; text&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 104 - 107&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(4)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Slots 108 - 110&#039;&#039;&#039; will always be replaced by the game at runtime with water shadow animation sprites&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 111 - 119&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(9)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Any new entry after that slot (120+) will roll over into the next set of tiles, which will overwrite attack animation sprites. In total, there are &#039;&#039;&#039;31 slots&#039;&#039;&#039; available for custom item sprites.&lt;br /&gt;
&lt;br /&gt;
== Trap Sprites ==&lt;br /&gt;
&#039;&#039;Explorers of Sky&#039;&#039; has 35 slots (numbered 0 - 34) used for trap sprites in dungeons. Note that some interactive elements like Wonder Tiles and stairs are considered traps, though they are obviously not malicious. The sprites can be seen in &#039;&#039;Dungeon Graphics &amp;gt; Traps&#039;&#039;. These sprites only have 2 [[Item Data#Category and IDs|Palette IDs]] available. &lt;br /&gt;
&lt;br /&gt;
=== Sprite Slots ===&lt;br /&gt;
&lt;br /&gt;
# Blank (solid blue image)&lt;br /&gt;
# Mud Trap (uses Palette 1)&lt;br /&gt;
# Sticky Trap (uses Palette 1)&lt;br /&gt;
# Grimy Trap (uses Palette 1)&lt;br /&gt;
# Summon Trap (uses Palette 1)&lt;br /&gt;
# Pitfall Trap - unbroken (uses Palette 0)&lt;br /&gt;
# Warp Trap (uses Palette 1)&lt;br /&gt;
# Gust Trap (uses Palette 1)&lt;br /&gt;
# Spin Trap (uses Palette 1)&lt;br /&gt;
# Slumber Trap (uses Palette 1)&lt;br /&gt;
# Slow Trap (uses Palette 1)&lt;br /&gt;
# Seal Trap (uses Palette 1)&lt;br /&gt;
# Poison Trap (uses Palette 1)&lt;br /&gt;
# Selfdestruct Trap (uses Palette 1)&lt;br /&gt;
# Explosion Trap (uses Palette 1)&lt;br /&gt;
# PP-Zero Trap (uses Palette 1)&lt;br /&gt;
# Chestnut Trap (uses Palette 0)&lt;br /&gt;
# Wonder Tile (uses Palette 0)&lt;br /&gt;
# Pokémon Trap (uses Palette 1)&lt;br /&gt;
# Spiked Tile (uses Palette 0)&lt;br /&gt;
# Stealth Rock Trap (uses Palette 1)&lt;br /&gt;
# Toxic Spikes Trap (uses Palette 1)&lt;br /&gt;
# Trip Trap (uses Palette 0)&lt;br /&gt;
# Random Trap (uses Palette 1)&lt;br /&gt;
# Grudge Trap (uses Palette 1)&lt;br /&gt;
# Yellow floor grid outline (seen when pressing Y) (uses Palette 1)&lt;br /&gt;
# Pink floor grid outline showing direction player is facing (seen when pressing Y) (uses Palette 1)&lt;br /&gt;
# Stairs Down (uses Palette 0 or 1)&lt;br /&gt;
# Stairs Up (uses Palette 0 or 1)&lt;br /&gt;
# &amp;quot;P&amp;quot; Flag (uses Palette 1)&lt;br /&gt;
# Kecleon Shop carpet (uses Palette 1)&lt;br /&gt;
# Key Door (uses Palette 0 or 1)&lt;br /&gt;
# Pitfall Trap - broken (uses Palette 0)&lt;br /&gt;
# Blocked tile (uses Palette 1)&lt;br /&gt;
# Blank (solid blue image)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{NavSkyTemple}}&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=Item_Data&amp;diff=1396</id>
		<title>Item Data</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=Item_Data&amp;diff=1396"/>
		<updated>2025-12-26T19:12:02Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* Text */ , missed word, context for action item vals&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &#039;&#039;Items&#039;&#039; section shows all items available in-game. SkyTemple offers the following sections for editing item properties.&lt;br /&gt;
&lt;br /&gt;
== Category and IDs ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sprite ID&#039;&#039;&#039;: sprite used when displaying this object in a dungeon&lt;br /&gt;
* &#039;&#039;&#039;Palette ID&#039;&#039;&#039;: set of colors used when displaying this object in a dungeon&lt;br /&gt;
* &#039;&#039;&#039;Item ID&#039;&#039;&#039;: self-explanatory&lt;br /&gt;
* &#039;&#039;&#039;Category&#039;&#039;&#039;: these are used when setting the item spawn settings on a dungeon floor&lt;br /&gt;
* &#039;&#039;&#039;Buy Price&#039;&#039;&#039;: Poké price at Kecleon Market&lt;br /&gt;
* &#039;&#039;&#039;Sell Price&#039;&#039;&#039;: Poké price at Kecleon Market&lt;br /&gt;
&lt;br /&gt;
=== Categories Available ===&lt;br /&gt;
&lt;br /&gt;
* Thrown – Pierce (item moves in a straight line)&lt;br /&gt;
* Thrown – Rock (item flies in an arc)&lt;br /&gt;
* Berries, Seeds, Vitamins&lt;br /&gt;
* Food, Gummies&lt;br /&gt;
* Hold (held items only)&lt;br /&gt;
* TMs, HMs&lt;br /&gt;
* Poké (Money)&lt;br /&gt;
* Unknown 7&lt;br /&gt;
* Other&lt;br /&gt;
* Orbs&lt;br /&gt;
* Link Boxes&lt;br /&gt;
* Used TM&lt;br /&gt;
* Treasure Box 1&lt;br /&gt;
* Treasure Box 2&lt;br /&gt;
* Treasure Box 3&lt;br /&gt;
* Exclusive Items&lt;br /&gt;
&lt;br /&gt;
== Text ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Name&#039;&#039;&#039;: self-explanatory&lt;br /&gt;
* &#039;&#039;&#039;Short description&#039;&#039;&#039;: used when hovering over the item in the Treasure Bag&lt;br /&gt;
* &#039;&#039;&#039;Long description&#039;&#039;&#039;: used when viewing the Info menu&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Move ID&#039;&#039;&#039;: The ID of a move that is associated with this item. &#039;&#039;Unless making a TM/HM, this should stay &#039;&#039;&#039;0&#039;&#039;&#039;.&#039;&#039; Example of TM Focus Punch vs. Stick (a stackable item):&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;420&amp;quot; heights=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
File:ST TM Example.png|alt=SkyTemple UI showing the General settings for the Focus Punch TM. This highlights that the Move ID field is set to 75, corresponding to the move Focus Punch.|Move ID is set to 75 (the ID for Focus Punch)&lt;br /&gt;
File:ST Stick Example Settings.png|alt=SkyTemple UI showing the General settings for the Stick item. This highlights that the Move ID field is set to 0 (no move is associated with it), and that it has stackable settings.|Move ID is set to 0&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Min Amount (for stackable items)&#039;&#039;&#039;: indicates the minimum amount you can get for 1 instance of that item.&lt;br /&gt;
* &#039;&#039;&#039;Max Amount (for stackable items)&#039;&#039;&#039;: indicates the maximum amount you can get for 1 instance of that item.&lt;br /&gt;
* &#039;&#039;&#039;Action Name&#039;&#039;&#039;: String displayed in dungeon menus. These can be changed in “Text Strings.”&lt;br /&gt;
&lt;br /&gt;
=== Default Action Item Values ===&lt;br /&gt;
&lt;br /&gt;
* 0: Use&lt;br /&gt;
* 1: Hurl&lt;br /&gt;
* 2: Throw&lt;br /&gt;
* 3: Equip&lt;br /&gt;
* 4: Eat&lt;br /&gt;
* 5: Ingest&lt;br /&gt;
* 6: Peel (meant for use with the &#039;&#039;Banana&#039;&#039; item seen in Rescue Team, which was removed in Explorers)&lt;br /&gt;
* 7: Use&lt;br /&gt;
* 8: Use&lt;br /&gt;
* 9: Use&lt;br /&gt;
* 10: Use&lt;br /&gt;
* 11 Equip&lt;br /&gt;
* 12: Equip&lt;br /&gt;
* 13: Use&lt;br /&gt;
* 14: Use&lt;br /&gt;
* 15: Use&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Is Valid&#039;&#039;&#039;: &#039;&#039;This should always be on if you want to use the item!&#039;&#039; Otherwise it cannot be added to the dungeon spawn menus, and will show up as a nonfunctional Plain Seed if manually added to the Treasure Bag.&lt;br /&gt;
* &#039;&#039;&#039;Is T/D&#039;&#039;&#039;: Is this item originally present in Time or Darkness versions?&lt;br /&gt;
* &#039;&#039;&#039;AI Flag: Throw at enemies&#039;&#039;&#039;: Do you want allies to throw this item at enemies? (ex: Gravelerocks or Sticks)&lt;br /&gt;
* &#039;&#039;&#039;AI Flag: Throw at allies&#039;&#039;&#039;: Do you want allies to throw this item at you or other allies? (ex: healing items)&lt;br /&gt;
* &#039;&#039;&#039;AI Flag: Use on self&#039;&#039;&#039;: Do you want allies to use this item on themselves? (ex: healing items)&lt;br /&gt;
{{NavSkyTemple}}&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=User:Deltaflare&amp;diff=1063</id>
		<title>User:Deltaflare</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=User:Deltaflare&amp;diff=1063"/>
		<updated>2025-05-28T16:31:27Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: Blanked the page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=List_of_Opcodes&amp;diff=1057</id>
		<title>List of Opcodes</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=List_of_Opcodes&amp;diff=1057"/>
		<updated>2025-04-22T01:04:36Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* 0xaa - message_SwitchMenu */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The scripting engine used in Explorers of Sky has different opcodes. [[ExplorerScript]] translates most of them literally, preserving the same parameters and functionality. However, some opcodes are translated to [[ExplorerScript]] constructs, such as if statements.&lt;br /&gt;
&lt;br /&gt;
This article documents the different opcodes, their purpose and parameters. The purpose of unkX parameters is unknown.&lt;br /&gt;
&lt;br /&gt;
== What is an opcode? ==&lt;br /&gt;
An opcode is an instruction to the machine (it tells the machine to &#039;do&#039; something). In modern programming, it would be most similar to a [https://en.wikipedia.org/wiki/Function_(computer_programming) function]. For a more technical description, see [https://en.wikipedia.org/wiki/Opcode here].&lt;br /&gt;
&lt;br /&gt;
== Types of parameters ==&lt;br /&gt;
* uint: An unsigned integer (a number without decimals). It cannot be negative. It is possible that in the game&#039;s code, there are only signed integers and no unsigned integers, but not enough research has been done on the matter. For the most part, it shouldn&#039;t matter.&lt;br /&gt;
* sint: A signed integer (a number without decimals). It can be either positive or negative.&lt;br /&gt;
* bitfield: A bitfield is uint where each bits (0 or 1) are treated independantly. They are used to store multiple binary (boolean) values efficiently. Opcodes that use it usually come in the &amp;lt;code&amp;gt;Set&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;Reset&amp;lt;/code&amp;gt; variant. The &amp;lt;code&amp;gt;Set&amp;lt;/code&amp;gt; variant define to true the values which are 1 in the input bitfield (while leaving the others untouched), and &amp;lt;code&amp;gt;Reset&amp;lt;/code&amp;gt; define to false the values which are 1 in the input bitfield (while also leaving the others untouched).&lt;br /&gt;
* String: Text (i.e dialogue). There should always be a quotation mark (&amp;quot;) at the beginning and end.&lt;br /&gt;
* ConstString: Same as String.&lt;br /&gt;
* Routine: Any of the 701 coroutines from [[Unionall]]. Always begins with &amp;quot;CORO_&amp;quot;&lt;br /&gt;
* Entity: An actor, performer. (not an object!)&lt;br /&gt;
* Object: An object in a scene. (not an actor or perfomer!)&lt;br /&gt;
* Level: Any level from the [[Script Engine|Level List]]. Will always begin with &amp;quot;LEVEL_&amp;quot;.&lt;br /&gt;
* Bgm: Any music in the game. Will always begin with &amp;quot;BGM_&amp;quot;. (example: BGM_CRAGGY_COAST)&lt;br /&gt;
* PositionMark: A position. Will be written as &amp;quot;Position&amp;lt;&#039;MarkName&#039;, x, y&amp;gt;&amp;quot;. Once a position mark is written in a script, SkyTemple will show an option to place it visually in the scene.&lt;br /&gt;
* Face: A portrait expression. Will always begin with &amp;quot;FACE_&amp;quot;. (examples: FACE_NORMAL, FACE_HAPPY, FACE_PAIN)&lt;br /&gt;
* FaceMode: A portrait position. Will always begin with &amp;quot;FACE_MODE_&amp;quot;.&lt;br /&gt;
* Direction: A direction for an entity to move in or turn to. Will always begin with &amp;quot;DIR_&amp;quot;. (examples: DIR_UP, DIR_RIGHT)&lt;br /&gt;
* ProcessSpecial: One of the games special processes. Can be referred to by its number, or name.&lt;br /&gt;
* Effect: A graphical effect.&lt;br /&gt;
* GameVar: Any of the game&#039;s [[List of Script Variables|Script Variables]]. Will always begin with &amp;quot;$&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Relevant Opcodes ==&lt;br /&gt;
These opcodes can be directly called from ExplorerScript.&lt;br /&gt;
&lt;br /&gt;
=== 0x0 - Null ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x1 - back_ChangeGround ===&lt;br /&gt;
Sets the Map Background from a Level without changing the chunks from the currently loaded Map Background. Entities such as actors, objects, and performers will not be deleted when this opcode is executed. &lt;br /&gt;
&lt;br /&gt;
This has very few uses in the game—a notable use is how Wigglytuff&#039;s Chamber has its door open, as seen via LEVEL_G01P04A and LEVEL_G01P04A2. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level_id&lt;br /&gt;
|An entry in the Level List. This opcode will pull from the Level&#039;s Map Background.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x2 - back_SetBackEffect ===&lt;br /&gt;
Performs various effects related to the currently loaded Animation Palettes.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|effect&lt;br /&gt;
|&lt;br /&gt;
# The default state of the Animation Palette.&lt;br /&gt;
# Plays the Animation Palette in a loop.&lt;br /&gt;
# Plays the Animation Palette once.&lt;br /&gt;
# Freezes the Animation Palette at its current frame.&lt;br /&gt;
# Resumes the Animation Palette.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x3 - back_SetBackScrollOffset ===&lt;br /&gt;
Shifts the background by a certain number of pixels, without affecting entities such as actors, objects, or performers. Backgrounds used with this opcode will display a &amp;quot;loop&amp;quot; effect, i.e., it has the appearance of scrolling forever.&lt;br /&gt;
&lt;br /&gt;
This opcode seems to only work for only a few Levels, such as LEVEL_P13P01A, LEVEL_S13P06A, and LEVEL_V03P11A.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|offset0&lt;br /&gt;
|The number of pixels to shift either:&lt;br /&gt;
&lt;br /&gt;
* The Map Background&#039;s Layer 1 and Layer 2 X-axis.&lt;br /&gt;
* The Map Background&#039;s Layer 1 X-axis.&lt;br /&gt;
&lt;br /&gt;
Which one the game performs for a given Level is hardcoded.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|offset1&lt;br /&gt;
|The number of pixels to shift either:&lt;br /&gt;
&lt;br /&gt;
* The Map Background&#039;s Layer 1 and Layer 2 Y-axis.&lt;br /&gt;
* The Map Background&#039;s Layer 2 X-axis.&lt;br /&gt;
&lt;br /&gt;
Which one the game performs for a given Level is hardcoded.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x4 - back_SetBackScrollSpeed ===&lt;br /&gt;
Continuously scrolls the background at a certain speed, without affecting entities such as actors, objects, or performers. Backgrounds used with this opcode will display a &amp;quot;loop&amp;quot; effect, i.e., it has the appearance of scrolling forever.&lt;br /&gt;
&lt;br /&gt;
This opcode seems to only work for only a few Levels, such as LEVEL_P13P01A, LEVEL_S13P06A, and LEVEL_V03P11A.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint16&lt;br /&gt;
|speed0&lt;br /&gt;
|The speed to scroll either:&lt;br /&gt;
&lt;br /&gt;
* The Map Background&#039;s Layer 1 and Layer 2 X-axis.&lt;br /&gt;
* The Map Background&#039;s Layer 1 X-axis.&lt;br /&gt;
&lt;br /&gt;
Which one the game performs for a given Level seems to be hardcoded.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint16&lt;br /&gt;
|speed1&lt;br /&gt;
|The speed to scroll either:&lt;br /&gt;
&lt;br /&gt;
* The Map Background&#039;s Layer 1 and Layer 2 Y-axis.&lt;br /&gt;
* The Map Background&#039;s Layer 2 X-axis.&lt;br /&gt;
&lt;br /&gt;
Which one the game performs for a given Level seems to be hardcoded.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x5 - back_SetBanner ===&lt;br /&gt;
Displays broken text using the &amp;lt;code&amp;gt;FONT/banner.bin:FONT/b_pal.bin&amp;lt;/code&amp;gt; font, editable in the Misc. Graphics tab of SkyTemple. This opcode will delete any actors, objects, and performers that are currently loaded.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|chapter_number&lt;br /&gt;
|The chapter number displayed for the banner. A value of -1 will be &amp;quot;Final Chapter&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x6 - back_SetBanner2 ===&lt;br /&gt;
Displays text using the &amp;lt;code&amp;gt;FONT/banner.bin:FONT/b_pal.bin&amp;lt;/code&amp;gt; font, editable in the Misc. Graphics tab of SkyTemple. This opcode is typically used for chapter introductions, which includes chapter text and a subtitle displayed over a Map Background. This opcode will delete any actors, objects, and performers that are currently loaded.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level&lt;br /&gt;
|An entry in the Level List. This opcode will pull from the Level&#039;s Map Background.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown. Typically, the game uses 0 for this parameter, but it seems to have no effect.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|x&lt;br /&gt;
|The pixel position the camera will center the Map Background on its X-axis.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|y&lt;br /&gt;
|The pixel position the camera will center the Map Background on its Y-axis.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|sint&lt;br /&gt;
|chapter_number&lt;br /&gt;
|The chapter number displayed for the banner. A value of -1 will be &amp;quot;Final Chapter&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|String&lt;br /&gt;
|title&lt;br /&gt;
|The title of the chapter, e.g., &amp;quot;A Storm At Sea&amp;quot; for Chapter 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x7 - back_SetEffect ===&lt;br /&gt;
Performs various effects related to the current Map Background&#039;s layers across a certain number of frames.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|effect&lt;br /&gt;
|&lt;br /&gt;
* Transitions from Layer 2 to Layer 1.&lt;br /&gt;
* Fades in Layer 1 from total darkness.&lt;br /&gt;
* Transitions from Layer 2 to Layer 1.&lt;br /&gt;
* Fades in Layer 1 from total darkness.&lt;br /&gt;
* Transitions from Layer 1 to Layer 2.&lt;br /&gt;
* Fades out Layer 1 to total darkness.&lt;br /&gt;
* Merges Layer 1 onto Layer 2, but fades in Layer 1 from total darkness.&lt;br /&gt;
* Fades in Layer 1 from total darkness.&lt;br /&gt;
* Merges Layer onto Layer 2, but fades out Layer 1 to total darkness.&lt;br /&gt;
* Fades out Layer 1 to total darkness.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to play a given effect.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
=== 0x8 - back_SetDungeonBanner ===&lt;br /&gt;
Displays a specific string using the &amp;lt;code&amp;gt;FONT/banner.bin:FONT/b_pal.bin&amp;lt;/code&amp;gt; font, editable in the Misc. Graphics tab of SkyTemple. The text chosen is defined in Dungeons tab as a dungeon&#039;s &amp;lt;code&amp;gt;back_SetDungeonBanner&amp;lt;/code&amp;gt; string. This opcode will delete any actors, objects, and performers that are currently loaded.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|dungeon_id&lt;br /&gt;
|The ID of a dungeon, as listed in the Dungeons tab of SkyTemple.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown. Does not seem to affect much.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x9 - back_SetGround ===&lt;br /&gt;
Sets the Map Background from a Level. Upon using this opcode, the variable &amp;lt;code&amp;gt;$GROUND_MAP&amp;lt;/code&amp;gt; will be updated to match the ID of the chosen Level. This opcode will delete any actors, objects, and performers that are currently loaded.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level_id&lt;br /&gt;
|An entry in the Level List. This opcode will pull from the Level&#039;s Map Background.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xa - back_SetSpecialEpisodeBanner ===&lt;br /&gt;
Displays text using the &amp;lt;code&amp;gt;FONT/banner.bin:FONT/b_pal.bin&amp;lt;/code&amp;gt; font, editable in the Misc. Graphics tab of SkyTemple. This opcode is used for Special Episodes 1-3. This opcode plays a short animation of a green line shooting across the screen, followed by text scrolling across the screen horizontally from opposite directions. This opcode will delete any actors, objects, and performers that are currently loaded.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|episode_number&lt;br /&gt;
|The episode number displayed for the banner. A value of -1 will be &amp;quot;Final Chapter&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|String&lt;br /&gt;
|title&lt;br /&gt;
|The title of the episode, e.g., &amp;quot;Bidoof&#039;s Wish&amp;quot; for Special Episode 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb - back_SetSpecialEpisodeBanner2 ===&lt;br /&gt;
Displays text using the &amp;lt;code&amp;gt;FONT/banner_c.bin:FONT/b_pal_r.bin&amp;lt;/code&amp;gt; font, editable in the Misc. Graphics tab of SkyTemple. This opcode is only used for Special Episode 4. This opcode features an elaborate animation featuring hearts and sparkles, along with text scrolling across the screen horizontally from opposite directions. This opcode will delete any actors, objects, and performers that are currently loaded.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|episode_number&lt;br /&gt;
|The episode number displayed for the banner. A value of -1 will be &amp;quot;Final Chapter&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|String&lt;br /&gt;
|title&lt;br /&gt;
|The title of the episode, e.g., &amp;quot;Bidoof&#039;s Wish&amp;quot; for Special Episode 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc - back_SetSpecialEpisodeBanner3 ===&lt;br /&gt;
Displays text using the &amp;lt;code&amp;gt;FONT/banner.bin:FONT/b_pal.bin&amp;lt;/code&amp;gt; font, editable in the Misc. Graphics tab of SkyTemple. This opcode is only used for Special Episode 5. This opcode features no animation, but the end result is similar to the opcode &amp;lt;code&amp;gt;back_SetSpecialEpisodeBanner&amp;lt;/code&amp;gt;. This opcode will delete any actors, objects, and performers that are currently loaded.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|episode_number&lt;br /&gt;
|The episode number displayed for the banner. A value of -1 will be &amp;quot;Final Chapter&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|String&lt;br /&gt;
|title&lt;br /&gt;
|The title of the episode, e.g., &amp;quot;Bidoof&#039;s Wish&amp;quot; for Special Episode 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd - back_SetTitleBanner ===&lt;br /&gt;
Displays user-defined text using the &amp;lt;code&amp;gt;FONT/banner.bin:FONT/b_pal.bin&amp;lt;/code&amp;gt; font, editable in the Misc. Graphics tab of SkyTemple. This opcode will delete any actors, objects, and performers that are currently loaded.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|y&lt;br /&gt;
|The Y-axis pixel position of the title.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|String&lt;br /&gt;
|title&lt;br /&gt;
|The title displayed on the Touch Screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe - back_SetWeather ===&lt;br /&gt;
Displays a weather effect that overlays the current Map Background.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|weather_id&lt;br /&gt;
|Values of 0 and below mean no weather effect is to be displayed.&lt;br /&gt;
&lt;br /&gt;
# Dark, unmoving clouds.&lt;br /&gt;
# Dark, unmoving clouds.&lt;br /&gt;
# Clouds.&lt;br /&gt;
# No weather.&lt;br /&gt;
# Clouds.&lt;br /&gt;
# Unknown; seems to either softlock the game or drastically change the current Map Background.&lt;br /&gt;
# Fog.&lt;br /&gt;
# No weather.&lt;br /&gt;
# Unknown; does not seem to have a visible effect, but it loads something into memory.&lt;br /&gt;
# Unknown; seems to either softlock the game or drastically change the current Map Background.&lt;br /&gt;
# Purple smog.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf - back_SetWeatherEffect ===&lt;br /&gt;
Currently unknown. The only values this opcode accepts seems to be 1, 2, and 3. Its only known use is in V00P02/m01a04a.ssb, which is a test script used by the developers.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x10 - back_SetWeatherScrollOffset ===&lt;br /&gt;
Currently unknown. This opcode is not used in the base game.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x11 - back_SetWeatherScrollSpeed ===&lt;br /&gt;
Currently unknown. This opcode is not used in the base game.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x12 - back2_SetBackEffect ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;back_SetBackEffect&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|effect_id&lt;br /&gt;
|&lt;br /&gt;
# The default state of the Animation Palette.&lt;br /&gt;
# Plays the Animation Palette in a loop.&lt;br /&gt;
# Plays the Animation Palette once.&lt;br /&gt;
# Freezes the Animation Palette at its current frame.&lt;br /&gt;
# Resumes the Animation Palette.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x13 - back2_SetBackScrollOffset ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;back_SetBackScrollOffset&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|offset0&lt;br /&gt;
|The number of pixels to shift either:&lt;br /&gt;
&lt;br /&gt;
* The Map Background&#039;s Layer 1 and Layer 2 X-axis.&lt;br /&gt;
* The Map Background&#039;s Layer 1 X-axis.&lt;br /&gt;
&lt;br /&gt;
Which one the game performs for a given Level seems to be hardcoded.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|offset1&lt;br /&gt;
|The number of pixels to shift either:&lt;br /&gt;
&lt;br /&gt;
* The Map Background&#039;s Layer 1 and Layer 2 Y-axis.&lt;br /&gt;
* The Map Background&#039;s Layer 2 X-axis.&lt;br /&gt;
&lt;br /&gt;
Which one the game performs for a given Level seems to be hardcoded.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x14 - back2_SetBackScrollSpeed ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;back_SetBackScrollSpeed&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|speed0&lt;br /&gt;
|The speed to scroll either:&lt;br /&gt;
&lt;br /&gt;
* The Map Background&#039;s Layer 1 and Layer 2 X-axis.&lt;br /&gt;
* The Map Background&#039;s Layer 1 X-axis.&lt;br /&gt;
&lt;br /&gt;
Which one the game performs for a given Level seems to be hardcoded.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|speed1&lt;br /&gt;
|The speed to scroll either:&lt;br /&gt;
&lt;br /&gt;
* The Map Background&#039;s Layer 1 and Layer 2 Y-axis.&lt;br /&gt;
* The Map Background&#039;s Layer 2 X-axis.&lt;br /&gt;
&lt;br /&gt;
Which one the game performs for a given Level seems to be hardcoded.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x15 - back2_SetData ===&lt;br /&gt;
Currently unknown. This opcode is not used in the base game.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x16 - back2_SetEffect ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;back_SetEffect&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|effect&lt;br /&gt;
|&lt;br /&gt;
* Transitions from Layer 2 to Layer 1.&lt;br /&gt;
* Fades in Layer 1 from total darkness.&lt;br /&gt;
* Transitions from Layer 2 to Layer 1.&lt;br /&gt;
* Fades in Layer 1 from total darkness.&lt;br /&gt;
* Transitions from Layer 1 to Layer 2.&lt;br /&gt;
* Fades out Layer 1 to total darkness.&lt;br /&gt;
* Merges Layer 1 onto Layer 2, but fades in Layer 1 from total darkness.&lt;br /&gt;
* Fades in Layer 1 from total darkness.&lt;br /&gt;
* Merges Layer onto Layer 2, but fades out Layer 1 to total darkness.&lt;br /&gt;
* Fades out Layer 1 to total darkness.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to play a given effect.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
=== 0x17 - back2_SetGround ===&lt;br /&gt;
Mostly the same as &amp;lt;code&amp;gt;back_SetGround&amp;lt;/code&amp;gt;, but for the Top Screen. This opcode only works if &amp;lt;code&amp;gt;back2_SetMode(4);&amp;lt;/code&amp;gt; is used prior to this opcode.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level_id&lt;br /&gt;
|An entry in the Level List. This opcode will pull from the Level&#039;s Map Background.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x18 - back2_SetMode ===&lt;br /&gt;
Determines a hardcoded status of the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|mode&lt;br /&gt;
|A value of 0 is no mode. A negative value seems to set the Top Screen to the overworld&#039;s current Top Screen setting.&lt;br /&gt;
&lt;br /&gt;
# Fades out the Top Screen.&lt;br /&gt;
# Team Stats.&lt;br /&gt;
# The Map Background S01P01A with the hero idling on a World Map Marker.&lt;br /&gt;
# Allows for the Top Screen to display a Map Background from a Level using the &amp;lt;code&amp;gt;back2_SetGround&amp;lt;/code&amp;gt; opcode.&lt;br /&gt;
# Splits the Map Background used in the Level defined by &amp;lt;code&amp;gt;back_SetGround&amp;lt;/code&amp;gt; equally between the Top and Touch Screen.&lt;br /&gt;
#Splits the Map Background used in the Level defined by &amp;lt;code&amp;gt;back_SetGround&amp;lt;/code&amp;gt; between the Top and Touch Screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x19 - back2_SetSpecialActing ===&lt;br /&gt;
Currently unknown.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x1a - back2_SetWeather ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;back_SetWeather&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|weather_id&lt;br /&gt;
|Values of 0 and below mean no weather effect is to be displayed.&lt;br /&gt;
&lt;br /&gt;
# Dark, unmoving clouds.&lt;br /&gt;
# Dark, unmoving clouds.&lt;br /&gt;
# Clouds.&lt;br /&gt;
# No weather.&lt;br /&gt;
# Clouds.&lt;br /&gt;
# Unknown; seems to either softlock the game or drastically change the current Map Background.&lt;br /&gt;
# Fog.&lt;br /&gt;
# No weather.&lt;br /&gt;
# Unknown; does not seem to have a visible effect, but it loads something into memory.&lt;br /&gt;
# Unknown; seems to either softlock the game or drastically change the current Map Background.&lt;br /&gt;
# Purple smog.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x1b - back2_SetWeatherEffect ===&lt;br /&gt;
Currently unknown. Potentially has similar functionality as &amp;lt;code&amp;gt;back_SetWeatherEffect&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x1c - back2_SetWeatherScrollOffset ===&lt;br /&gt;
Currently unknown. Potentially has similar functionality as &amp;lt;code&amp;gt;back_SetWeatherScrollOffset&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x1d - back2_SetWeatherScrollSpeed ===&lt;br /&gt;
Currently unknown. Potentially has similar functionality as &amp;lt;code&amp;gt;back_SetWeatherScrollSpeed&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x1e - bgm_FadeOut ===&lt;br /&gt;
Fades out the BGM that is currently playing over a certain period of time on the first BGM track.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade out and silence a given BGM.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x1f - bgm_Play ===&lt;br /&gt;
Instantly plays a BGM on the first BGM track.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Bgm&lt;br /&gt;
|bgm_id&lt;br /&gt;
|A music track defined in SOUND/BGM of the ROM.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x20 - bgm_PlayFadeIn ===&lt;br /&gt;
Starts playing a BGM over a certain period of time and at a certain volume on the first BGM track.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Bgm&lt;br /&gt;
|bgm_id&lt;br /&gt;
|A music track defined in SOUND/BGM of the ROM.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade in the BGM.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|volume&lt;br /&gt;
|The volume that the BGM will play at. It has a maximum of 256 and a minimum of 0.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x21 - bgm_Stop ===&lt;br /&gt;
Instantly stops the BGM that is currently playing on the first BGM track.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x22 - bgm_ChangeVolume ===&lt;br /&gt;
Changes the volume of the BGM that is currently playing on the first BGM track.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the BGM&#039;s volume.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|volume&lt;br /&gt;
|The volume that the BGM will play at. It has a maximum of 256 and a minimum of 0.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x23 - bgm2_FadeOut ===&lt;br /&gt;
Fades out the BGM that is currently playing over a certain period of time on the second BGM track.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade out and silence a given BGM.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x24 - bgm2_Play ===&lt;br /&gt;
Instantly plays a BGM on the second BGM track.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Bgm&lt;br /&gt;
|bgm_id&lt;br /&gt;
|A music track defined in SOUND/BGM of the ROM.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x25 - bgm2_PlayFadeIn ===&lt;br /&gt;
Starts playing a BGM over a certain period of time and at a certain volume on the second BGM track.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Bgm&lt;br /&gt;
|bgm_id&lt;br /&gt;
|A music track defined in SOUND/BGM of the ROM.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade in the BGM.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|volume&lt;br /&gt;
|The volume that the BGM will play at. It has a maximum of 256 and a minimum of 0.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x26 - bgm2_Stop ===&lt;br /&gt;
Instantly stops the BGM that is currently playing on the second BGM track.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x27 - bgm2_ChangeVolume ===&lt;br /&gt;
Changes the volume of the BGM that is currently playing on the second BGM track.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames to change the BGM&#039;s volume.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|volume&lt;br /&gt;
|The volume that the BGM will play at. It has a maximum of 256 and a minimum of 0.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x38 - CallCommon ===&lt;br /&gt;
Jumps to the specified Unionall Coroutine, runs its code, and returns to the line of code in which this opcode was used (only if &amp;lt;code&amp;gt;return;&amp;lt;/code&amp;gt; was used in the Coroutine). This opcode can be used in any script, no matter the type (Common, Enter, Acting, or Sub).&lt;br /&gt;
&lt;br /&gt;
If used in the context of an actor/object/performer, this should not be used in with-statements.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Routine&lt;br /&gt;
|coro_id&lt;br /&gt;
|One of the 701 possible Unionall Coroutines.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x39 - camera_Move2Default ===&lt;br /&gt;
Moves the camera toward an active Type 1 actor (e.g., ACTOR_PLAYER) without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x3a - camera_Move2MyPosition ===&lt;br /&gt;
Moves the camera toward a specific entity&#039;s position (i.e., an actor, object, or performer) without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x3b - camera_Move2Myself ===&lt;br /&gt;
Moves the camera toward a specific entity (i.e., an actor, object, or performer) without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x3c - camera_Move2PositionMark ===&lt;br /&gt;
Moves the camera to one or more Position Marks without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x3d - camera_Move2PositionMark ===&lt;br /&gt;
Moves the camera to a Position Mark without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x3e - camera_Move3Default ===&lt;br /&gt;
Moves the camera toward an active Type 1 actor (e.g., ACTOR_PLAYER) in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Supposedly movement speed based off of similar opcodes, but does not seem to affect much.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x3f - camera_Move3MyPosition ===&lt;br /&gt;
Moves the camera toward a specific entity&#039;s position (i.e., an actor, object, or performer) in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Supposedly movement speed based off of similar opcodes, but does not seem to affect much.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x40 - camera_Move3Myself ===&lt;br /&gt;
Moves the camera toward a specific entity (i.e., an actor, object, or performer) in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Supposedly movement speed based off of similar opcodes, but does not seem to affect much.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x41 - camera_Move3PositionMark ===&lt;br /&gt;
Moves the camera to one or more Position Marks in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x42 - camera_Move3PositionMark ===&lt;br /&gt;
Moves the camera to a Position Mark without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Supposedly movement speed based off of similar opcodes, but does not seem to affect much.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x43 - camera_MoveDefault ===&lt;br /&gt;
Moves the camera toward an active Type 1 actor (e.g., ACTOR_PLAYER) while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x44 - camera_MoveMyPosition ===&lt;br /&gt;
Moves the camera toward a specific entity&#039;s position (i.e., an actor, object, or performer) while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x45 - camera_MoveMyself ===&lt;br /&gt;
Moves the camera toward a specific entity (i.e., an actor, object, or performer) while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x46 - camera_MovePositionMark ===&lt;br /&gt;
Moves the camera to one or more Position Marks while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x47 - camera_MovePositionMark ===&lt;br /&gt;
Moves the camera to a Position Mark while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x48 - camera_SetDefault ===&lt;br /&gt;
Instantly sets the camera to a Type 1 actor (e.g., ACTOR_PLAYER).&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x49 - camera_SetEffect ===&lt;br /&gt;
Continuously shakes the camera at specified intensities. Entities will be affected by the camera shaking, but not textboxes and portraits. The camera will continue to shake even if it is moved using another opcode.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|mode&lt;br /&gt;
|Values of 0 or 3+ mean the camera will not shake.&lt;br /&gt;
&lt;br /&gt;
# Erratic, jerky shaking.&lt;br /&gt;
# Subdued, smoother shaking.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|intensity&lt;br /&gt;
|The intensity of the shake. Higher values will result in a more intense shake.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a slower speed.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x4a - camera_SetMyPosition ===&lt;br /&gt;
Instantly sets the camera toward a specific entity&#039;s position (i.e., an actor, object, or performer).&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x4b - camera_SetMyself ===&lt;br /&gt;
Instantly sets the camera to a specific entity (i.e., an actor, object, or performer). Once performed, the camera will now follow the entity wherever it moves.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x4c - camera_SetPositionMark ===&lt;br /&gt;
Instantly sets the camera to a Position Mark.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x4d - camera2_Move2Default ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move2Default&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x4e - camera2_Move2MyPosition ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move2MyPosition&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x4f - camera2_Move2Myself ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move2Myself&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x50 - camera2_Move2PositionMark ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move2PositionMark&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x51 - camera2_Move2PositionMark ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move2PositionMark&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x52 - camera2_Move3Default ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move3Default&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Supposedly movement speed based off of similar opcodes, but does not seem to affect much.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x53 - camera2_Move3MyPosition ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move3MyPosition&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Supposedly movement speed based off of similar opcodes, but does not seem to affect much.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x54 - camera2_Move3Myself ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move3Myself&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Supposedly movement speed based off of similar opcodes, but does not seem to affect much.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x55 - camera2_Move3PositionMark ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move3PositionMark&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x56 - camera2_Move3PositionMark ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_Move3PositionMark&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Supposedly movement speed based off of similar opcodes, but does not seem to affect much.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x57 - camera2_MoveDefault ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_MoveDefault&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x58 - camera2_MoveMyPosition ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_MoveMyPosition&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x59 - camera2_MoveMyself ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_MoveMyself&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x5a - camera2_MovePositionMark ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_MovePositionMark&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x5b - camera2_MovePositionMark ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_MovePositionMark&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x5c - camera2_SetDefault ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_SetDefault&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x5d - camera2_SetEffect ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_SetEffect&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|mode&lt;br /&gt;
|Values of 0 or 3+ mean the camera will not shake.&lt;br /&gt;
&lt;br /&gt;
# Erratic, jerky shaking.&lt;br /&gt;
# Subdued, smoother shaking.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|intensity&lt;br /&gt;
|The intensity of the shake. Higher values will result in a more intense shake.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a slower speed.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x5e - camera2_SetMyPosition ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_SetMyPosition&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x5f - camera2_SetMyself ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_SetMyself&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x60 - camera2_SetPositionMark ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;camera_SetPositionMark&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x61 - CancelCut ===&lt;br /&gt;
Reverses the effects of the opcode &amp;lt;code&amp;gt;CancelRecoverCommon&amp;lt;/code&amp;gt;, i.e., disallows the game from reloading Unionall at a Coroutine by pressing the Start button.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x62 - CancelRecoverCommon ===&lt;br /&gt;
Allows reloading Unionall at a specified Coroutine by pressing the Start button. This can be done in a cutscene and the overworld.&lt;br /&gt;
&lt;br /&gt;
Once the Start button is pressed, the game will stop the current script, fade out the entire screen, and reload Unionall and begin running code at the specified Coroutine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Routine&lt;br /&gt;
|coro_id&lt;br /&gt;
|One of the 701 possible Unionall Coroutines.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x6a - debug_Assert ===&lt;br /&gt;
Does nothing in the final game.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x6b - debug_Print ===&lt;br /&gt;
Does nothing in the final game.&lt;br /&gt;
&lt;br /&gt;
If the script is running using SkyTemple&#039;s debugger and the &amp;quot;Script Debug&amp;quot; checkbox is ticked, the specified string will be printed to the Debug Log.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|ConstString&lt;br /&gt;
|txt&lt;br /&gt;
|A string to be printed to the Debug Log.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x6c - debug_PrintFlag ===&lt;br /&gt;
Does nothing in the final game.&lt;br /&gt;
&lt;br /&gt;
If the script is running using SkyTemple&#039;s debugger and the &amp;quot;Script Debug&amp;quot; checkbox is ticked, the specified string will be printed to the Debug Log, along with the value of the specified script variable.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|One of the 115 possible script variables. Indexed variables are not encouraged to use, since the Debug Log will only read from the first index.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|ConstString&lt;br /&gt;
|txt&lt;br /&gt;
|A string to be printed to the Debug Log.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x6d - debug_PrintScenario ===&lt;br /&gt;
If the script is running using SkyTemple&#039;s debugger and the &amp;quot;Script Debug&amp;quot; checkbox is ticked, the specified string will be printed to the Debug Log, along with two indices of the specified script variable.&lt;br /&gt;
&lt;br /&gt;
This opcode&#039;s Debug Log implementation currently seems broken, as it prints the first index of the specified variable twice.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|One of the 115 possible script variables. A two-indexed variable (e.g., &amp;lt;code&amp;gt;$SCENARIO_MAIN&amp;lt;/code&amp;gt;) is encouraged to use.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|ConstString&lt;br /&gt;
|txt&lt;br /&gt;
|A string to be printed to the Debug Log.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x6f - Destroy ===&lt;br /&gt;
Instantly removes an active entity (i.e., an actor, object, or performer) from memory.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
&lt;br /&gt;
=== 0x71 - EndAnimation ===&lt;br /&gt;
Stops an actor or object&#039;s looping animation once it reaches the end of its animation frames.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x72 - ExecuteActing ===&lt;br /&gt;
Currently unknown.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x73 - ExecuteCommon ===&lt;br /&gt;
Jumps to a Unionall Coroutine, runs its code, and returns to the line in which this opcode was called. This opcode should be called if the specified Coroutine ends with &amp;lt;code&amp;gt;hold;&amp;lt;/code&amp;gt;. Typically, the base game uses this command with Coroutines whose names end with &amp;quot;FUNC_SERIES&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Routine&lt;br /&gt;
|coro_id&lt;br /&gt;
|One of the 701 possible Unionall Coroutines.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x81 - Flash ===&lt;br /&gt;
Zeroes-out the return address used by the &amp;lt;code&amp;gt;Return&amp;lt;/code&amp;gt; opcode. This opcode is not used in the base game.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x83 - item_GetVariable ===&lt;br /&gt;
Saves the value in a specific item slot (set by &amp;lt;code&amp;gt;item_Set&amp;lt;/code&amp;gt;) to a script variable.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|slot&lt;br /&gt;
|An item slot used by many &amp;lt;code&amp;gt;item_&amp;lt;/code&amp;gt; opcodes.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|One of the indexed variables. Non-indexed values causes the IndexError.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x84 - item_Set ===&lt;br /&gt;
Sets an item into an item slot, which can be used by other various &amp;lt;code&amp;gt;item_&amp;lt;/code&amp;gt; opcodes.&lt;br /&gt;
&lt;br /&gt;
Items in slot 0 may also be added to the player&#039;s bag and storage with hardcoded menus, such as &amp;lt;code&amp;gt;message_Menu(MENU_GIVE_ITEM);&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;message_Menu(MENU_GIVE_ITEM2);&amp;lt;/code&amp;gt;, respectively. Additionally, the text tag &amp;lt;code&amp;gt;[s_item:X]&amp;lt;/code&amp;gt; will display the item&#039;s name, where X is the item slot number.&lt;br /&gt;
&lt;br /&gt;
Item slots 0-3 are safe to use, but item slots 4 and beyond will begin to overwrite other memory!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|slot&lt;br /&gt;
|An item slot used by many &amp;lt;code&amp;gt;item_&amp;lt;/code&amp;gt; opcodes.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|item_id&lt;br /&gt;
|The ID of the item, where all are listed in the Items tab of SkyTemple. &lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|item_stack&lt;br /&gt;
|The stack count of an item, if it belongs to a Thrown category. Treasure Boxes will also use this as the item earned when opening the box at Xatu&#039;s Appraisal.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x85 - item_SetTableData ===&lt;br /&gt;
Sets a random item from predefined tables into an item slot, which can be used by other various &amp;lt;code&amp;gt;item_&amp;lt;/code&amp;gt; opcodes. This opcode is used mainly in Spinda&#039;s Cafe, for redeeming a random Recycle Shop prize and for receiving items from Treasure Town NPCs after giving them Sky Gifts.&lt;br /&gt;
&lt;br /&gt;
Items in slot 0 may also be added to the player&#039;s bag and storage with hardcoded menus, such as &amp;lt;code&amp;gt;message_Menu(MENU_GIVE_ITEM);&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;message_Menu(MENU_GIVE_ITEM2);&amp;lt;/code&amp;gt;, respectively. Additionally, the text tag &amp;lt;code&amp;gt;[s_item:X]&amp;lt;/code&amp;gt; will display the item&#039;s name, where X is the item slot number.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|slot&lt;br /&gt;
|An item slot used by many &amp;lt;code&amp;gt;item_&amp;lt;/code&amp;gt; opcodes.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|table&lt;br /&gt;
|Some unknown item tables related to Spinda&#039;s Cafe.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x86 - item_SetVariable ===&lt;br /&gt;
Saves the value of a script variable to an item slot. Items in slot 0 may also be added to the player&#039;s bag and storage with hardcoded menus, such as &amp;lt;code&amp;gt;message_Menu(MENU_GIVE_ITEM);&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;message_Menu(MENU_GIVE_ITEM2);&amp;lt;/code&amp;gt;, respectively. Additionally, the text tag &amp;lt;code&amp;gt;[s_item:X]&amp;lt;/code&amp;gt; will display the item&#039;s name, where X is the item slot number.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|slot&lt;br /&gt;
|An item slot used by many &amp;lt;code&amp;gt;item_&amp;lt;/code&amp;gt; opcodes.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|One of the 115 possible script variables.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x88 - JumpCommon ===&lt;br /&gt;
Jumps to the specified Unionall Coroutine and runs its code, without returning to the line in which this opcode was first used. This opcode can be used in any script, no matter the type (Common, Enter, Acting, or Sub), but is mostly used by the base game in Unionall.&lt;br /&gt;
&lt;br /&gt;
If attempting to execute a Unionall Coroutine from inside an Enter, Acting, or Sub script to play Acting scripts, use &amp;lt;code&amp;gt;supervision_ExecuteCommon&amp;lt;/code&amp;gt; instead.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Routine&lt;br /&gt;
|coro_id&lt;br /&gt;
|One of the 701 possible Unionall Coroutines.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x8a - LoadPosition ===&lt;br /&gt;
Sets various attributes of an entity (i.e., an actor, object, or performer) to the values of all indexed &amp;lt;code&amp;gt;$POSITION_&amp;lt;/code&amp;gt; script variables. These include changing the entity&#039;s X and Y coordinates, height, and direction.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|index&lt;br /&gt;
|Index used by all &amp;lt;code&amp;gt;$POSITION_&amp;lt;/code&amp;gt; script variables, ranged from 0-2 (inclusive).&lt;br /&gt;
|}&lt;br /&gt;
=== 0x8b - Lock ===&lt;br /&gt;
Suspends the current routine until the opcode &amp;lt;code&amp;gt;Unlock&amp;lt;/code&amp;gt; is called with the same &#039;&#039;lock_id&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|lock_id&lt;br /&gt;
|The ID of a Lock, ranged from 0-19 (inclusive).&lt;br /&gt;
|}&lt;br /&gt;
=== 0x8c - main_EnterAdventure ===&lt;br /&gt;
Performs various functions related to entering a dungeon using the crossroads menu.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|mode&lt;br /&gt;
|Most modes are not known, but:&lt;br /&gt;
&lt;br /&gt;
* 32767 opens the dungeon selection menu.&lt;br /&gt;
* 251 stops the current script to reload Unionall starting from the Coroutine CORO_MOVE_WORLD_MAP.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x8d - main_EnterDungeon ===&lt;br /&gt;
Attempts to exit ground mode and begins dungeon mode at a specific dungeon.&lt;br /&gt;
&lt;br /&gt;
If attempting to run this opcode before selecting any option from the Top Menu, the game will not enter any dungeon and instead attempt to load a DEMO Unionall coroutine or the Top Menu.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|dungeon_id&lt;br /&gt;
|The dungeon ID to enter, which are all listed in the Dungeons tab of SkyTemple. A value of -1 actually enters dungeon mode—it is insufficient to use this opcode a single time to enter a specific dungeon.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade out the screens.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x8e - main_EnterGround ===&lt;br /&gt;
Stops the current script to reload Unionall starting from the Coroutine CORO_EVENT_DIVIDE. This opcode also updates the following script variables:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_ENTER&amp;lt;/code&amp;gt;: This opcode&#039;s &#039;&#039;level_id_enter&#039;&#039; parameter.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_ENTER_LINK&amp;lt;/code&amp;gt;: Set to 0.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_GETOUT&amp;lt;/code&amp;gt;: The value of &amp;lt;code&amp;gt;$GROUND_ENTER&amp;lt;/code&amp;gt; prior to using this opcode.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_MAP&amp;lt;/code&amp;gt;: The Level ID used to display the Map Background.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_PLACE&amp;lt;/code&amp;gt;: The World Map Marker ID that determines where the player appears on the Top Screen when selecting &amp;quot;Map and team&amp;quot; in the overworld.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_START_MODE&amp;lt;/code&amp;gt;: Set to 3.&lt;br /&gt;
&lt;br /&gt;
In the base game, using this opcode allows for transitioning between Levels in the Overworld, as the game will eventually run the &amp;lt;code&amp;gt;supervision_ExecuteEnter&amp;lt;/code&amp;gt; opcode.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level_id&lt;br /&gt;
|An entry in the Level List. Ideally, this opcode would load the specified Level&#039;s Enter00 script.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade out the screens.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x8f - main_EnterGroundMulti ===&lt;br /&gt;
Stops the current script to reload Unionall starting from the Coroutine CORO_EVENT_DIVIDE. This opcode also updates the following script variables:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_ENTER&amp;lt;/code&amp;gt;: This opcode&#039;s &#039;&#039;level_id_enter&#039;&#039; parameter.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_ENTER_LINK&amp;lt;/code&amp;gt;: This opcode&#039;s &#039;&#039;level_id_link&#039;&#039; parameter.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_GETOUT&amp;lt;/code&amp;gt;: The value of &amp;lt;code&amp;gt;$GROUND_ENTER&amp;lt;/code&amp;gt; prior to using this opcode.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_MAP&amp;lt;/code&amp;gt;: The Level ID used to display the Map Background.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_PLACE&amp;lt;/code&amp;gt;: The World Map Marker ID that determines where the player appears on the Top Screen when selecting &amp;quot;Map and team&amp;quot; in the overworld.&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_START_MODE&amp;lt;/code&amp;gt;: Set to 3.&lt;br /&gt;
&lt;br /&gt;
In the base game, using this opcode allows for transitioning between Levels in the Overworld, as the game will eventually run the &amp;lt;code&amp;gt;supervision_ExecuteEnter&amp;lt;/code&amp;gt; opcode.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level_id_enter&lt;br /&gt;
|An entry in the Level List. Ideally, this opcode would load the specified Level&#039;s Enter00 script.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade out the screens.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Level&lt;br /&gt;
|level_id_link&lt;br /&gt;
|An entry in the Level List. Used to update &amp;lt;code&amp;gt;$GROUND_ENTER_LINK&amp;lt;/code&amp;gt;.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x90 - main_EnterRescueUser ===&lt;br /&gt;
Exits ground mode and begins dungeon mode while taking an SOS Mail. Dungeon selection seems to be determined by the SOS Mail chosen via &amp;lt;code&amp;gt;message_Menu(MENU_S_O_S_MAIL_PICKER);&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade out the screens.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x91 - main_EnterTraining ===&lt;br /&gt;
Performs various functions related to entering a dungeon using Marowak Dojo.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|mode&lt;br /&gt;
|Most modes are not known, but:&lt;br /&gt;
&lt;br /&gt;
* 32767 opens the generic dojo selection menu&lt;br /&gt;
* 251 goes to the Coroutine CORO_GOTO_TRAINING_DUNGEON, which later stops the current script to reload Unionall starting from the Coroutine CORO_ENTER_TRAINING_DUNGEON.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x92 - main_EnterTraining2 ===&lt;br /&gt;
Performs various functions related to entering a dungeon using Marowak Dojo&#039;s Final Maze.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|mode&lt;br /&gt;
|Most modes are not known, but:&lt;br /&gt;
&lt;br /&gt;
* 32767 opens a dojo selection menu that only involves Final Maze.&lt;br /&gt;
* 251 goes to the Coroutine CORO_GOTO_TRAINING_DUNGEON, which later stops the current script to reload Unionall starting from the Coroutine CORO_ENTER_TRAINING_DUNGEON.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x93 - main_SetGround ===&lt;br /&gt;
Updates the following variables&#039; values to be this opcode&#039;s &#039;&#039;level_id&#039;&#039; parameter:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_ENTER&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;$GROUND_GETOUT&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level_id&lt;br /&gt;
|An entry in the Level List.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x94 - me_Play ===&lt;br /&gt;
Instantly plays a special [[sound effect]] that can seamlessly interrupt any BGM tracks that are currently playing.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|me_id&lt;br /&gt;
|A sound effect defined in SOUND/ME of the ROM.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x95 - me_Stop ===&lt;br /&gt;
Instantly stops the currently-playing special [[sound effect]] called with &amp;lt;code&amp;gt;me_Play&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x96 - message_Close ===&lt;br /&gt;
Suspends the current routine and allows for closing an active textbox (and portrait, if active) set by one of the following opcodes:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;message_ImitationSound&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Mail&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Monologue&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Notice&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_SpecialTalk&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
By pressing the A Button, B Button, or tapping the textbox via the Touch Screen. Once the textbox is closed, the current routine resumes.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x97 - message_CloseEnforce ===&lt;br /&gt;
Instantly closes an active textbox (and portrait, if active) once the game finishes displaying a string set by one of the following opcodes:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;message_ImitationSound&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Mail&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Monologue&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Notice&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_SpecialTalk&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x98 - message_Explanation ===&lt;br /&gt;
Displays the string defined in the &#039;&#039;txt&#039;&#039; parameter centered in the middle of the Touch Screen. The string will appear without any frame defined in &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; (as seen in the Misc. Graphics tab of SkyTemple). This opcode does not need &amp;lt;code&amp;gt;message_Close&amp;lt;/code&amp;gt; to suspend the routine.&lt;br /&gt;
&lt;br /&gt;
This opcode does not support displaying a portrait. No sound will emit from the text scrolling.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|String&lt;br /&gt;
|txt&lt;br /&gt;
|Text to be displayed on the Touch Screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x99 - message_FacePositionOffset ===&lt;br /&gt;
Offsets the active portrait in pixels by multiples of 8.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|The offset to shift the portrait box across the X-axis.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|The offset to shift the portrait box across the Y-axis.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x9a - message_ImitationSound ===&lt;br /&gt;
Displays the string defined in the &#039;&#039;txt&#039;&#039; parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; (as seen in the Misc. Graphics tab of SkyTemple).&lt;br /&gt;
&lt;br /&gt;
This opcode does not support displaying a portrait. No sound will emit from the text scrolling.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|String&lt;br /&gt;
|txt&lt;br /&gt;
|Text to be displayed on the Touch Screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x9b - message_KeyWait ===&lt;br /&gt;
If an active textbox has finished displaying its string and was created by one of the following opcodes:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;message_ImitationSound&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Mail&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Monologue&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Notice&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_SpecialTalk&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This opcode suspends the current routine until the A Button, B Button or textbox is pressed (via the Touch Screen). Once done so, the textbox will not close, but the current routine will resume.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x9c - message_Mail ===&lt;br /&gt;
Displays the string defined in the &#039;&#039;txt&#039;&#039; parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; (as seen in the Misc. Graphics tab of SkyTemple).&lt;br /&gt;
&lt;br /&gt;
This opcode does not support displaying a portrait. No sound will emit from the text scrolling.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|String&lt;br /&gt;
|txt&lt;br /&gt;
|Text to be displayed on the Touch Screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x9d - message_Menu ===&lt;br /&gt;
Executes various hardcoded &amp;quot;menu&amp;quot; functionalities given a certain ID. Some IDs result in an actual menu, while others simply perform a silent task.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Menu&lt;br /&gt;
|menu_id&lt;br /&gt;
|The ID of a menu, the list of which can be seen by typing &amp;lt;code&amp;gt;MENU_&amp;lt;/code&amp;gt; in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x9e - message_Monologue ===&lt;br /&gt;
Displays the string defined in the &#039;&#039;txt&#039;&#039; parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; (as seen in the Misc. Graphics tab of SkyTemple).&lt;br /&gt;
&lt;br /&gt;
This opcode supports displaying a portrait. No sound will emit from the text scrolling.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|String&lt;br /&gt;
|txt&lt;br /&gt;
|Text to be displayed on the Touch Screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x9f - message_Narration ===&lt;br /&gt;
Fades in the screen and instantly displays the string defined in the &#039;&#039;txt&#039;&#039; parameter centered in the middle of the Touch Screen. The string will appear without any frame defined in &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; (as seen in the Misc. Graphics tab of SkyTemple). This opcode does not need &amp;lt;code&amp;gt;message_Close&amp;lt;/code&amp;gt; to suspend the routine. Once the routine is resumed (by pressing the A Button, B Button, or text via the Touch Screen), the screen will fade out, including the string.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade in/out the Touch Screen.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|String&lt;br /&gt;
|txt&lt;br /&gt;
|Text to be displayed on the Touch Screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xa0 - message_Notice ===&lt;br /&gt;
Instantly displays the string defined in the &#039;&#039;txt&#039;&#039; parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; (as seen in the Misc. Graphics tab of SkyTemple).&lt;br /&gt;
&lt;br /&gt;
This opcode does not support displaying a portrait.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|String&lt;br /&gt;
|txt&lt;br /&gt;
|Text to be displayed on the Touch Screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xa1 - message_EmptyActor ===&lt;br /&gt;
Disallows a portrait from appearing alongside a textbox, along with disallowing a name to appear in the textbox if &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt; follows this opcode.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0xa2 - message_ResetActor ===&lt;br /&gt;
Disallows a portrait from appearing alongside a textbox, along with setting a speech bubble (the text tag [M:T1]) to the start of next script string if &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt; follows this opcode.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0xa3 - message_SetActor ===&lt;br /&gt;
Sets the specified actor&#039;s name to the start of the next script string if &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt; follows this opcode.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|An entry in the Actor List.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xa4 - message_SetFace ===&lt;br /&gt;
Sets the specified actor&#039;s name to the start of the next script string if &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt; follows this opcode. Will also display a portrait of the actor&#039;s species at a specified position if &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;message_Monologue&amp;lt;/code&amp;gt; follow this opcode.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|An entry in the Actor List.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Face&lt;br /&gt;
|face_id&lt;br /&gt;
|The ID of a portrait, the list of which can be seen by typing FACE_ in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|FaceMode&lt;br /&gt;
|face_mode&lt;br /&gt;
|The position of a portrait, the list of which can be seen by typing &amp;lt;code&amp;gt;FACE_POS_&amp;lt;/code&amp;gt; in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xa5 - message_SetFaceEmpty ===&lt;br /&gt;
Displays a portrait of the actor&#039;s species at a specified position if &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;message_Monologue&amp;lt;/code&amp;gt; follow this opcode.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|An entry in the Actor List.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Face&lt;br /&gt;
|face_id&lt;br /&gt;
|The ID of a portrait, the list of which can be seen by typing FACE_ in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|FaceMode&lt;br /&gt;
|face_mode&lt;br /&gt;
|The position of a portrait, the list of which can be seen by typing &amp;lt;code&amp;gt;FACE_POS_&amp;lt;/code&amp;gt; in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xa6 - message_SetFaceOnly ===&lt;br /&gt;
Sets a speech bubble (the text tag [M:T1]) to the start of the next script string if &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt; follows this opcode. Will also display a portrait of the actor&#039;s species at a specified position if &amp;lt;code&amp;gt;message_Talk&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;message_Monologue&amp;lt;/code&amp;gt; follow this opcode.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|An entry in the Actor List.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Face&lt;br /&gt;
|face_id&lt;br /&gt;
|The ID of a portrait, the list of which can be seen by typing FACE_ in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|FaceMode&lt;br /&gt;
|face_mode&lt;br /&gt;
|The position of a portrait, the list of which can be seen by typing &amp;lt;code&amp;gt;FACE_POS_&amp;lt;/code&amp;gt; in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xa7 - message_SetFacePosition ===&lt;br /&gt;
Re-positions an actor&#039;s portrait.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|FaceMode&lt;br /&gt;
|face_mode&lt;br /&gt;
|The position of a portrait, the list of which can be seen by typing &amp;lt;code&amp;gt;FACE_POS_&amp;lt;/code&amp;gt; in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xa8 - message_SetWaitMode ===&lt;br /&gt;
Makes strings displayed with a &amp;lt;code&amp;gt;message_&amp;lt;/code&amp;gt; opcode auto-scroll. For both parameters, a value of -1 means the auto-scroll will stop.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|duration0&lt;br /&gt;
|Sets the frame count for a textbox auto-advancing, once the end of the string has been displayed and the following opcode is &amp;lt;code&amp;gt;message_KeyWait();&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|duration1&lt;br /&gt;
|Sets the frame count for text tags such as [K] auto-advancing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xa9 - message_SpecialTalk ===&lt;br /&gt;
Displays a random Text String based off of the actor ACTOR_TALK_SUB&#039;s Talk Group.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|category&lt;br /&gt;
|A category of Text String.&lt;br /&gt;
&lt;br /&gt;
* 0 seems to use Text Strings while not in a dungeon (e.g., teammates waiting at Spinda&#039;s Cafe).&lt;br /&gt;
* 1 seems to be use Text Strings while mid-dungeon (e.g., teammates at Amp Plains).&lt;br /&gt;
|}&lt;br /&gt;
=== 0xae - message_Talk ===&lt;br /&gt;
Displays the string defined in the &#039;&#039;txt&#039;&#039; parameter at the bottom of the Touch Screen. The string will appear surrounded by a player-chosen frame defined in &amp;lt;code&amp;gt;FONT/frameX.wte&amp;lt;/code&amp;gt; (as seen in the Misc. Graphics tab of SkyTemple). &lt;br /&gt;
&lt;br /&gt;
This opcode supports displaying a portrait. The [[sound effect]] 16133 will emit from the each character scrolling in the text.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|String&lt;br /&gt;
|txt&lt;br /&gt;
|Text to be displayed on the Touch Screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xaf - Move2Position ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a specific pixel position without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|x&lt;br /&gt;
|The pixel position on the X-axis.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|y&lt;br /&gt;
|The pixel position on the Y-axis.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb0 - Move2PositionLives ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to an actor without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|An entry in the Actor List.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb1 - Move2PositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to one or more Position Marks without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0xb2 - Move2PositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a Position Mark without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb3 - Move2PositionOffset ===&lt;br /&gt;
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|sint&lt;br /&gt;
|x, y&lt;br /&gt;
|The pixel offset to shift the entity across the X or Y-axis.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb4 - Move2PositionOffset ===&lt;br /&gt;
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|The pixel offset to shift the entity across the X-axis.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|The pixel offset to shift the entity across the Y-axis.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb5 - Move2PositionOffsetRandom ===&lt;br /&gt;
Continuously and randomly offsets an entity (i.e., an actor, object, or performer) from its current position across both axes without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|Determines something about the random pixel value chosen to apply to the X-axis; somewhat unknown.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|Determines something about the random pixel value chosen to apply to the Y-axis; somewhat unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb6 - Move3Position ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a specific pixel position in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|x&lt;br /&gt;
|The pixel position on the X-axis.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|y&lt;br /&gt;
|The pixel position on the Y-axis.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb7 - Move3PositionLives ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to an actor in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
This opcode must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|An entry in the Actor List.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb8 - Move3PositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a Position Mark in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xb9 - Move3PositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a Position Mark in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xba - Move3PositionOffset ===&lt;br /&gt;
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|sint&lt;br /&gt;
|x, y&lt;br /&gt;
|The pixel offset to shift the entity across the X or Y-axis.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xbb - Move3PositionOffset ===&lt;br /&gt;
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|The pixel offset to shift the entity across the X-axis.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|The pixel offset to shift the entity across the Y-axis.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xbc - Move3PositionOffsetRandom ===&lt;br /&gt;
Continuously and randomly offsets an entity (i.e., an actor, object, or performer) from its current position across both axes in a rapid, strange motion.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|Determines something about the random pixel value chosen to apply to the X-axis; somewhat unknown.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|Determines something about the random pixel value chosen to apply to the Y-axis; somewhat unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xbd - MoveDirection ===&lt;br /&gt;
Offsets an entity (i.e., an actor, object, or performer) by a certain number of pixels based on a given direction. Movement is performed while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|offset&lt;br /&gt;
|The pixel offset to shift the entity relative to the entity&#039;s direction.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Direction&lt;br /&gt;
|direction&lt;br /&gt;
|The type of direction, the list of which can be seen by typing &amp;lt;code&amp;gt;DIR_&amp;lt;/code&amp;gt; in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xbe - MoveHeight ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a certain pixel height, displacing it from its shadow. When used, the entity&#039;s animation and direction will not change.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|height&lt;br /&gt;
|The pixel height to set the entity relative to their shadow.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xbf - MovePosition ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a specific pixel position while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|x&lt;br /&gt;
|The pixel position on the X-axis.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|y&lt;br /&gt;
|The pixel position on the Y-axis.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc0 - MovePositionLives ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to an actor while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
This opcode must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|An entry in the Actor List.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc1 - MovePositionLivesTime ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to an actor while restricting movement by eight angles—as if movement was performed using the D-Pad. Movement will end once either the entity reaches the actor or after a certain number of frames have passed—whichever comes first.&lt;br /&gt;
&lt;br /&gt;
This opcode must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|An entry in the Actor List.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to move the entity.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc2 - MovePositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a Position Mark while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc3 - MovePositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a Position Mark while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc4 - MovePositionMarkTime ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to an Position Mark while restricting movement by eight angles—as if movement was performed using the D-Pad. Movement will end once either the entity reaches the Position Mark or after a certain number of frames have passed—whichever comes first.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to move the entity.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc5 - MovePositionOffset ===&lt;br /&gt;
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|sint&lt;br /&gt;
|x, y&lt;br /&gt;
|The pixel offset to shift the entity across the X or Y-axis.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc6 - MovePositionOffset ===&lt;br /&gt;
Offsets an entity (i.e., an actor, object, or performer) from its current position across both axes while restricting movement by eight angles—as if movement was performed using the D-Pad.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|The pixel offset to shift the entity across the X-axis.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|The pixel offset to shift the entity across the Y-axis.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc7 - MoveSpecial ===&lt;br /&gt;
Currently unknown. Seems to move an entity (i.e., an actor, object, or performer) based on some hardcoded behaviors.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|mode&lt;br /&gt;
|Determines the kind of action.&lt;br /&gt;
&lt;br /&gt;
# Spin and move in a circular motion.&lt;br /&gt;
# Spin and move in a circular motion.&lt;br /&gt;
# Currently unknown.&lt;br /&gt;
# Currently unknown.&lt;br /&gt;
# Currently unknown. Seems to be the most commonly-used value, as a part of the Unionall Coroutine CORO_LIVES_REPLY_NOMRAL.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Currently unknown. Seems to affect how far the entity will move?&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc8 - MoveTurn ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) based on a certain pattern. Unlike other &amp;lt;code&amp;gt;Move&amp;lt;/code&amp;gt; opcodes, this opcode will make the entity interact with the currently loaded Map Background&#039;s collision (i.e., the entity stops when hitting a wall).&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|distance&lt;br /&gt;
|How far the entity will move. Higher values result in greater distance being covered.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
&lt;br /&gt;
This parameter also seems to affect the distance traveled.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|pattern&lt;br /&gt;
|A hardcoded pattern to move in.&lt;br /&gt;
&lt;br /&gt;
# Moves in a circle clockwise.&lt;br /&gt;
# Moves in a circle counterclockwise.&lt;br /&gt;
# Moves in a square clockwise.&lt;br /&gt;
# Moves in a square counterclockwise.&lt;br /&gt;
# Zig-zags back and forth.&lt;br /&gt;
&lt;br /&gt;
Values 6 and above seem to be variations of random movement.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xca - PauseEffect ===&lt;br /&gt;
Instantly pauses the current graphical effect of an entity (i.e., an actor, object, or performer). The effect will freeze mid-frame.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Effect&lt;br /&gt;
|effect_id&lt;br /&gt;
|A graphical effect to display relative to an entity.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xcc - ProcessSpecial ===&lt;br /&gt;
Executes one of the game&#039;s Special Processes. The return value of a Special Process can be checked by encasing this opcode in a &amp;lt;code&amp;gt;switch&amp;lt;/code&amp;gt; statement. A negative return value is not acceptable and will cause the game to suspend indefinitely.&lt;br /&gt;
&lt;br /&gt;
This opcode cannot be used in targeted routines.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|ProcessSpecial&lt;br /&gt;
|process_id&lt;br /&gt;
|One of the game&#039;s Special Processes.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|process_param1&lt;br /&gt;
|The first parameter used by the Special Process.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|process_param2&lt;br /&gt;
|The first parameter used by the Special Process.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xcd - PursueTurnLives ===&lt;br /&gt;
Causes an entity (i.e., an actor, object, or performer) to continuously turn toward an actor for a certain number of frames.&lt;br /&gt;
&lt;br /&gt;
This opcode must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to make the entity turn. A value of 0 will make the entity turn forever.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Turning speed. Higher values result in a slower speed.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|The actor to turn toward.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|rotation&lt;br /&gt;
|&lt;br /&gt;
# Clockwise.&lt;br /&gt;
# Counterclockwise.&lt;br /&gt;
&lt;br /&gt;
A value of 10 will make the entity choose the nearest rotation.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xce - PursueTurnLives2 ===&lt;br /&gt;
Causes an entity (i.e., an actor, object, or performer) to continuously turn toward an actor for a certain number of frames.&lt;br /&gt;
&lt;br /&gt;
This opcode must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to make the entity turn. A value of 0 will make the entity turn forever.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Turning speed. Higher values result in a slower speed.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|The actor to turn toward.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|rotation&lt;br /&gt;
|&lt;br /&gt;
# Clockwise.&lt;br /&gt;
# Counterclockwise.&lt;br /&gt;
&lt;br /&gt;
A value of 10 will make the entity choose the nearest rotation.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xcf - ResetAttribute ===&lt;br /&gt;
Currently unknown. Seems to get ignored when parsed in the scripting engine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Currently unknown.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd0 - ResetFunctionAttribute ===&lt;br /&gt;
Sets certain bits of an entity&#039;s (i.e., an actor, object, or performer) &amp;quot;function&amp;quot; attribute to 0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|bitfield&lt;br /&gt;
|function_bitfield&lt;br /&gt;
|Most bits&#039; purposes are unknown. Bit 1 appears to be the bit used for allowing an entity to follow a Type 1 actor, like the actor ACTOR_ATTENDANT1 in the overworld.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd1 - ResetHitAttribute ===&lt;br /&gt;
Sets certain bits of an entity&#039;s (i.e., an actor, object, or performer) &amp;quot;hit&amp;quot; attribute to 0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|bitfield&lt;br /&gt;
|hit_bitfield&lt;br /&gt;
|Most bits&#039; purposes are unknown.&lt;br /&gt;
&lt;br /&gt;
* 2: Entity collision.&lt;br /&gt;
* 6: Talk Script upon collision.&lt;br /&gt;
* 7: Talk Script upon pressing the A Button near the entity.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd2 - ResetOutputAttribute ===&lt;br /&gt;
Sets certain bits of an entity&#039;s (i.e., an actor, object, or performer) &amp;quot;output&amp;quot; attribute to 0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|bitfield&lt;br /&gt;
|output_bitfield&lt;br /&gt;
|&lt;br /&gt;
# Underlay below entities.&lt;br /&gt;
# Overlay above entities.&lt;br /&gt;
# Overlay above the current Map Background&#039;s Layer 2.&lt;br /&gt;
# Overlay above the game&#039;s canvas system, which includes the textbox, portrait, and some &amp;lt;code&amp;gt;screen_&amp;lt;/code&amp;gt; commands that do not end in &amp;lt;code&amp;gt;All&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Flicker.&lt;br /&gt;
# Transparency.&lt;br /&gt;
# Invisibility.&lt;br /&gt;
# Displays shadow.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd3 - ResetReplyAttribute ===&lt;br /&gt;
Sets certain bits of an entity&#039;s (i.e., an actor, object, or performer) &amp;quot;reply&amp;quot; attribute to 0.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|bitfield&lt;br /&gt;
|reply_bitfield&lt;br /&gt;
|Most bits&#039; purposes are unknown.&lt;br /&gt;
&lt;br /&gt;
* 1: Talk Script upon collision.&lt;br /&gt;
* 2: Talk Script upon pressing the A Button near the entity.&lt;br /&gt;
* 6: Underlay below entities.&lt;br /&gt;
* 7: Overlay above entities.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd4 - ResumeEffect ===&lt;br /&gt;
Resumes the current graphical effect of an entity (i.e., an actor, object, or performer) that has been paused with &amp;lt;code&amp;gt;PauseEffect&amp;lt;/code&amp;gt; prior to using this opcode.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Effect&lt;br /&gt;
|effect_id&lt;br /&gt;
|A graphical effect to display relative to an entity.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd6 - SavePosition ===&lt;br /&gt;
Saves various attributes of an entity (i.e., an actor, object, or performer) to the following script variables:&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;code&amp;gt;$POSITION_X&amp;lt;/code&amp;gt;: The pixel position of the entity on the X-axis multiplied by 256.&lt;br /&gt;
* &amp;lt;code&amp;gt;$POSITION_Y&amp;lt;/code&amp;gt;: The pixel position of the entity on the Y-axis multiplied by 256.&lt;br /&gt;
* &amp;lt;code&amp;gt;$POSITION_HEIGHT&amp;lt;/code&amp;gt;: The pixel height (i.e., displacement of the entity from their shadow) of the entity multiplied by 256.&lt;br /&gt;
* &amp;lt;code&amp;gt;$POSITION_DIRECTION&amp;lt;/code&amp;gt;: The direction the entity is facing.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|index&lt;br /&gt;
|Index used by all &amp;lt;code&amp;gt;$POSITION_&amp;lt;/code&amp;gt; script variables, ranged from 0-2 (inclusive).&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd7 - screen_FadeChange ===&lt;br /&gt;
Changes the brightness of the screen across a certain number of frames. This opcode will not affect:&lt;br /&gt;
&lt;br /&gt;
* Entities who have had their 4th &amp;quot;output&amp;quot; bit set to 1 (e.g., by using &amp;lt;code&amp;gt;SetOutputAttribute(16);&amp;lt;/code&amp;gt; with them).&lt;br /&gt;
* Portraits.&lt;br /&gt;
* Textboxes.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and 1 is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|start_brightness&lt;br /&gt;
|The brightness level the opcode will begin at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a black screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a white screen.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|end_brightness&lt;br /&gt;
|The brightness level the opcode will end at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a black screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a white screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd8 - screen_FadeChangeAll ===&lt;br /&gt;
Changes the brightness of the screen across a certain number of frames. This opcode will affect everything on the Touch Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|start_brightness&lt;br /&gt;
|The brightness level the opcode will begin at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a black screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a white screen.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|end_brightness&lt;br /&gt;
|The brightness level the opcode will end at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a black screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a white screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd9 - screen_FadeIn ===&lt;br /&gt;
Changes the brightness of the screen to its default state across a certain number of frames. This opcode will not affect:&lt;br /&gt;
&lt;br /&gt;
* Entities who have had their 4th &amp;quot;output&amp;quot; bit set to 1 (e.g., by using &amp;lt;code&amp;gt;SetOutputAttribute(16);&amp;lt;/code&amp;gt; with them).&lt;br /&gt;
* Portraits.&lt;br /&gt;
* Textboxes.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xda - screen_FadeInAll ===&lt;br /&gt;
Changes the brightness of the screen to its default state across a certain number of frames. This opcode will affect everything on the Touch Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xdb - screen_FadeOut ===&lt;br /&gt;
Changes the brightness of the screen to its minimum (i.e., a black screen) across a certain number of frames. This opcode will not affect:&lt;br /&gt;
&lt;br /&gt;
* Entities who have had their 4th &amp;quot;output&amp;quot; bit set to 1 (e.g., by using &amp;lt;code&amp;gt;SetOutputAttribute(16);&amp;lt;/code&amp;gt; with them).&lt;br /&gt;
* Portraits.&lt;br /&gt;
* Textboxes.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xdc - screen_FadeOutAll ===&lt;br /&gt;
Changes the brightness of the screen to its minimum (i.e., a black screen) across a certain number of frames. This opcode will affect everything on the Touch Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xdd - screen_FlushChange ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|unk3&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|uint&lt;br /&gt;
|unk4&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|uint&lt;br /&gt;
|unk5&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|uint&lt;br /&gt;
|unk6&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|uint&lt;br /&gt;
|unk7&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0xde - screen_FlushIn ===&lt;br /&gt;
Changes the color of the screen from a specific state (given by the opcode&#039;s parameters, which affect the Touch Screen instantly) to its default state across a certain number of frames. This opcode will affect all entities (i.e., actors, objects, and performers) on the Touch Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s color.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|mode&lt;br /&gt;
|&lt;br /&gt;
# Completely darkens the Touch Screen.&lt;br /&gt;
# Completely turns the Touch Screen to a certain color.&lt;br /&gt;
# Instantly darkens the Touch Screen?&lt;br /&gt;
# Overlays the Touch Screen with a certain color.&lt;br /&gt;
# Instantly darkens the Touch Screen?&lt;br /&gt;
# Overlays the Touch Screen with hardcoded color bytes: 144, 144, and 255.&lt;br /&gt;
# Instantly darkens the Touch Screen?&lt;br /&gt;
# Overlays the Touch Screen with hardcoded color bytes: 255, 192, and 128.&lt;br /&gt;
# Instantly darkens the Touch Screen?&lt;br /&gt;
# Overlays the Touch Screen with hardcoded color bytes: All 255. The Touch Screen is not turned completely white.&lt;br /&gt;
# Instantly overlays the Touch Screen with hardcoded color bytes: All 255. The Touch Screen is not turned completely white.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|r&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color red. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|uint&lt;br /&gt;
|g&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color green. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|uint&lt;br /&gt;
|b&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color blue. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xdf - screen_FlushOut ===&lt;br /&gt;
Changes the color of the screen across a certain number of frames. This opcode will affect all entities (i.e., actors, objects, and performers) on the Touch Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s color.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|mode&lt;br /&gt;
|&lt;br /&gt;
# Completely darkens the Touch Screen.&lt;br /&gt;
# Completely turns the Touch Screen to a certain color.&lt;br /&gt;
# Instantly darkens the Touch Screen?&lt;br /&gt;
# Overlays the Touch Screen with a certain color.&lt;br /&gt;
# Instantly darkens the Touch Screen?&lt;br /&gt;
# Overlays the Touch Screen with hardcoded color bytes: 144, 144, and 255.&lt;br /&gt;
# Instantly darkens the Touch Screen?&lt;br /&gt;
# Overlays the Touch Screen with hardcoded color bytes: 255, 192, and 128.&lt;br /&gt;
# Instantly darkens the Touch Screen?&lt;br /&gt;
# Overlays the Touch Screen with hardcoded color bytes: All 255. The Touch Screen is not turned completely white.&lt;br /&gt;
# Instantly overlays the Touch Screen with hardcoded color bytes: All 255. The Touch Screen is not turned completely white.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|r&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color red. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|uint&lt;br /&gt;
|g&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color green. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|uint&lt;br /&gt;
|b&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color blue. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe0 - screen_WhiteChange ===&lt;br /&gt;
Changes the brightness of the screen across a certain number of frames. This opcode will not affect:&lt;br /&gt;
&lt;br /&gt;
* Entities who have had their 4th &amp;quot;output&amp;quot; bit set to 1 (e.g., by using &amp;lt;code&amp;gt;SetOutputAttribute(16);&amp;lt;/code&amp;gt; with them).&lt;br /&gt;
* Portraits.&lt;br /&gt;
* Textboxes.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and 1 is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|start_brightness&lt;br /&gt;
|The brightness level the opcode will begin at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a white screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a black screen.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|end_brightness&lt;br /&gt;
|The brightness level the opcode will end at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a white screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a black screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe1 - screen_WhiteChangeAll ===&lt;br /&gt;
Changes the brightness of the screen across a certain number of frames. This opcode will affect everything on the Touch Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|start_brightness&lt;br /&gt;
|The brightness level the opcode will begin at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a white screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a black screen.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|end_brightness&lt;br /&gt;
|The brightness level the opcode will end at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a white screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a black screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe2 - screen_WhiteIn ===&lt;br /&gt;
Does nothing. Do not be deceived by this opcode&#039;s name: After using &amp;lt;code&amp;gt;screen_WhiteOut&amp;lt;/code&amp;gt;, use &amp;lt;code&amp;gt;screen_FadeIn&amp;lt;/code&amp;gt; to restore the Touch Screen&#039;s brightness level!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe3 - screen_WhiteInAll ===&lt;br /&gt;
Does nothing. Do not be deceived by this opcode&#039;s name: After using &amp;lt;code&amp;gt;screen_WhiteOutAll&amp;lt;/code&amp;gt;, use &amp;lt;code&amp;gt;screen_FadeInAll&amp;lt;/code&amp;gt; to restore the Touch Screen&#039;s brightness level!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe4 - screen_WhiteOut ===&lt;br /&gt;
Changes the brightness of the screen to its maximum (i.e., a white screen) across a certain number of frames. This opcode will not affect:&lt;br /&gt;
&lt;br /&gt;
* Entities who have had their 4th &amp;quot;output&amp;quot; bit set to 1 (e.g., by using &amp;lt;code&amp;gt;SetOutputAttribute(16);&amp;lt;/code&amp;gt; with them).&lt;br /&gt;
* Portraits.&lt;br /&gt;
* Textboxes.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe5 - screen_WhiteOutAll ===&lt;br /&gt;
Changes the brightness of the screen to its maximum (i.e., a white screen) across a certain number of frames. This opcode will affect everything on the Touch Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Touch Screen&#039;s brightness.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe6 - screen2_FadeChange ===&lt;br /&gt;
Changes the brightness of the screen across a certain number of frames. This opcode will affect everything on the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and 1 is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Top Screen&#039;s brightness.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|start_brightness&lt;br /&gt;
|The brightness level the opcode will begin at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a black screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a white screen.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|end_brightness&lt;br /&gt;
|The brightness level the opcode will end at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a black screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a white screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe7 - screen2_FadeChangeAll ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|unk3&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe8 - screen2_FadeIn ===&lt;br /&gt;
Changes the brightness of the screen to its default state across a certain number of frames. This opcode will affect everything on the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Top Screen&#039;s brightness.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xe9 - screen2_FadeInAll ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xea - screen2_FadeOut ===&lt;br /&gt;
Changes the brightness of the screen to its minimum (i.e., a black screen) across a certain number of frames. This opcode will affect everything on the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Top Screen&#039;s brightness.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xeb - screen2_FadeOutAll ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xec - screen2_FlushChange ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|unk3&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|uint&lt;br /&gt;
|unk4&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|uint&lt;br /&gt;
|unk5&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|7&lt;br /&gt;
|uint&lt;br /&gt;
|unk6&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|8&lt;br /&gt;
|uint&lt;br /&gt;
|unk7&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xed - screen2_FlushIn ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;screen_FlushIn&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Top Screen&#039;s color.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|mode&lt;br /&gt;
|&lt;br /&gt;
# Completely darkens the Top Screen.&lt;br /&gt;
# Completely turns the Top Screen to a certain color.&lt;br /&gt;
# Instantly darkens the Top Screen?&lt;br /&gt;
# Overlays the Top Screen with a certain color.&lt;br /&gt;
# Instantly darkens the Top Screen?&lt;br /&gt;
# Overlays the Top Screen with hardcoded color bytes: 144, 144, and 255.&lt;br /&gt;
# Instantly darkens the Top Screen?&lt;br /&gt;
# Overlays the Top Screen with hardcoded color bytes: 255, 192, and 128.&lt;br /&gt;
# Instantly darkens the Top Screen?&lt;br /&gt;
# Overlays the Top Screen with hardcoded color bytes: All 255. The Top Screen is not turned completely white.&lt;br /&gt;
# Instantly overlays the Top Screen with hardcoded color bytes: All 255. The Top Screen is not turned completely white.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|r&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color red. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|uint&lt;br /&gt;
|g&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color green. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|uint&lt;br /&gt;
|b&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color blue. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xee - screen2_FlushOut ===&lt;br /&gt;
The same as &amp;lt;code&amp;gt;screen_FlushOut&amp;lt;/code&amp;gt;, but for the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Top Screen&#039;s color.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|mode&lt;br /&gt;
|&lt;br /&gt;
# Completely darkens the Top Screen.&lt;br /&gt;
# Completely turns the Top Screen to a certain color.&lt;br /&gt;
# Instantly darkens the Top Screen?&lt;br /&gt;
# Overlays the Top Screen with a certain color.&lt;br /&gt;
# Instantly darkens the Top Screen?&lt;br /&gt;
# Overlays the Top Screen with hardcoded color bytes: 144, 144, and 255.&lt;br /&gt;
# Instantly darkens the Top Screen?&lt;br /&gt;
# Overlays the Top Screen with hardcoded color bytes: 255, 192, and 128.&lt;br /&gt;
# Instantly darkens the Top Screen?&lt;br /&gt;
# Overlays the Top Screen with hardcoded color bytes: All 255. The Top Screen is not turned completely white.&lt;br /&gt;
# Instantly overlays the Top Screen with hardcoded color bytes: All 255. The Top Screen is not turned completely white.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|r&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color red. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|uint&lt;br /&gt;
|g&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color green. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|uint&lt;br /&gt;
|b&lt;br /&gt;
|Unused if &#039;&#039;mode&#039;&#039; is not 2 or 4. Byte used for the color blue. Has a minimum of 0 and a maximium of 255.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xef - screen2_WhiteChange ===&lt;br /&gt;
Changes the brightness of the screen across a certain number of frames. This opcode will affect everything on the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Top Screen&#039;s brightness.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|start_brightness&lt;br /&gt;
|The brightness level the opcode will begin at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a white screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a black screen.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|end_brightness&lt;br /&gt;
|The brightness level the opcode will end at.&lt;br /&gt;
&lt;br /&gt;
* The minimum brightness is 0, which results in a white screen.&lt;br /&gt;
* The default brightness is 256.&lt;br /&gt;
* The maximum brightness is 512, which results in a black screen.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf0 - screen2_WhiteChangeAll ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|unk3&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf1 - screen2_WhiteIn ===&lt;br /&gt;
Does nothing. Do not be deceived by this opcode&#039;s name: After using &amp;lt;code&amp;gt;screen2_WhiteOut&amp;lt;/code&amp;gt;, use &amp;lt;code&amp;gt;screen2_FadeIn&amp;lt;/code&amp;gt; to restore the Top Screen&#039;s brightness level!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf2 - screen2_WhiteInAll ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf3 - screen2_WhiteOut ===&lt;br /&gt;
Changes the brightness of the screen to its maximum (i.e., a white screen) across a certain number of frames. This opcode will affect everything on the Top Screen.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|suspension_flag&lt;br /&gt;
|Determines whether the script will suspend until this opcode&#039;s operation is complete. 0 is false and anything else is true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the Top Screen&#039;s brightness.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf4 - screen2_WhiteOutAll ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf5 - se_ChangePan ===&lt;br /&gt;
Changes the panning of the currently-playing [[sound effect]] across a certain number of frames.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|se_id&lt;br /&gt;
|A sound effect defined in SOUND/SE of the ROM. Actually encoded as &amp;lt;code&amp;gt;sound_bank_id &amp;lt;&amp;lt; 8 + sound_id&amp;lt;/code&amp;gt;, but it can also be represented as an integer.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the SE&#039;s panning.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|pan&lt;br /&gt;
|The panning of the SE. This parameter gets recalculated internally as  &amp;lt;code&amp;gt;((&#039;&#039;pan&#039;&#039; * 0x3f + ((&#039;&#039;pan&#039;&#039; * 0x3f &amp;gt;&amp;gt; 7) &amp;gt;&amp;gt; 0x18)) &amp;gt;&amp;gt; 8) + 0x40&amp;lt;/code&amp;gt;, which is eventually split up into two halfwords, then recalculated further into a signed byte.&lt;br /&gt;
What this means is that:&lt;br /&gt;
&lt;br /&gt;
* A &#039;&#039;pan&#039;&#039; parameter of 260 will result in sound panning only to the right channel.&lt;br /&gt;
* A &#039;&#039;pan&#039;&#039; parameter of 261 will result in sound panning only to the left channel.&lt;br /&gt;
&lt;br /&gt;
More research on this parameter may be needed.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf6 - se_ChangeVolume ===&lt;br /&gt;
Changes the volume of the currently-playing [[sound effect]] across a certain number of frames.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|se_id&lt;br /&gt;
|A sound effect defined in SOUND/SE of the ROM. Actually encoded as &amp;lt;code&amp;gt;sound_bank_id &amp;lt;&amp;lt; 8 + sound_id&amp;lt;/code&amp;gt;, but it can also be represented as an integer.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to change the SE&#039;s volume.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|volume&lt;br /&gt;
|The volume that the SE will play at. It has a maximum of 256 and a minimum of 0.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf7 - se_FadeOut ===&lt;br /&gt;
Fades out the currently-playing [[sound effect]] across a certain number of frames.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|se_id&lt;br /&gt;
|A sound effect defined in SOUND/SE of the ROM. Actually encoded as &amp;lt;code&amp;gt;sound_bank_id &amp;lt;&amp;lt; 8 + sound_id&amp;lt;/code&amp;gt;, but it can also be represented as an integer.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames used to fade out and silence a given SE.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf8 - se_Play ===&lt;br /&gt;
Instantly plays a [[sound effect]].&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|se_id&lt;br /&gt;
|A sound effect defined in SOUND/SE of the ROM. Actually encoded as &amp;lt;code&amp;gt;sound_bank_id &amp;lt;&amp;lt; 8 + sound_id&amp;lt;/code&amp;gt;, but it can also be represented as an integer.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xf9 - se_PlayFull ===&lt;br /&gt;
Instantly plays a [[sound effect]] at a specified volume and panning.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|se_id&lt;br /&gt;
|A sound effect defined in SOUND/SE of the ROM. Actually encoded as &amp;lt;code&amp;gt;sound_bank_id &amp;lt;&amp;lt; 8 + sound_id&amp;lt;/code&amp;gt;, but it can also be represented as an integer.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|volume&lt;br /&gt;
|The volume that the SE will play at. It has a maximum of 256 and a minimum of 0.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|pan&lt;br /&gt;
|The panning of the SE. This parameter gets recalculated internally as  &amp;lt;code&amp;gt;((&#039;&#039;pan&#039;&#039; * 0x3f + ((&#039;&#039;pan&#039;&#039; * 0x3f &amp;gt;&amp;gt; 7) &amp;gt;&amp;gt; 0x18)) &amp;gt;&amp;gt; 8) + 0x40&amp;lt;/code&amp;gt;, which is eventually split up into two halfwords, then recalculated further into a signed byte.&lt;br /&gt;
What this means is that:&lt;br /&gt;
&lt;br /&gt;
* A &#039;&#039;pan&#039;&#039; parameter of 260 will result in sound panning only to the right channel.&lt;br /&gt;
* A &#039;&#039;pan&#039;&#039; parameter of 261 will result in sound panning only to the left channel.&lt;br /&gt;
&lt;br /&gt;
More research on this parameter may be needed.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xfa - se_PlayPan ===&lt;br /&gt;
Instantly plays a [[sound effect]] at a specified panning.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|se_id&lt;br /&gt;
|A sound effect defined in SOUND/SE of the ROM. Actually encoded as &amp;lt;code&amp;gt;sound_bank_id &amp;lt;&amp;lt; 8 + sound_id&amp;lt;/code&amp;gt;, but it can also be represented as an integer.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|pan&lt;br /&gt;
|The panning of the SE. This parameter gets recalculated internally as  &amp;lt;code&amp;gt;((&#039;&#039;pan&#039;&#039; * 0x3f + ((&#039;&#039;pan&#039;&#039; * 0x3f &amp;gt;&amp;gt; 7) &amp;gt;&amp;gt; 0x18)) &amp;gt;&amp;gt; 8) + 0x40&amp;lt;/code&amp;gt;, which is eventually split up into two halfwords, then recalculated further into a signed byte.&lt;br /&gt;
What this means is that:&lt;br /&gt;
&lt;br /&gt;
* A &#039;&#039;pan&#039;&#039; parameter of 260 will result in sound panning only to the right channel.&lt;br /&gt;
* A &#039;&#039;pan&#039;&#039; parameter of 261 will result in sound panning only to the left channel.&lt;br /&gt;
&lt;br /&gt;
More research on this parameter may be needed.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xfb - se_PlayVolume ===&lt;br /&gt;
Instantly plays a [[sound effect]] at a specified volume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|se_id&lt;br /&gt;
|A sound effect defined in SOUND/SE of the ROM. Actually encoded as &amp;lt;code&amp;gt;sound_bank_id &amp;lt;&amp;lt; 8 + sound_id&amp;lt;/code&amp;gt;, but it can also be represented as an integer.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|volume&lt;br /&gt;
|The volume that the SE will play at. It has a maximum of 256 and a minimum of 0.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xfc - se_Stop ===&lt;br /&gt;
Instantly stops a specified sound effect.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|se_id&lt;br /&gt;
|A sound effect defined in SOUND/SE of the ROM. Actually encoded as &amp;lt;code&amp;gt;sound_bank_id &amp;lt;&amp;lt; 8 + sound_id&amp;lt;/code&amp;gt;, but it can also be represented as an integer.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xfd - SetAnimation ===&lt;br /&gt;
Plays a sprite&#039;s animation, optionally changing its speed and animation flags.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|id&lt;br /&gt;
|Animation table index. Converted to an [[Animation ID]] for the current sprite using the [https://docs.google.com/spreadsheets/d/11xHv80Def5mtF60ZsfI1lF1eNX0dBE2It837Q08AlRk/htmlview SetAnimation table].&lt;br /&gt;
|}&lt;br /&gt;
=== 0xfe - SetAttribute ===&lt;br /&gt;
Does nothing.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|Does nothing.&lt;br /&gt;
|}&lt;br /&gt;
=== 0xff - SetBlink ===&lt;br /&gt;
Sets a specific entity (i.e., an actor, object, or performer) to continuously flicker in and out of view at a certain interval.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|visible_interval&lt;br /&gt;
|The number of frames to wait for while the entity is visible. &lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|invisible_interval&lt;br /&gt;
|The number of frames to wait for while the entity is invisible. &lt;br /&gt;
|}&lt;br /&gt;
=== 0x100 - SetDirection ===&lt;br /&gt;
Instantly sets a specific entity (i.e., an actor, object, or performer) to a specified direction.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Direction&lt;br /&gt;
|direction&lt;br /&gt;
|The type of direction, the list of which can be seen by typing &amp;lt;code&amp;gt;DIR_&amp;lt;/code&amp;gt; in SkyTemple&#039;s Script Engine Debugger.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x101 - SetDirectionLives ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x102 - SetEffect ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Effect&lt;br /&gt;
|effect_id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|position_marker_id?&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x103 - SetFunctionAttribute ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|bitfield&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x104 - SetHeight ===&lt;br /&gt;
Moves an actor &amp;quot;vertically&amp;quot; by distancing it from its shadow. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|number of pixels to move up or down by.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x105 - SetHitAttribute ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|bitfield&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x106 - SetMoveRange ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|uint&lt;br /&gt;
|unk4&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|6&lt;br /&gt;
|uint&lt;br /&gt;
|unk5&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x107 - SetOutputAttribute ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|bitfield&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x108 - SetPosition ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x109 - SetPositionInitial ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x10a - SetPositionLives ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x10b - SetPositionMark ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x10c - SetPositionOffset ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x10d - SetPositionOffsetRandom ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x10e - SetReplyAttribute ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|bitfield&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x10f - SetupOutputAttributeAndAnimation ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x110 - Slide2Position ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a specific pixel position without animation. Must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|x&lt;br /&gt;
|The pixel position on the X-axis.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|y&lt;br /&gt;
|The pixel position on the Y-axis.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x111 - Slide2PositionLives ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to an actor without animation. Must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|actor_id&lt;br /&gt;
|The ID of the actor to move the entity to.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x112 - Slide2PositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to one or more Position Marks without animation, and without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x113 - Slide2PositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a Position Mark without animation, and without restricting the angles used.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed.  Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_mark&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x114 - Slide2PositionOffset ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |These two parameters may be repeated multiple times&lt;br /&gt;
|-&lt;br /&gt;
|3+&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|}&lt;br /&gt;
=== 0x115 - Slide2PositionOffset ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x116 - Slide2PositionOffsetRandom ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x117 - Slide3Position ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x118 - Slide3PositionLives ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|actor_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x119 - Slide3PositionMark ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|This parameter may be repeated multiple times&lt;br /&gt;
|}&lt;br /&gt;
=== 0x11a - Slide3PositionMark ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x11b - Slide3PositionOffset ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; |These two parameters may be repeated multiple times&lt;br /&gt;
|-&lt;br /&gt;
|3+&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|}&lt;br /&gt;
=== 0x11c - Slide3PositionOffset ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x11d - Slide3PositionOffsetRandom ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x11e - SlideHeight ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x11f - SlidePosition ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x120 - SlidePositionLives ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x121 - SlidePositionLivesTime ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x122 - SlidePositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a Position Mark while restricting movement by eight angles—as if movement was performed using the D-Pad. Unlike MovePositionMark, this will not turn the entity to face the direction they are moving in.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|The number of parameters to read from this opcode.&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
This parameter may be repeated multiple times.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x123 - SlidePositionMark ===&lt;br /&gt;
Moves an entity (i.e., an actor, object, or performer) to a Position Mark while restricting movement by eight angles—as if movement was performed using the D-Pad. Unlike MovePositionMark, this will not turn the entity to face the direction they are moving in.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|Movement speed. Higher values result in a faster speed. &lt;br /&gt;
Values starting at 32770 and above will be slower than a value of 1.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|A structure consisting of a name, X unit, and Y unit. Units are defined as 8 pixels.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x124 - SlidePositionMarkTime ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x125 - SlidePositionOffset ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|num_parameters&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2+&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|This parameter may be repeated multiple times&lt;br /&gt;
|}&lt;br /&gt;
=== 0x126 - SlidePositionOffset ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|sint&lt;br /&gt;
|x&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|sint&lt;br /&gt;
|y&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x127 - sound_FadeOut ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x128 - sound_Stop ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x129 - StopAnimation ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x12a - supervision_Acting ===&lt;br /&gt;
Loads a sector of the Acting scene.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|layer_id&lt;br /&gt;
|The ID of the sector to load.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x12b - supervision_ActingInvisible ===&lt;br /&gt;
Loads a sector of the Acting scene. Actors and objects in this sector will be invisible. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|layer_id&lt;br /&gt;
|The ID of the sector to load.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x12c - supervision_ExecuteActing ===&lt;br /&gt;
Loads a specified Acting script from the specified level from within Enter/Acting/Sub scripts. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|ConstString&lt;br /&gt;
|script_id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x12d - supervision_ExecuteActingSub ===&lt;br /&gt;
Loads a specified Acting script from the specified level from within Unionall&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|ConstString&lt;br /&gt;
|script_id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x12e - supervision_ExecuteCommon ===&lt;br /&gt;
Loads a specified Unionall coroutine from within Enter/Acting/Sub scripts. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Routine&lt;br /&gt;
|coro_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x12f - supervision_ExecuteEnter ===&lt;br /&gt;
Loads an Enter script from the specified level. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|level_id&lt;br /&gt;
|An entry in the Level list. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x130 - supervision_ExecuteStation ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|ConstString&lt;br /&gt;
|script_id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x131 - supervision_ExecuteStationCommon ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x132 - supervision_ExecuteStationCommonSub ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x133 - supervision_ExecuteStationSub ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|ConstString&lt;br /&gt;
|script_id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x134 - supervision_ExecuteExport ===&lt;br /&gt;
Loads a specified Acting scene of the level S00P01A&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|ConstString&lt;br /&gt;
|script_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x135 - supervision_ExecuteExportSub ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|ConstString&lt;br /&gt;
|const&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x136 - supervision_LoadStation ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Level&lt;br /&gt;
|level&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|ConstString&lt;br /&gt;
|script_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x137 - supervision_Remove ===&lt;br /&gt;
Unloads a sector of the Sub scene.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|layer_id&lt;br /&gt;
|The ID of the sector to unload.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x138 - supervision_RemoveActing ===&lt;br /&gt;
Unloads a sector of the Acting scene. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|layer_id&lt;br /&gt;
|The ID of the sector to unload.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x139 - supervision_RemoveCommon ===&lt;br /&gt;
Unloads a sector of the Enter scene. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|layer_id&lt;br /&gt;
|The ID of the sector to unload.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x13a - supervision_SpecialActing ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x13b - supervision_Station ===&lt;br /&gt;
Loads a sector of the Sub scene.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|station_id&lt;br /&gt;
|The ID of the sector to load.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x13c - supervision_StationCommon ===&lt;br /&gt;
Loads a sector of the Enter scene.&lt;br /&gt;
&lt;br /&gt;
Can be used to call sectors of an enter scene within acting scenes!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|station_id&lt;br /&gt;
|The ID of the sector to load.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x13d - supervision_Suspend ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|sint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x13e - supervision2_SpecialActing ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x14c - Turn2Direction ===&lt;br /&gt;
Makes an actor rotate to a specified direction.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|How fast the actor turns. The higher the number, the slower the turn.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|rotationdirection&lt;br /&gt;
|The way that the actor will turn to face the specified direction. 1 = clockwise, 2 = counterclockwise, 10 = the most efficient direction to turn.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Direction&lt;br /&gt;
|direction&lt;br /&gt;
|The direction that the actor will turn to face.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x14d - Turn2DirectionLives ===&lt;br /&gt;
Makes an actor rotate to face another actor. Must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|How fast the actor turns. The higher the number, the slower the turn.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|rotationdirection&lt;br /&gt;
|The way that the actor will turn to face the specified direction. 1 = clockwise, 2 = counterclockwise, 10 = the most efficient direction to turn.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|The target actor that the actor will turn to face.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x14e - Turn2DirectionLives2 ===&lt;br /&gt;
Makes an actor rotate to face another actor. Must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|How fast the actor turns. The higher the number, the slower the turn.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|rotationdirection&lt;br /&gt;
|The way that the actor will turn to face the specified direction. 1 = clockwise, 2 = counterclockwise, 10 = the most efficient direction to turn.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|actor_id&lt;br /&gt;
|ID of the target actor from Level List that the actor will turn to face.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x14f - Turn2DirectionMark ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|unk6&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|5&lt;br /&gt;
|uint&lt;br /&gt;
|unk7&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x150 - Turn2DirectionTurn ===&lt;br /&gt;
Makes an actor turn at a certain angle. &lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|speed&lt;br /&gt;
|How fast the actor turns. The higher the number, the slower the turn.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|rotationdirection&lt;br /&gt;
|The way that the actor will turn to face the specified direction. 1 = clockwise, 2 = counterclockwise, 10 = the most efficient direction to turn.&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|angle&lt;br /&gt;
|1: 45 degrees left, 2: 45 degrees right, 3: 90 degrees right, 4: 90 degrees left, 5: 180 degrees&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x151 - Turn3 ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|unk3&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x152 - TurnDirection ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Direction&lt;br /&gt;
|direction&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x153 - TurnDirectionLives ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x154 - TurnDirectionLives2 ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x155 - TurnDirectionMark ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x156 - Unlock ===&lt;br /&gt;
Resumes the routine that was suspended when &amp;lt;code&amp;gt;Lock&amp;lt;/code&amp;gt; was called with the specified &#039;&#039;lock_id&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|lock_id&lt;br /&gt;
|The ID of a Lock, ranged from 0-19 (inclusive).&lt;br /&gt;
|}&lt;br /&gt;
=== 0x157 - Wait ===&lt;br /&gt;
Pauses the routine for a set number of frames. After the number of frames, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration&lt;br /&gt;
|The number of frames that the routine will wait for before resuming.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x158 - WaitAnimation ===&lt;br /&gt;
Pauses the routine until the specified actor has finished its animation. After the actor finishes its animation, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
=== 0x159 - WaitBackEffect ===&lt;br /&gt;
Pauses the current routine until [[List of Opcodes#0x2 - back SetBackEffect|back_SetBackEffect]] is called.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x15a - WaitBack2Effect ===&lt;br /&gt;
Pauses the current routine until [[List of Opcodes#0x12 - back2 SetBackEffect|back2_SetBackEffect]] is called.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
&lt;br /&gt;
=== 0x15b - WaitBgm ===&lt;br /&gt;
Pauses the current routine until the specified BGM on the first BGM track has ended. After the BGM ends, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Bgm&lt;br /&gt;
|bgm_id&lt;br /&gt;
|A non-looped music track defined in SOUND/BGM of the ROM. Looped music tracks softlocks the game. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x15c - WaitBgm2 ===&lt;br /&gt;
Pauses the current routine until the specified BGM on the second BGM track has ended. After the BGM ends, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Bgm&lt;br /&gt;
|bgm_id&lt;br /&gt;
|A non-looped music track defined in SOUND/BGM of the ROM. Looped music tracks softlocks the game. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x15d - WaitBgmSignal ===&lt;br /&gt;
Pauses the routine until a DSE event with ID 0xF6 on the current BGM track is triggered. This can be used to sync certain parts of the scene to the background music.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x15e - WaitEffect ===&lt;br /&gt;
Pauses the routine until the effect on the specified actor/peformer has ended. After the effect ends, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
This opcode does not have a parameter for an entity, as it must be used in a with-statement or a targeted routine.&lt;br /&gt;
&lt;br /&gt;
=== 0x15f - WaitEndAnimation ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x160 - WaitExecuteLives ===&lt;br /&gt;
Pauses the routine until the specified actor has finished its action (Move2Position, Slide2Position, etc.). After the actor finishes its action, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|The actor that the routine will wait for.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x161 - WaitExecuteObject ===&lt;br /&gt;
Pauses the current routine until the specified object has finished its action (Move2Position, Slide2Position, etc.). After the object finishes its action, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Object&lt;br /&gt;
|object_id&lt;br /&gt;
|The ID of the object that the routine will wait for.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x162 - WaitExecutePerformer ===&lt;br /&gt;
Pauses the current routine until the specified performer has finished its current action (Move2Position, Slide2Position, etc.) After the performer has finished its action, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|performer_id&lt;br /&gt;
|The ID of the performer that the routine will wait for.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x163 - WaitFadeIn ===&lt;br /&gt;
Pauses the current routine and waits for the screen to fade in. After the screen fades in, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
&lt;br /&gt;
=== 0x164 - WaitLockLives ===&lt;br /&gt;
Pauses the current routine until a [[List of Opcodes#0x8b - Lock|Lock]] opcode with the specified &#039;&#039;lock_id&#039;&#039; is reached in the specified actor&#039;s targeted routine. After the lock is reached, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|lock_id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Entity&lt;br /&gt;
|actor&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x165 - WaitLockObject ===&lt;br /&gt;
Pauses the current routine until a [[List of Opcodes#0x8b - Lock|Lock]] opcode with the specified &#039;&#039;lock_id&#039;&#039; is reached in the specified object&#039;s targeted routine. After the lock is reached, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|lock_id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|Object&lt;br /&gt;
|object&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x166 - WaitLockPerformer ===&lt;br /&gt;
Pauses the current routine until a [[List of Opcodes#0x8b - Lock|Lock]] opcode with the specified &#039;&#039;lock_id&#039;&#039; is reached in the specified performer&#039;s targeted routine. After the lock is reached, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|lock_id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|performer&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x167 - WaitLockSupervision ===&lt;br /&gt;
Pauses the current routine until a [[List of Opcodes#0x8b - Lock|Lock]] opcode with the specified &#039;&#039;lock_id&#039;&#039; is reached in &amp;lt;code&amp;gt;def 0&amp;lt;/code&amp;gt;. After the lock is reached, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|lock_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x168 - WaitMe ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x169 - WaitMoveCamera ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x16a - WaitMoveCamera2 ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x16b - WaitRandom ===&lt;br /&gt;
Pauses the routine for a random number of frames. After the number of frames, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|duration_min&lt;br /&gt;
|Minimum number of frames that the routine will wait for before resuming.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|duration_max&lt;br /&gt;
|Maximum number of frames that the routine will wait for before resuming.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x16c - WaitScreenFade ===&lt;br /&gt;
Waits until screen_FadeIn finishes executing. &lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x16d - WaitScreenFadeAll ===&lt;br /&gt;
Waits until screen_FadeInAll finishes executing. &lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x16e - WaitScreen2Fade ===&lt;br /&gt;
Waits until screen2_FadeIn finishes executing. &lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x16f - WaitSe ===&lt;br /&gt;
Pauses the current routine until the specified sound effect has ended. After the sound effect ends, the routine will resume.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|se_id&lt;br /&gt;
|The ID of the sound to wait for the end of before resuming the routine.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x170 - WaitSpecialActing ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x171 - WaitSubScreen ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x172 - WaitSubSpecialActing ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x173 - worldmap_BlinkMark ===&lt;br /&gt;
Shows a blinking world map marker. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|world_map_marker_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x174 - worldmap_ChangeLevel ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x175 - worldmap_DeleteArrow ===&lt;br /&gt;
Remove the yellow arrow from the world map. &lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
&lt;br /&gt;
=== 0x176 - worldmap_MoveCamera ===&lt;br /&gt;
Moves the camera to the specified world map marker. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|world_map_marker_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x177 - worldmap_OffMessage ===&lt;br /&gt;
Removes a textbox with the world map marker&#039;s name from the Top Screen&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
&lt;br /&gt;
=== 0x178 - worldmap_SetArrow ===&lt;br /&gt;
Shows an arrow pointing to a specified world map marker&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|world_map_marker_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x179 - worldmap_SetCamera ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x17a - worldmap_SetLevel ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x17b - worldmap_SetMark ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x17c - worldmap_SetMessage ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|String&lt;br /&gt;
|txt&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x17d - worldmap_SetMessagePlace ===&lt;br /&gt;
Shows a textbox on the Top Screen with the specified world map marker&#039;s name. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|world_map_marker_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== 0x17e - worldmap_SetMode ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Other Opcodes ==&lt;br /&gt;
These opcodes cannot be directly called from ExplorerScript, since they are represented as higher-level constructs.&lt;br /&gt;
&lt;br /&gt;
=== 0x28 - Branch ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x29 - BranchBit ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|index&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x2a - BranchDebug ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|param&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x2b - BranchEdit ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|param&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x2c - BranchExecuteSub ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x2d - BranchPerformance ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|index&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x2e - BranchScenarioNow ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x2f - BranchScenarioNowAfter ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x30 - BranchScenarioNowBefore ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x31 - BranchScenarioAfter ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x32 - BranchScenarioBefore ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x33 - BranchSum ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x34 - BranchValue ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|operator&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x35 - BranchVariable ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|operator&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|GameVar&lt;br /&gt;
|cmp_var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|4&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x36 - BranchVariation ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|param&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x37 - Call ===&lt;br /&gt;
Jumps to the specified address, runs code, and returns to the line of code in which this opcode was used (only if &amp;lt;code&amp;gt;return;&amp;lt;/code&amp;gt; was used in the routine this opcode calls). Only one call can be stored at a time!&lt;br /&gt;
&lt;br /&gt;
Use within macros is ill-advised, as using &amp;lt;code&amp;gt;return;&amp;lt;/code&amp;gt; within a macro will just end the macro!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|The address to call, e.g., &amp;lt;code&amp;gt;call @label_0;&amp;lt;/code&amp;gt; if &amp;lt;code&amp;gt;§label_0;&amp;lt;/code&amp;gt; is defined in the script.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x63 - Case ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x64 - CaseMenu ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|String&lt;br /&gt;
|choice&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x65 - CaseMenu2 ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint?&lt;br /&gt;
|choice?&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x66 - CaseScenario ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|operator&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x67 - CaseText ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|String&lt;br /&gt;
|display&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x68 - CaseValue ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|operator&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x69 - CaseVariable ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|operator&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x6e - DefaultText ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|String&lt;br /&gt;
|txt&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x70 - End ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x74 - flag_CalcBit ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|index&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x75 - flag_CalcValue ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|calc_operator&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x76 - flag_CalcVariable ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|calc_operator&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|GameVar&lt;br /&gt;
|var_to_set_from&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x77 - flag_Clear ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x78 - flag_Initial ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x79 - flag_Set ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x7a - flag_ResetDungeonResult ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x7b - flag_ResetScenario ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x7c - flag_SetAdventureLog ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x7d - flag_SetDungeonMode ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|dungeon_id&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|DungeonMode&lt;br /&gt;
|dungen_mode&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x7e - flag_SetDungeonResult ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x7f - flag_SetPerformance ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|index&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|value&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x80 - flag_SetScenario ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|scenario_value&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|level_value&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x82 - Hold ===&lt;br /&gt;
Will stall a script forever.&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x87 - Jump ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|jump_address&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x89 - lives ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0xaa - message_SwitchMenu ===&lt;br /&gt;
Enclose within a switch case, and generates a dialogue prompt with the options present in subsequent &amp;quot;case menu(&amp;quot;text&amp;quot;):&amp;quot;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|cancel&lt;br /&gt;
|If player can use the B button to back out of a menu. 0 for false, 1 for true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|init&lt;br /&gt;
|Entry number to start the cursor at, starting at 1&lt;br /&gt;
|}&lt;br /&gt;
=== 0xab - message_SwitchMenu2 ===&lt;br /&gt;
Same as message_SwitchMenu, but it also takes an argument for a bitfield, and will only display dialogue options for which the corresponding bit is enabled (set to 1).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|cancel&lt;br /&gt;
|If player can use the B button to back out of a menu. 0 for false, 1 for true.&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|init&lt;br /&gt;
|Entry number to start the cursor at, starting at 1&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|Bitfield $VAR&lt;br /&gt;
|}&lt;br /&gt;
=== 0xac - message_SwitchMonologue ===&lt;br /&gt;
Structured similarly to a switch statement. Typically uses &amp;lt;code&amp;gt;$HERO_TALK_KIND&amp;lt;/code&amp;gt; as an argument, and uses multiple cases to display certain dialogue strings.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;case 4:&amp;lt;/code&amp;gt; used when the player is male or genderless&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;case 5:&amp;lt;/code&amp;gt; used when the player is female&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;default:&amp;lt;/code&amp;gt; used when &amp;lt;code&amp;gt;$HERO_TALK_KIND&amp;lt;/code&amp;gt;&#039;s Talk Group has a value other than 4 or 5&lt;br /&gt;
&lt;br /&gt;
This opcode supports displaying a portrait. No sound effect is used when text is scrolling.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&amp;lt;code&amp;gt;$x_TALK_KIND&amp;lt;/code&amp;gt;, contains Talk Group number&lt;br /&gt;
|}&lt;br /&gt;
=== 0xad - message_SwitchTalk ===&lt;br /&gt;
Same as _SwitchMonologue, but typically uses &amp;lt;code&amp;gt;$PARTNER_TALK_KIND&amp;lt;/code&amp;gt; as an argument, and the cases used vary.&lt;br /&gt;
&lt;br /&gt;
Of the vanilla game partner options:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;case 1:&amp;lt;/code&amp;gt; used if Squirtle, Tododile, Chimchar, Meowth, or Munchlax&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;case 2:&amp;lt;/code&amp;gt; used for all other male partners&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;case 3:&amp;lt;/code&amp;gt; used for all female partners&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;default:&amp;lt;/code&amp;gt; used when &amp;lt;code&amp;gt;$PARTNER_TALK_KIND&amp;lt;/code&amp;gt;&#039;s Talk Group has a value other than 1, 2, or 3&lt;br /&gt;
&lt;br /&gt;
This opcode supports displaying a portrait. The [[sound effect]] 16133 will emit from the each character scrolling in the text.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&amp;lt;code&amp;gt;$x_TALK_KIND&amp;lt;/code&amp;gt;, contains Talk Group number&lt;br /&gt;
|}&lt;br /&gt;
=== 0xc9 - object ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Object&lt;br /&gt;
|object_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0xcb - performer ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|performer_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0xd5 - Return ===&lt;br /&gt;
If run from within a macro, ends the macro.&lt;br /&gt;
&lt;br /&gt;
If run after the &amp;quot;call&amp;quot; opcode was used, will return to the address of the call opcode.&lt;br /&gt;
&lt;br /&gt;
If used within a script, ends the script. &lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x13f - Switch ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x140 - SwitchDirection ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Direction&lt;br /&gt;
|direction&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x141 - SwitchDirectionLives ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x142 - SwitchDirectionLives2 ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|unk0&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x143 - SwitchDirectionMark ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|PositionMark&lt;br /&gt;
|pos_marker&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x144 - SwitchDungeonMode ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|dungeon_id&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x145 - SwitchLives ===&lt;br /&gt;
If inside a Switch Case, take the case equal to the species ID of the specified Actor!&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|Entity&lt;br /&gt;
|actor_id&lt;br /&gt;
|An entry in the Actor List.&lt;br /&gt;
|}&lt;br /&gt;
=== 0x146 - SwitchRandom ===&lt;br /&gt;
To be used in a switch statement. Will switch to a case of a random number below the specified integer.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|uint&lt;br /&gt;
|max_value&lt;br /&gt;
|Largest random output, plus 1&lt;br /&gt;
|}&lt;br /&gt;
=== 0x147 - SwitchScenario ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x148 - SwitchScenarioLevel ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x149 - SwitchSector ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
No parameters.&lt;br /&gt;
=== 0x14a - SwitchValue ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
=== 0x14b - SwitchVariable ===&lt;br /&gt;
&amp;lt;TO DO: Opcode description&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|+Parameters&lt;br /&gt;
|-&lt;br /&gt;
!#&lt;br /&gt;
!Type&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|1&lt;br /&gt;
|GameVar&lt;br /&gt;
|var&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|2&lt;br /&gt;
|uint&lt;br /&gt;
|unk1&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|3&lt;br /&gt;
|uint&lt;br /&gt;
|unk2&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
{{NavScriptTerms}}&lt;br /&gt;
[[Category:Documentation]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_use_GfxCrunch_(Animated_Object_Sprites)&amp;diff=1041</id>
		<title>How to use GfxCrunch (Animated Object Sprites)</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_use_GfxCrunch_(Animated_Object_Sprites)&amp;diff=1041"/>
		<updated>2025-04-19T17:56:36Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* &amp;lt;Frame&amp;gt; */ simplified formatting, added decimal formats for clarification&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;XML&#039;&#039;&#039; is a markup language for data. &#039;&#039;&#039;GfxCrunch&#039;&#039;&#039; uses this data to create object sprites for EoS (not fully confirmed info).&lt;br /&gt;
&lt;br /&gt;
Recommend export to a static sprite from SkyTemple and then editing the exported files to your liking.&lt;br /&gt;
&lt;br /&gt;
XML uses &#039;&#039;&#039;tags&#039;&#039;&#039; to list this data in the format of:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;TagName&amp;gt; content here &amp;lt;/TagName&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
GfxCrunch uses the following folders and files to generate object sprites.&lt;br /&gt;
&lt;br /&gt;
== imgs Folder ==&lt;br /&gt;
This is a folder of all image sprites used in the animations. Images are labeled from &amp;lt;code&amp;gt;0000.png&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;0001.png&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;0002.png&amp;lt;/code&amp;gt;, etc. These images have to be &#039;&#039;indexed images&#039;&#039; and fit within GfxCrunch’s sizes (16 x 16 or multiples of that are safe starting points).&lt;br /&gt;
&lt;br /&gt;
== palette.pal ==&lt;br /&gt;
Contains the image palette. The indexes correspond with the color indexes of the sprites in the &amp;lt;code&amp;gt;imgs&amp;lt;/code&amp;gt; folder. Must contain 16 colors, including a transparent color. To obtain this, it&#039;s recommend to import one of your images into SkyTemple as a &#039;&#039;static sprite&#039;&#039;, then export from SkyTemple.&lt;br /&gt;
&lt;br /&gt;
== frames.xml ==&lt;br /&gt;
Contains data for image frames.&lt;br /&gt;
&lt;br /&gt;
A &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt; is made up of x amount of &amp;lt;code&amp;gt;&amp;lt;Frame&amp;gt;&amp;lt;/code&amp;gt; images, &#039;&#039;if&#039;&#039; it needs to form a bigger sprite. If a sprite is going to be just one image (eg: one PNG from the &amp;lt;code&amp;gt;imgs&amp;lt;/code&amp;gt; folder), each PNG that will be used for animations &#039;&#039;needs to be in its own &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt;. If not, this will cause memory issues and/or crashes when displaying the object in cutscenes.&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
See the definitions of the XML tags below.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;FrameGroup&amp;gt; ===&lt;br /&gt;
Indicates a group of frames. Multiple frames can be layered on top of each other or be aligned side-to-side to create a &amp;quot;bigger sprite.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;Frame&amp;gt; ===&lt;br /&gt;
Indicates a single image sprite.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;ImageIndex&amp;gt; ====&lt;br /&gt;
The image index of the frame. This correlates with the image number in the &amp;lt;code&amp;gt;imgs&amp;lt;/code&amp;gt; folder.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Unk0&amp;gt; ====&lt;br /&gt;
Unknown. Value seems to always be 0x0 (0 in hexadecimal).&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Offset&amp;gt; ====&lt;br /&gt;
Determines the image offset of the frame which will affect where it is positioned on-screen. Recommend to base offset values off of other frame offsets.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Unk1&amp;gt; ====&lt;br /&gt;
Unknown. Value seems to always be 0xc (12 in hexadecimal).&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Unk15&amp;gt; ====&lt;br /&gt;
Correlates to &#039;&#039;each &#039;&#039;&#039;Frame&#039;&#039;&#039;&#039;&#039; in &#039;&#039;one&#039;&#039; &#039;&#039;&#039;FrameGroup&#039;&#039;&#039;, used for memory allocation and layering. If there are &#039;&#039;&#039;multiple&#039;&#039;&#039; &#039;&#039;&#039;Frames&#039;&#039;&#039; in a &#039;&#039;&#039;FrameGroup&#039;&#039;&#039;, &#039;&#039;&#039;increment&#039;&#039;&#039; this value in each entry.&lt;br /&gt;
&lt;br /&gt;
Value needed to start with and/or increment depends on the resolution size of the sprite. Ideally:&lt;br /&gt;
&lt;br /&gt;
* 8x8 frame (smallest size) requires &amp;lt;code&amp;gt;0x1&amp;lt;/code&amp;gt; (1 in decimal)&lt;br /&gt;
* 16x32 frame requires &amp;lt;code&amp;gt;0x2&amp;lt;/code&amp;gt;  (2 in decimal)&lt;br /&gt;
* 32x64 frame requires &amp;lt;code&amp;gt;0x8&amp;lt;/code&amp;gt;  (8 in decimal)&lt;br /&gt;
* 32x32 frame requires &amp;lt;code&amp;gt;0x4&amp;lt;/code&amp;gt; (4 in decimal)&lt;br /&gt;
* 64x64 frame (largest size) requires &amp;lt;code&amp;gt;0x10&amp;lt;/code&amp;gt; (16 in decimal)&lt;br /&gt;
&lt;br /&gt;
The number is represented in hexadecimal, so 0x0 is 0... 0xc is 12, 0x10 is 16, etc. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;For more information on why this is important, see the [[How to use GfxCrunch (Animated Object Sprites)#spriteinfo.xml|spriteinfo.xml]] section.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;Resolution&amp;gt; =====&lt;br /&gt;
Uses &#039;&#039;&#039;&amp;lt;Width&amp;gt;&#039;&#039;&#039; and &#039;&#039;&#039;&amp;lt;Height&amp;gt;&#039;&#039;&#039; tags. Signals how large the image is in pixels.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;VFlip&amp;gt; &amp;amp; &amp;lt;HFlip&amp;gt; ====&lt;br /&gt;
Determines whether to flip the frame image vertically or horizontally, respectively. 0 does not flip the image while 1 does. &#039;&#039;&#039;Typically 0.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== animations.xml ==&lt;br /&gt;
Contains data for animations.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;AnimGroupTable&amp;gt; ===&lt;br /&gt;
Container for the &#039;&#039;&#039;AnimGroup&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;AnimGroup&amp;gt; ====&lt;br /&gt;
Group containing a list of all &#039;&#039;&#039;AnimSequenceIndexes&#039;&#039;&#039; associated with the sprite. Lists out animation sequence indexes from 0, 1, 2, all the way to 7. This number correlates to the SetAnimation scripting function. A more detailed explanation about this can be seen [[How to use GfxCrunch (Animated Object Sprites)#How to Use with SetAnimation()|below]]. &lt;br /&gt;
[[File:Gfxcrunch tutorial animgroup.png|center]]&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;AnimSequenceTable&amp;gt; ===&lt;br /&gt;
Container for each &#039;&#039;&#039;AnimSequence entry&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;AnimSequence&amp;gt; ====&lt;br /&gt;
Indicates an animation sequence, which is made up of individual &#039;&#039;&#039;AnimFrames&#039;&#039;&#039; defined in sequential order. Each &#039;&#039;&#039;AnimSequence&#039;&#039;&#039; should have an index in the &#039;&#039;&#039;AnimGroupTable&#039;&#039;&#039;. Remember that there is a maximum of &#039;&#039;&#039;8&#039;&#039;&#039; allowed, numbered 0 - 7.&lt;br /&gt;
&lt;br /&gt;
An &#039;&#039;&#039;AnimSequence&#039;&#039;&#039; can be made up of as little as one frame, to as many as needed, provided the total amount of frames defined in &amp;lt;code&amp;gt;frames.xml&amp;lt;/code&amp;gt; fit the memory allocation constraints (explained in the [[How to use GfxCrunch (Animated Object Sprites)#spriteinfo.xml|spriteinfo.xml]] section).&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;AnimFrame&amp;gt; =====&lt;br /&gt;
Indicates a single animation frame.&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;Duration&amp;gt; =====&lt;br /&gt;
Determines the duration of the frame, in frames. &lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;MetaFrameGroupIndex&amp;gt; =====&lt;br /&gt;
Determines the meta-frame the &#039;&#039;&#039;AnimFrame&#039;&#039;&#039; uses. &#039;&#039;This correlates to the frame’s index in &amp;lt;code&amp;gt;frames.xml&amp;lt;/code&amp;gt;&#039;&#039;, starting from 0.&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;Sprite&amp;gt; &amp;amp; &amp;lt;Shadow&amp;gt; =====&lt;br /&gt;
Unknown. Presumably they determine the offset of the sprite and shadow, respectively.&lt;br /&gt;
&lt;br /&gt;
== imgsinfo.xml ==&lt;br /&gt;
{{StubSection}}&lt;br /&gt;
Typically this file is pretty empty, like shown. This may differ in newer versions of SkyTemple.&lt;br /&gt;
[[File:Gfxcrunch tutorial imgsInfo example.png|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
== spriteinfo.xml ==&lt;br /&gt;
The most important tag here is &#039;&#039;&#039;&amp;lt;Unk6&amp;gt;&#039;&#039;&#039;. As noted from the XML comments:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&amp;quot;Nb of &amp;quot;blocks&amp;quot; the image takes up in tile memory. Affects where things like the relic fragment will be loaded. If too low, item not loaded and replaced with parts of character sprite.&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This value comes from adding up the hexadecimal values of &#039;&#039;&#039;[[How to use GfxCrunch (Animated Object Sprites)#&amp;lt;Unk16&amp;gt;|&amp;lt;Unk16&amp;gt;]]&#039;&#039;&#039; in &amp;lt;code&amp;gt;frames.xml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The maximum amount of &amp;quot;blocks&amp;quot; allowed for one sprite is &#039;&#039;&#039;255&#039;&#039;&#039; (&#039;&#039;&#039;0xFF&#039;&#039;&#039; in hexadecimal). Anything over this value will crash the game. As noted, anything lower may allow the game to run sub-optimally with glitched graphics.&lt;br /&gt;
&lt;br /&gt;
== offsets.xml ==&lt;br /&gt;
{{StubSection}}&lt;br /&gt;
Typically this file is pretty empty, like shown.[[File:GFXC tutorial offsets.xml example.png|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
== How to Use with SetAnimation() ==&lt;br /&gt;
This is the [[ExplorerScript]] function that lets you change the animation of an object, with an integer taken in as an argument. When using the function, it should be called as &amp;lt;code&amp;gt;SetAnimation&amp;lt;entity ENTITY&amp;gt;(x)&amp;lt;/code&amp;gt;, where &#039;&#039;&#039;x&#039;&#039;&#039; is the Animation ID defined below.&lt;br /&gt;
&lt;br /&gt;
Depending on how many &#039;&#039;&#039;AnimationSequenceIndexes&#039;&#039;&#039; you have defined and which behavior you want, the argument will differ as follows:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;1 - 8&#039;&#039;&#039; will cause a specific animation to &#039;&#039;loop&#039;&#039;, with &#039;&#039;&#039;1&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039; and &#039;&#039;&#039;8&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;9 - 16&#039;&#039;&#039; will play &#039;&#039;Animation 0&#039;&#039; and then play the first frame of the signified animation, with &#039;&#039;&#039;9&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039;  and &#039;&#039;&#039;16&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;17 - 24&#039;&#039;&#039; will play a specific animation &#039;&#039;without&#039;&#039; &#039;&#039;looping&#039;&#039;, with &#039;&#039;&#039;17&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039;  and &#039;&#039;&#039;24&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
For reference, here is a link to a sample folder: [https://drive.google.com/drive/u/2/folders/1ENtmeUDNhBbnaetIaDcaEUOS648NoowJ External Link to Google Drive]&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_use_GfxCrunch_(Animated_Object_Sprites)&amp;diff=1040</id>
		<title>How to use GfxCrunch (Animated Object Sprites)</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_use_GfxCrunch_(Animated_Object_Sprites)&amp;diff=1040"/>
		<updated>2025-04-19T17:48:10Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* Imgs Folder */ formatting&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;XML&#039;&#039;&#039; is a markup language for data. &#039;&#039;&#039;GfxCrunch&#039;&#039;&#039; uses this data to create object sprites for EoS (not fully confirmed info).&lt;br /&gt;
&lt;br /&gt;
Recommend export to a static sprite from SkyTemple and then editing the exported files to your liking.&lt;br /&gt;
&lt;br /&gt;
XML uses &#039;&#039;&#039;tags&#039;&#039;&#039; to list this data in the format of:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;TagName&amp;gt; content here &amp;lt;/TagName&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
GfxCrunch uses the following folders and files to generate object sprites.&lt;br /&gt;
&lt;br /&gt;
== imgs Folder ==&lt;br /&gt;
This is a folder of all image sprites used in the animations. Images are labeled from &amp;lt;code&amp;gt;0000.png&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;0001.png&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;0002.png&amp;lt;/code&amp;gt;, etc. These images have to be &#039;&#039;indexed images&#039;&#039; and fit within GfxCrunch’s sizes (16 x 16 or multiples of that are safe starting points).&lt;br /&gt;
&lt;br /&gt;
== palette.pal ==&lt;br /&gt;
Contains the image palette. The indexes correspond with the color indexes of the sprites in the &amp;lt;code&amp;gt;imgs&amp;lt;/code&amp;gt; folder. Must contain 16 colors, including a transparent color. To obtain this, it&#039;s recommend to import one of your images into SkyTemple as a &#039;&#039;static sprite&#039;&#039;, then export from SkyTemple.&lt;br /&gt;
&lt;br /&gt;
== frames.xml ==&lt;br /&gt;
Contains data for image frames.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;FrameGroup&amp;gt; ===&lt;br /&gt;
Indicates a group of frames. Multiple frames can be layered on top of each other or be aligned side-to-side to create a &amp;quot;bigger sprite.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;Frame&amp;gt; ===&lt;br /&gt;
Indicates a single image sprite.&lt;br /&gt;
&lt;br /&gt;
A &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt; is made up of x amount of &amp;lt;code&amp;gt;&amp;lt;Frame&amp;gt;&amp;lt;/code&amp;gt; images, &#039;&#039;if&#039;&#039; it needs to form a bigger sprite. If a sprite is going to be just one image (eg: one PNG from the &amp;lt;code&amp;gt;imgs&amp;lt;/code&amp;gt; folder), each PNG that will be used for animations &#039;&#039;needs to be in its own &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt;. If not, this will cause memory issues and/or crashes when displaying the object in cutscenes.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;ImageIndex&amp;gt; ====&lt;br /&gt;
The image index of the frame. This correlates with the image number in the imgs folder.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Unk0&amp;gt; ====&lt;br /&gt;
Unknown. Value seems to always be 0x0 (0 in hexadecimal).&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Offset&amp;gt; ====&lt;br /&gt;
Determines the image offset of the frame which will affect where it is positioned on-screen. Recommend to base offset values off of other frame offsets.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Unk1&amp;gt; ====&lt;br /&gt;
Unknown. Value seems to always be 0xc (12 in hexadecimal).&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Unk15&amp;gt; ====&lt;br /&gt;
Correlates to &#039;&#039;each &amp;lt;code&amp;gt;&amp;lt;Frame&amp;gt;&amp;lt;/code&amp;gt;&#039;&#039; in &#039;&#039;&#039;one&#039;&#039;&#039; &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt;, used for memory allocation and layering. If there are multiple &amp;lt;code&amp;gt;&amp;lt;Frames&amp;gt;&amp;lt;/code&amp;gt; in a &amp;lt;&amp;lt;code&amp;gt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt; , increment this value.&lt;br /&gt;
&lt;br /&gt;
Value needed to start with/increment depends on the size of the sprite. Ideally:&lt;br /&gt;
&lt;br /&gt;
* 8x8 frame (smallest size) requires &amp;lt;code&amp;gt;0x1&amp;lt;/code&amp;gt;&lt;br /&gt;
* 16x32 frame requires &amp;lt;code&amp;gt;0x2&amp;lt;/code&amp;gt; &lt;br /&gt;
* 32x64 frame requires &amp;lt;code&amp;gt;0x8&amp;lt;/code&amp;gt; &lt;br /&gt;
* 32x32 frame requires &amp;lt;code&amp;gt;0x4&amp;lt;/code&amp;gt;&lt;br /&gt;
* 64x64 frame (largest size) requires &amp;lt;code&amp;gt;0x10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The number is represented in hexadecimal, so 0x0 is 0... 0xc is 12, 0x10 is 16, etc. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;For more information on why this is important, see the [[How to use GfxCrunch (Animated Object Sprites)#spriteinfo.xml|spriteinfo.xml]] section.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;Resolution&amp;gt; =====&lt;br /&gt;
Uses &#039;&#039;&#039;&amp;lt;Width&amp;gt;&#039;&#039;&#039; and &#039;&#039;&#039;&amp;lt;Height&amp;gt;&#039;&#039;&#039; tags. Signals how large the image is in pixels.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;VFlip&amp;gt; &amp;amp; &amp;lt;HFlip&amp;gt; ====&lt;br /&gt;
Determines whether to flip the frame image vertically or horizontally, respectively. 0 does not flip the image while 1 does. &#039;&#039;&#039;Typically 0.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== animations.xml ==&lt;br /&gt;
Contains data for animations.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;AnimGroupTable&amp;gt; ===&lt;br /&gt;
Container for the &#039;&#039;&#039;AnimGroup&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;AnimGroup&amp;gt; ====&lt;br /&gt;
Group containing a list of all &#039;&#039;&#039;AnimSequenceIndexes&#039;&#039;&#039; associated with the sprite. Lists out animation sequence indexes from 0, 1, 2, all the way to 7. This number correlates to the SetAnimation scripting function. A more detailed explanation about this can be seen [[How to use GfxCrunch (Animated Object Sprites)#How to Use with SetAnimation()|below]]. &lt;br /&gt;
[[File:Gfxcrunch tutorial animgroup.png|center]]&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;AnimSequenceTable&amp;gt; ===&lt;br /&gt;
Container for each &#039;&#039;&#039;AnimSequence entry&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;AnimSequence&amp;gt; ====&lt;br /&gt;
Indicates an animation sequence, which is made up of individual &#039;&#039;&#039;AnimFrames&#039;&#039;&#039; defined in sequential order. Each &#039;&#039;&#039;AnimSequence&#039;&#039;&#039; should have an index in the &#039;&#039;&#039;AnimGroupTable&#039;&#039;&#039;. Remember that there is a maximum of &#039;&#039;&#039;8&#039;&#039;&#039; allowed, numbered 0 - 7.&lt;br /&gt;
&lt;br /&gt;
An &#039;&#039;&#039;AnimSequence&#039;&#039;&#039; can be made up of as little as one frame, to as many as needed, provided the total amount of frames defined in &amp;lt;code&amp;gt;frames.xml&amp;lt;/code&amp;gt; fit the memory allocation constraints (explained in the [[How to use GfxCrunch (Animated Object Sprites)#spriteinfo.xml|spriteinfo.xml]] section).&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;AnimFrame&amp;gt; =====&lt;br /&gt;
Indicates a single animation frame.&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;Duration&amp;gt; =====&lt;br /&gt;
Determines the duration of the frame, in frames. &lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;MetaFrameGroupIndex&amp;gt; =====&lt;br /&gt;
Determines the meta-frame the &#039;&#039;&#039;AnimFrame&#039;&#039;&#039; uses. &#039;&#039;This correlates to the frame’s index in &amp;lt;code&amp;gt;frames.xml&amp;lt;/code&amp;gt;&#039;&#039;, starting from 0.&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;Sprite&amp;gt; &amp;amp; &amp;lt;Shadow&amp;gt; =====&lt;br /&gt;
Unknown. Presumably they determine the offset of the sprite and shadow, respectively.&lt;br /&gt;
&lt;br /&gt;
== imgsinfo.xml ==&lt;br /&gt;
{{StubSection}}&lt;br /&gt;
Typically this file is pretty empty, like shown. This may differ in newer versions of SkyTemple.&lt;br /&gt;
[[File:Gfxcrunch tutorial imgsInfo example.png|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
== spriteinfo.xml ==&lt;br /&gt;
The most important tag here is &#039;&#039;&#039;&amp;lt;Unk6&amp;gt;&#039;&#039;&#039;. As noted from the XML comments:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&amp;quot;Nb of &amp;quot;blocks&amp;quot; the image takes up in tile memory. Affects where things like the relic fragment will be loaded. If too low, item not loaded and replaced with parts of character sprite.&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This value comes from adding up the hexadecimal values of &#039;&#039;&#039;[[How to use GfxCrunch (Animated Object Sprites)#&amp;lt;Unk16&amp;gt;|&amp;lt;Unk16&amp;gt;]]&#039;&#039;&#039; in &amp;lt;code&amp;gt;frames.xml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The maximum amount of &amp;quot;blocks&amp;quot; allowed for one sprite is &#039;&#039;&#039;255&#039;&#039;&#039; (&#039;&#039;&#039;0xFF&#039;&#039;&#039; in hexadecimal). Anything over this value will crash the game. As noted, anything lower may allow the game to run sub-optimally with glitched graphics.&lt;br /&gt;
&lt;br /&gt;
== offsets.xml ==&lt;br /&gt;
{{StubSection}}&lt;br /&gt;
Typically this file is pretty empty, like shown.[[File:GFXC tutorial offsets.xml example.png|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
== How to Use with SetAnimation() ==&lt;br /&gt;
This is the [[ExplorerScript]] function that lets you change the animation of an object, with an integer taken in as an argument. When using the function, it should be called as &amp;lt;code&amp;gt;SetAnimation&amp;lt;entity ENTITY&amp;gt;(x)&amp;lt;/code&amp;gt;, where &#039;&#039;&#039;x&#039;&#039;&#039; is the Animation ID defined below.&lt;br /&gt;
&lt;br /&gt;
Depending on how many &#039;&#039;&#039;AnimationSequenceIndexes&#039;&#039;&#039; you have defined and which behavior you want, the argument will differ as follows:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;1 - 8&#039;&#039;&#039; will cause a specific animation to &#039;&#039;loop&#039;&#039;, with &#039;&#039;&#039;1&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039; and &#039;&#039;&#039;8&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;9 - 16&#039;&#039;&#039; will play &#039;&#039;Animation 0&#039;&#039; and then play the first frame of the signified animation, with &#039;&#039;&#039;9&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039;  and &#039;&#039;&#039;16&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;17 - 24&#039;&#039;&#039; will play a specific animation &#039;&#039;without&#039;&#039; &#039;&#039;looping&#039;&#039;, with &#039;&#039;&#039;17&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039;  and &#039;&#039;&#039;24&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
For reference, here is a link to a sample folder: [https://drive.google.com/drive/u/2/folders/1ENtmeUDNhBbnaetIaDcaEUOS648NoowJ External Link to Google Drive]&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_use_GfxCrunch_(Animated_Object_Sprites)&amp;diff=1039</id>
		<title>How to use GfxCrunch (Animated Object Sprites)</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_use_GfxCrunch_(Animated_Object_Sprites)&amp;diff=1039"/>
		<updated>2025-04-19T17:47:09Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: simplified headers, added memory explanation&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;XML&#039;&#039;&#039; is a markup language for data. &#039;&#039;&#039;GfxCrunch&#039;&#039;&#039; uses this data to create object sprites for EoS (not fully confirmed info).&lt;br /&gt;
&lt;br /&gt;
Recommend export to a static sprite from SkyTemple and then editing the exported files to your liking.&lt;br /&gt;
&lt;br /&gt;
XML uses &#039;&#039;&#039;tags&#039;&#039;&#039; to list this data in the format of:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;TagName&amp;gt; content here &amp;lt;/TagName&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
GfxCrunch uses the following folders and files to generate object sprites.&lt;br /&gt;
&lt;br /&gt;
== Imgs Folder ==&lt;br /&gt;
This is a folder of all image sprites used in the animations. Images are labeled from &amp;lt;code&amp;gt;0000.png&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;0001.png&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;0002.png&amp;lt;/code&amp;gt;, etc. These images have to be i&#039;&#039;ndexed images&#039;&#039; and fit within GfxCrunch’s sizes (16 x 16 or multiples of that are safe starting points).&lt;br /&gt;
&lt;br /&gt;
== palette.pal ==&lt;br /&gt;
Contains the image palette. The indexes correspond with the color indexes of the sprites in the &amp;lt;code&amp;gt;imgs&amp;lt;/code&amp;gt; folder. Must contain 16 colors, including a transparent color. To obtain this, it&#039;s recommend to import one of your images into SkyTemple as a &#039;&#039;static sprite&#039;&#039;, then export from SkyTemple.&lt;br /&gt;
&lt;br /&gt;
== frames.xml ==&lt;br /&gt;
Contains data for image frames.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;FrameGroup&amp;gt; ===&lt;br /&gt;
Indicates a group of frames. Multiple frames can be layered on top of each other or be aligned side-to-side to create a &amp;quot;bigger sprite.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;Frame&amp;gt; ===&lt;br /&gt;
Indicates a single image sprite.&lt;br /&gt;
&lt;br /&gt;
A &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt; is made up of x amount of &amp;lt;code&amp;gt;&amp;lt;Frame&amp;gt;&amp;lt;/code&amp;gt; images, &#039;&#039;if&#039;&#039; it needs to form a bigger sprite. If a sprite is going to be just one image (eg: one PNG from the &amp;lt;code&amp;gt;imgs&amp;lt;/code&amp;gt; folder), each PNG that will be used for animations &#039;&#039;needs to be in its own &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt;. If not, this will cause memory issues and/or crashes when displaying the object in cutscenes.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;ImageIndex&amp;gt; ====&lt;br /&gt;
The image index of the frame. This correlates with the image number in the imgs folder.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Unk0&amp;gt; ====&lt;br /&gt;
Unknown. Value seems to always be 0x0 (0 in hexadecimal).&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Offset&amp;gt; ====&lt;br /&gt;
Determines the image offset of the frame which will affect where it is positioned on-screen. Recommend to base offset values off of other frame offsets.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Unk1&amp;gt; ====&lt;br /&gt;
Unknown. Value seems to always be 0xc (12 in hexadecimal).&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Unk15&amp;gt; ====&lt;br /&gt;
Correlates to &#039;&#039;each &amp;lt;code&amp;gt;&amp;lt;Frame&amp;gt;&amp;lt;/code&amp;gt;&#039;&#039; in &#039;&#039;&#039;one&#039;&#039;&#039; &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt;, used for memory allocation and layering. If there are multiple &amp;lt;code&amp;gt;&amp;lt;Frames&amp;gt;&amp;lt;/code&amp;gt; in a &amp;lt;&amp;lt;code&amp;gt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt; , increment this value.&lt;br /&gt;
&lt;br /&gt;
Value needed to start with/increment depends on the size of the sprite. Ideally:&lt;br /&gt;
&lt;br /&gt;
* 8x8 frame (smallest size) requires &amp;lt;code&amp;gt;0x1&amp;lt;/code&amp;gt;&lt;br /&gt;
* 16x32 frame requires &amp;lt;code&amp;gt;0x2&amp;lt;/code&amp;gt; &lt;br /&gt;
* 32x64 frame requires &amp;lt;code&amp;gt;0x8&amp;lt;/code&amp;gt; &lt;br /&gt;
* 32x32 frame requires &amp;lt;code&amp;gt;0x4&amp;lt;/code&amp;gt;&lt;br /&gt;
* 64x64 frame (largest size) requires &amp;lt;code&amp;gt;0x10&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The number is represented in hexadecimal, so 0x0 is 0... 0xc is 12, 0x10 is 16, etc. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;For more information on why this is important, see the [[How to use GfxCrunch (Animated Object Sprites)#spriteinfo.xml|spriteinfo.xml]] section.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;Resolution&amp;gt; =====&lt;br /&gt;
Uses &#039;&#039;&#039;&amp;lt;Width&amp;gt;&#039;&#039;&#039; and &#039;&#039;&#039;&amp;lt;Height&amp;gt;&#039;&#039;&#039; tags. Signals how large the image is in pixels.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;VFlip&amp;gt; &amp;amp; &amp;lt;HFlip&amp;gt; ====&lt;br /&gt;
Determines whether to flip the frame image vertically or horizontally, respectively. 0 does not flip the image while 1 does. &#039;&#039;&#039;Typically 0.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== animations.xml ==&lt;br /&gt;
Contains data for animations.&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;AnimGroupTable&amp;gt; ===&lt;br /&gt;
Container for the &#039;&#039;&#039;AnimGroup&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;AnimGroup&amp;gt; ====&lt;br /&gt;
Group containing a list of all &#039;&#039;&#039;AnimSequenceIndexes&#039;&#039;&#039; associated with the sprite. Lists out animation sequence indexes from 0, 1, 2, all the way to 7. This number correlates to the SetAnimation scripting function. A more detailed explanation about this can be seen [[How to use GfxCrunch (Animated Object Sprites)#How to Use with SetAnimation()|below]]. &lt;br /&gt;
[[File:Gfxcrunch tutorial animgroup.png|center]]&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;AnimSequenceTable&amp;gt; ===&lt;br /&gt;
Container for each &#039;&#039;&#039;AnimSequence entry&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;AnimSequence&amp;gt; ====&lt;br /&gt;
Indicates an animation sequence, which is made up of individual &#039;&#039;&#039;AnimFrames&#039;&#039;&#039; defined in sequential order. Each &#039;&#039;&#039;AnimSequence&#039;&#039;&#039; should have an index in the &#039;&#039;&#039;AnimGroupTable&#039;&#039;&#039;. Remember that there is a maximum of &#039;&#039;&#039;8&#039;&#039;&#039; allowed, numbered 0 - 7.&lt;br /&gt;
&lt;br /&gt;
An &#039;&#039;&#039;AnimSequence&#039;&#039;&#039; can be made up of as little as one frame, to as many as needed, provided the total amount of frames defined in &amp;lt;code&amp;gt;frames.xml&amp;lt;/code&amp;gt; fit the memory allocation constraints (explained in the [[How to use GfxCrunch (Animated Object Sprites)#spriteinfo.xml|spriteinfo.xml]] section).&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;AnimFrame&amp;gt; =====&lt;br /&gt;
Indicates a single animation frame.&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;Duration&amp;gt; =====&lt;br /&gt;
Determines the duration of the frame, in frames. &lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;MetaFrameGroupIndex&amp;gt; =====&lt;br /&gt;
Determines the meta-frame the &#039;&#039;&#039;AnimFrame&#039;&#039;&#039; uses. &#039;&#039;This correlates to the frame’s index in &amp;lt;code&amp;gt;frames.xml&amp;lt;/code&amp;gt;&#039;&#039;, starting from 0.&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;Sprite&amp;gt; &amp;amp; &amp;lt;Shadow&amp;gt; =====&lt;br /&gt;
Unknown. Presumably they determine the offset of the sprite and shadow, respectively.&lt;br /&gt;
&lt;br /&gt;
== imgsinfo.xml ==&lt;br /&gt;
{{StubSection}}&lt;br /&gt;
Typically this file is pretty empty, like shown. This may differ in newer versions of SkyTemple.&lt;br /&gt;
[[File:Gfxcrunch tutorial imgsInfo example.png|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
== spriteinfo.xml ==&lt;br /&gt;
The most important tag here is &#039;&#039;&#039;&amp;lt;Unk6&amp;gt;&#039;&#039;&#039;. As noted from the XML comments:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&amp;quot;Nb of &amp;quot;blocks&amp;quot; the image takes up in tile memory. Affects where things like the relic fragment will be loaded. If too low, item not loaded and replaced with parts of character sprite.&amp;quot;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This value comes from adding up the hexadecimal values of &#039;&#039;&#039;[[How to use GfxCrunch (Animated Object Sprites)#&amp;lt;Unk16&amp;gt;|&amp;lt;Unk16&amp;gt;]]&#039;&#039;&#039; in &amp;lt;code&amp;gt;frames.xml&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The maximum amount of &amp;quot;blocks&amp;quot; allowed for one sprite is &#039;&#039;&#039;255&#039;&#039;&#039; (&#039;&#039;&#039;0xFF&#039;&#039;&#039; in hexadecimal). Anything over this value will crash the game. As noted, anything lower may allow the game to run sub-optimally with glitched graphics.&lt;br /&gt;
&lt;br /&gt;
== offsets.xml ==&lt;br /&gt;
{{StubSection}}&lt;br /&gt;
Typically this file is pretty empty, like shown.[[File:GFXC tutorial offsets.xml example.png|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
== How to Use with SetAnimation() ==&lt;br /&gt;
This is the [[ExplorerScript]] function that lets you change the animation of an object, with an integer taken in as an argument. When using the function, it should be called as &amp;lt;code&amp;gt;SetAnimation&amp;lt;entity ENTITY&amp;gt;(x)&amp;lt;/code&amp;gt;, where &#039;&#039;&#039;x&#039;&#039;&#039; is the Animation ID defined below.&lt;br /&gt;
&lt;br /&gt;
Depending on how many &#039;&#039;&#039;AnimationSequenceIndexes&#039;&#039;&#039; you have defined and which behavior you want, the argument will differ as follows:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;1 - 8&#039;&#039;&#039; will cause a specific animation to &#039;&#039;loop&#039;&#039;, with &#039;&#039;&#039;1&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039; and &#039;&#039;&#039;8&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;9 - 16&#039;&#039;&#039; will play &#039;&#039;Animation 0&#039;&#039; and then play the first frame of the signified animation, with &#039;&#039;&#039;9&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039;  and &#039;&#039;&#039;16&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;17 - 24&#039;&#039;&#039; will play a specific animation &#039;&#039;without&#039;&#039; &#039;&#039;looping&#039;&#039;, with &#039;&#039;&#039;17&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039;  and &#039;&#039;&#039;24&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
For reference, here is a link to a sample folder: [https://drive.google.com/drive/u/2/folders/1ENtmeUDNhBbnaetIaDcaEUOS648NoowJ External Link to Google Drive]&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Gfxcrunch_tutorial_animgroup.png&amp;diff=1038</id>
		<title>File:Gfxcrunch tutorial animgroup.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Gfxcrunch_tutorial_animgroup.png&amp;diff=1038"/>
		<updated>2025-04-19T17:20:33Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;screenshot showing animgroup layout&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Gfxcrunch_tutorial_imgsInfo_example.png&amp;diff=1037</id>
		<title>File:Gfxcrunch tutorial imgsInfo example.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Gfxcrunch_tutorial_imgsInfo_example.png&amp;diff=1037"/>
		<updated>2025-04-19T17:15:44Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of imgsinfo.xml&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_use_GfxCrunch_(Animated_Object_Sprites)&amp;diff=1036</id>
		<title>How to use GfxCrunch (Animated Object Sprites)</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_use_GfxCrunch_(Animated_Object_Sprites)&amp;diff=1036"/>
		<updated>2025-04-19T16:46:14Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: Created page with &amp;quot;{{Stub}}  &amp;#039;&amp;#039;&amp;#039;XML&amp;#039;&amp;#039;&amp;#039; is a markup language for data. &amp;#039;&amp;#039;&amp;#039;GfxCrunch&amp;#039;&amp;#039;&amp;#039; uses this data to create object sprites for EoS (not confirmed).  Recommend export to a static sprite from SkyTemple and then editing the exported files to your liking.  XML uses tags to list this data in the format of:  &amp;lt;code&amp;gt;&amp;lt;TagName&amp;gt; content here &amp;lt;/TagName&amp;gt;&amp;lt;/code&amp;gt;  GfxCrunch uses the following folders and files to generate object sprites.  == Imgs Folder == This is a folder of all image sprites used in...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Stub}}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;XML&#039;&#039;&#039; is a markup language for data. &#039;&#039;&#039;GfxCrunch&#039;&#039;&#039; uses this data to create object sprites for EoS (not confirmed).&lt;br /&gt;
&lt;br /&gt;
Recommend export to a static sprite from SkyTemple and then editing the exported files to your liking.&lt;br /&gt;
&lt;br /&gt;
XML uses tags to list this data in the format of:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;TagName&amp;gt; content here &amp;lt;/TagName&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
GfxCrunch uses the following folders and files to generate object sprites.&lt;br /&gt;
&lt;br /&gt;
== Imgs Folder ==&lt;br /&gt;
This is a folder of all image sprites used in the animations. Images are labeled from &amp;lt;code&amp;gt;0000.png&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;0001.png&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;0002.png&amp;lt;/code&amp;gt;, etc. These images have to be i&#039;&#039;ndexed images&#039;&#039; and fit within GfxCrunch’s sizes (16 x 16 or multiples of that are safe starting points).&lt;br /&gt;
&lt;br /&gt;
== palette.pal ==&lt;br /&gt;
Contains the image palette. The indexes correspond with the color indexes of the sprites in the &amp;lt;code&amp;gt;imgs&amp;lt;/code&amp;gt; folder. Must contain 16 colors at most, including a transparent color. To obtain this, it&#039;s recommend to import one of your images into SkyTemple as a &#039;&#039;static sprite&#039;&#039;, then export from SkyTemple.&lt;br /&gt;
&lt;br /&gt;
== frames.xml ==&lt;br /&gt;
Contains data for image frames.&lt;br /&gt;
&lt;br /&gt;
=== XML Tags ===&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;FrameGroup&amp;gt; ====&lt;br /&gt;
Indicates a group of frames. Multiple frames can be layered on top of each other or be aligned side-to-side to create a &amp;quot;bigger sprite.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;Frame&amp;gt; ====&lt;br /&gt;
Indicates a single image sprite.&lt;br /&gt;
&lt;br /&gt;
A &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt; is made up of x amount of &amp;lt;code&amp;gt;&amp;lt;Frame&amp;gt;&amp;lt;/code&amp;gt; images, &#039;&#039;if&#039;&#039; it needs to form a bigger sprite. If a sprite is going to be just one image (eg: one PNG from the &amp;lt;code&amp;gt;imgs&amp;lt;/code&amp;gt; folder), each PNG that will be used for animations &#039;&#039;needs to be in its own &amp;lt;code&amp;gt;&amp;lt;FrameGroup&amp;gt;&amp;lt;/code&amp;gt;. If not, this will cause memory issues and/or crashes when displaying the object in cutscenes.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===== &amp;lt;ImageIndex&amp;gt; =====&lt;br /&gt;
The image index of the frame. This correlates with the image number in the imgs folder.&lt;br /&gt;
&lt;br /&gt;
== imgsinfo.xml ==&lt;br /&gt;
&lt;br /&gt;
== spriteinfo.xml ==&lt;br /&gt;
- todo: explanation of memory allowance in spriteinfo.xml&lt;br /&gt;
&lt;br /&gt;
== offsets.xml ==&lt;br /&gt;
[[File:GFXC tutorial offsets.xml example.png|center|thumb]]&lt;br /&gt;
&lt;br /&gt;
== How to Use with SetAnimation() ==&lt;br /&gt;
This is the [[ExplorerScript]] function that lets you change the animation of an object, with an integer taken in as an argument. When using the function, it should be called as &amp;lt;code&amp;gt;SetAnimation&amp;lt;entity ENTITY&amp;gt;(x)&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Depending on how many AnimationSequenceIndexes you have defined, the argument will differ as follows:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;1 - 8&#039;&#039;&#039; will cause a specific animation to &#039;&#039;loop&#039;&#039;, with &#039;&#039;&#039;1&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039; and &#039;&#039;&#039;8&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;9 - 16&#039;&#039;&#039; will play &#039;&#039;Animation 0&#039;&#039; and then play the first frame of the signified animation, with &#039;&#039;&#039;9&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039;  and &#039;&#039;&#039;16&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
* &#039;&#039;&#039;17 - 24&#039;&#039;&#039; will play a specific animation &#039;&#039;without&#039;&#039; &#039;&#039;looping&#039;&#039;, with &#039;&#039;&#039;17&#039;&#039;&#039; denoting &#039;&#039;Animation 0&#039;&#039;  and &#039;&#039;&#039;24&#039;&#039;&#039; denoting &#039;&#039;Animation 7&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Example ==&lt;br /&gt;
For reference, here is a link to a sample folder: [https://drive.google.com/drive/u/2/folders/1ENtmeUDNhBbnaetIaDcaEUOS648NoowJ External Link to Google Drive]&lt;br /&gt;
&lt;br /&gt;
When finished, add to Tutorials&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:GFXC_tutorial_offsets.xml_example.png&amp;diff=1035</id>
		<title>File:GFXC tutorial offsets.xml example.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:GFXC_tutorial_offsets.xml_example.png&amp;diff=1035"/>
		<updated>2025-04-19T16:44:08Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of the basic setup of offsets.xml&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=1003</id>
		<title>How to add custom Items</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=1003"/>
		<updated>2025-04-11T12:57:49Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* Possible Errors (&amp;amp; Fixes) */ rephrase&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Adding custom items can be broken down into two parts: setting item properties and adding a sprite (if needed).&lt;br /&gt;
&lt;br /&gt;
== Item Settings ==&lt;br /&gt;
The following will walk you through how to customize the properties and behavior of your item.&lt;br /&gt;
&lt;br /&gt;
=== Text ===&lt;br /&gt;
To begin, find a “dummy item” in the &#039;&#039;Items&#039;&#039; section of SkyTemple that has a name &amp;lt;code&amp;gt;[M:D1]$$$&amp;lt;/code&amp;gt;. Double-clicking opens the item’s settings, defaulting to the &#039;&#039;&#039;Text&#039;&#039;&#039; tab. From there you can enter a name, descriptions, category, buy price, and sell price. For more detailed descriptions of these options, see [[Item Data]]. There are also options to set a Sprite ID and Palette ID. Cycling through these changes the item sprite, and the colors used when displaying it. &lt;br /&gt;
[[File:Image tutorial 1 item text.png|alt=Screenshot of SkyTemple showing Item ID settings and dummy text|center|thumb|Example of default dummy text]]&lt;br /&gt;
&lt;br /&gt;
=== General ===&lt;br /&gt;
Switch to the &#039;&#039;&#039;General&#039;&#039;&#039; tab. These settings generally affect how this Item behaves in menus, including the Move ID field. &#039;&#039;Unless making a TM/HM, this should stay set to &#039;&#039;&#039;0&#039;&#039;&#039;.&#039;&#039; For more examples and detailed descriptions of these options, see [[Item Data#General|Item Data - General]].&lt;br /&gt;
[[File:Item tutorial 2 general.png|alt=Screenshot of SkyTemple with default General settings|center|thumb|Example of general settings for a non-stackable food item]]&lt;br /&gt;
&lt;br /&gt;
=== Flags ===&lt;br /&gt;
This tab has flags used to determine AI behavior in-game it looks like this . Depending on which ID you choose to edit, the &#039;&#039;&amp;quot;Is Valid&amp;quot;&#039;&#039; or &#039;&#039;&amp;quot;Is in T/D&#039;&#039;&amp;quot; switches could be flipped or not. Either way, all switches will be shown like this:&lt;br /&gt;
[[File:Item tutorial 3 flags.png|alt=Screenshot of SkyTemple&#039;s list of item flags, with all of them disabled/turned off|center|thumb|Example with all flags disabled (default dummy configuration)]]&lt;br /&gt;
The most important one to note is “&#039;&#039;&#039;Is Valid.&#039;&#039;&#039;” &#039;&#039;This should always be on if you want to use the item!&#039;&#039; Otherwise it cannot be added to the dungeon spawn menus, and will show up as a nonfunctional Plain Seed if manually added to the Treasure Bag.&lt;br /&gt;
&lt;br /&gt;
For more detailed descriptions of these options, see [[Item Data#Flags|Item Data - Flags]].&lt;br /&gt;
&lt;br /&gt;
Toggle these to fit your desired behavior. Once satisfied with these settings, save before continuing.&lt;br /&gt;
&lt;br /&gt;
=== Item Effects Code (Behavior in Dungeons) ===&lt;br /&gt;
The &#039;&#039;effects code&#039;&#039; controls what the item does when used in a dungeon. The table containing these can be found in &#039;&#039;Patches &amp;gt; ASM &amp;gt; Item Effects&#039;&#039;. Viewing this requires the [[ExtractItemCode]] patch.&lt;br /&gt;
[[File:Item tutorial 4 item effects nav.png|alt=Navigation/nested menu for Item Effects entry|center]]&lt;br /&gt;
The items are sorted &#039;&#039;alphabetically&#039;&#039;. If you do not see your new item in the list, you may need to reload the ROM first. This table on the (default) &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab is where you can edit the Effect ID. By default, dummy items have an Effect ID of &#039;&#039;86&#039;&#039;. Double-click on the number next to your item to enter a new one.&lt;br /&gt;
&lt;br /&gt;
Switching to the &#039;&#039;&#039;Effects Code&#039;&#039;&#039; tab has a dropdown menu where you can better see which effect is associated with what item.&lt;br /&gt;
[[File:Item tutorial 5 effect dropdown.png|alt=Screenshot showing 2 items sharing an Effect ID|center|thumb|Example of 2 items sharing an Effect ID]]&lt;br /&gt;
&lt;br /&gt;
==== Adding Custom Effects ====&lt;br /&gt;
If you want to add any custom effects that don’t exist in the base game, that requires ASM code. You can add a new Effect ID by clicking the plus (+) button next to the Effect ID menu, which creates a new entry in the dropdown menu. Selecting it shows the “Used By” table is empty because no item is assigned to it when first created. Import the ASM file; once successful, switch back to the &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab to assign the new Effect ID to an item.&lt;br /&gt;
&lt;br /&gt;
== Item Sprites ==&lt;br /&gt;
The following will walk you through how to create an import an image that fits EoS&#039;s dungeon sprite restrictions.&lt;br /&gt;
&lt;br /&gt;
=== Preparing an Image ===&lt;br /&gt;
Item sprites in EoS must be 16 x 16 pixels, set as indexed PNGs using a specific set of colors. The image below is an &#039;&#039;example&#039;&#039; of the full colormap used by all floor item sprites &amp;lt;small&amp;gt;(don&#039;t download it from this page, it&#039;s been compressed)&amp;lt;/small&amp;gt;.&lt;br /&gt;
[[File:Item tutorial 6 colormap ex.png|alt=Screenshot of dungeon colormap|center]]&lt;br /&gt;
Each of the rows makes up &#039;&#039;one&#039;&#039; individual palette, 15 in total (numbered 0-14). When creating sprites, you must pick a row to use and stick with it—using colors from multiple rows will cause SkyTemple to reject the import with an error. This is where the Palette ID number from the &#039;&#039;Items Settings&#039;&#039; comes in. It determines which row (and its corresponding colors) will be used. Switching to a different Palette ID (ex: from 2 to 3, or row 3 to row 4) will still reference the same positions, but with the color mappings of the new row. &#039;&#039;This includes the transparency color (blue) and outline color (black).&#039;&#039;&lt;br /&gt;
[[File:Image tutorial 7 pal ex.png|alt=Example of indexes carrying over between palettes, arrows drawn between Palette 2 and 3|center|thumb|Palette 2 -&amp;gt; Palette 3]]&lt;br /&gt;
A more in-depth example of this is shown below as we extract the colormap for our use.&lt;br /&gt;
&lt;br /&gt;
It is recommended to start sprinting with the full colormap imported into your sprite editor, so that there are no issues with the indexes later. The easiest way to get the colormap is to export an existing sprite! Navigate to the &#039;&#039;&#039;Dungeon Graphics&#039;&#039;&#039; dropdown, and you will see a list of items for &#039;&#039;Tilesets, Backgrounds (used for [[Fixed Room|Fixed Rooms]], with a tutorial on those [[Fixed Room Guide|here]]), Traps, Items, and Color Map.&#039;&#039; The one we are interested in is &#039;&#039;&#039;Items&#039;&#039;&#039;.&lt;br /&gt;
[[File:Item tutorial dungeon graphics nav.png|alt=Screenshot of ST dropdown for Dungeon Graphics, with Item sprites located there|center]]&lt;br /&gt;
&#039;&#039;Important: The colormap seen in this section is different compared to the one exported with items. Do not use the &amp;quot;Color Map&amp;quot; entry from this dropdown unless you know what you&#039;re doing.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Exporting the Stick with the Palette ID set to &#039;&#039;&#039;1&#039;&#039;&#039; shows this message:[[File:Item tutorial 8 exporting stick.png|alt=Screenshot of Stick sprite with the Palette ID set to 1|center|border]]&amp;lt;small&amp;gt;(Note: all ST screenshots are cropped to save space, the editor does not shrink this much)&amp;lt;/small&amp;gt;[[File:Item tutorial 9 export dialog.png|alt=Screenshot of export dialog (&amp;quot;This exports currently selected image with the currently selected palette. image will contain all palettes&amp;quot;)|center|border]]&lt;br /&gt;
This means that the sprite of the Stick will &#039;&#039;look&#039;&#039; brown, but still have the full colormap in its data. Opening the PNG in a sprite editor shows which colors will be used in each variation of the palette. Using an eyedrop tool or color selection mechanic can highlight the index of the brown being used (index 25). Finding the other shades of brown from there gives a point of reference for each row.&lt;br /&gt;
[[File:Item tutorial 10 stick index example.png|alt=Screenshot of Stick PNG open in sprite editor, showing which colors share the same columns|center|thumb|408x408px|These 3 colors share the same positions within every palette]]&lt;br /&gt;
This is useful if you make a sprite that you want &#039;&#039;multiple variants&#039;&#039; of (Stick, Iron Thorn, Apple, Golden Apple, etc.).&lt;br /&gt;
&lt;br /&gt;
From there, you can save the colormap in your sprite editor to load as needed and create your sprite with your chosen colors. Note that you &#039;&#039;can&#039;&#039; make/import a custom palette, but that may affect existing sprites, and is out of scope of this tutorial at the moment.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a Cheri Berry sprite, not intended to have variants. You can see the sprite only uses colors from Palette 3 (row 4 of the colormap).&lt;br /&gt;
[[File:Item tutorial 11 full row use example.png|alt=Screenshot of a cheri berri (red and green), Example of using almost all colors in a palette|center|thumb|Example of using almost all colors in a palette (sprite credit: deltaflare)]]&lt;br /&gt;
&lt;br /&gt;
=== Importing an Image into Slot 63 ===&lt;br /&gt;
Each item sprite in the game takes up one “slot” that is reserved for use in dungeons. To see which slots are valid to use, see the list in [[Item/Trap Graphics]]. Slots 0 – 62 are used for existing items, with slot 63 being unused in the base game. Given this, it looks like a blank blue square in SkyTemple, free to be used.&lt;br /&gt;
[[File:Item tutorial 12 slot 63 default.png|alt=Screenshot of slot 63 (blank unused sprite)|center|300x300px]]&lt;br /&gt;
Before clicking “Import,” make sure to set the Palette ID to the number you want to use for the &#039;&#039;new&#039;&#039; item. This helps the sprite look “as intended” to check that everything looks correct. Make sure to have the “import palettes” option turned &#039;&#039;&#039;off&#039;&#039;&#039;, and the “insert as NEW image” option turned &#039;&#039;&#039;off&#039;&#039;&#039; (because this is replacing a currently blank sprite with your image).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
Remember that a single sprite can have multiple color variations (Berries, Sticks, etc.), so there is no need for duplicates if you have the desired color indexes matching between rows. If you are only importing &#039;&#039;one&#039;&#039; sprite, feel free to skip to [[How to add custom Items#Setting the Sprite|Setting the Sprite]]. If you plan to import more sprites, &#039;&#039;read the “&#039;&#039;&#039;Importing Past Slot 63&#039;&#039;&#039;” section below&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Possible Errors (&amp;amp; Fixes) ====&lt;br /&gt;
Here are some examples of errors that could happen, with the tile details removed to help explain the cause.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette 0” when using a non-0 palette&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 14 error 1.png|alt=Screenshot of error that could happen when importing into Slot 63 specifically|center|400x400px]]&lt;br /&gt;
Even with the Palette ID number set in the UI, &#039;&#039;&#039;the tool first looks at the index number of the &#039;&#039;transparent&#039;&#039; color to start checking the rest.&#039;&#039;&#039; This means if you mistakenly used the transparent color from Palette 0 when making your sprite, the editor &#039;&#039;now expects everything to come from&#039;&#039; &#039;&#039;Palette 0&#039;&#039;. “Color 49” is the black outline color in &#039;&#039;Palette 3&#039;&#039;. Because “color 49” is not an expected color (&amp;quot;color 1&amp;quot; is the s the black outline color in Palette 0), the editor rejects the image.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette x”&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 15 error 2.png|alt=Error for uploading to slot 63|center|400x400px]]&lt;br /&gt;
Even with the transparency and outline colors corrected, you may still get an “expected colors” error, despite them matching the palette at a glance. Note that Palettes 1 and 3 share a set of greens (index 27, and index 59). Using the “incorrect green” causes the error (especially if indexing a RGB-mode sprite; the drawing program could attempt to auto-assign incorrect indexes). This is why it&#039;s recommended to work directly with the colormap.&lt;br /&gt;
&lt;br /&gt;
To fix any of these errors, correct the offending colors in your PNG and import again.&lt;br /&gt;
&lt;br /&gt;
=== Importing Past Slot 63 ===&lt;br /&gt;
As noted in [[Item/Trap Graphics#Sprite Slots]], &#039;&#039;&#039;slots 64 - 81&#039;&#039;&#039; will always be replaced by the game with status sprites. This means whatever you import into these slots is &#039;&#039;not permanent,&#039;&#039; and the next valid slot is &#039;&#039;&#039;82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
By default, SkyTemple only shows entries for the existing slots. In order to reach slot, you need to import “blank” sprites. Create a PNG that uses the dungeon item colormap, filled with Palette 0’s blue transparency color. When importing, make sure to have “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;, so slot 63 isn’t replaced.&lt;br /&gt;
[[File:Item tutorial 16 import settings past 63.png|alt=Screenshot of import settings to add a new entry|center|300x300px]]&lt;br /&gt;
[[File:Item tutorial 17 slot 64.png|alt=Example of what slot 64 should look like (blank blue image)|center|300x300px]]&lt;br /&gt;
Now a new entry exists at &#039;&#039;&#039;slot 64&#039;&#039;&#039;! Continue doing this until you reach &#039;&#039;&#039;slot 81&#039;&#039;&#039;. Once you have imported a blank sprite into slot 81, you can import a proper sprite with the “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;. This will create a permanent sprite in &#039;&#039;&#039;slot 82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
You can freely continue this process with &#039;&#039;&#039;slots 83 – 95&#039;&#039;&#039;, as needed.&lt;br /&gt;
&lt;br /&gt;
==== Possible Error (&amp;amp; Fix) ====&lt;br /&gt;
[[File:Item tutorial uncaught error ex.png|alt=Screenshot of uncaught error that happens when importing with incorrect colors|center|thumb|400x400px|Uncaught error that happens when importing with incorrect colors]]&lt;br /&gt;
If you have any “expected color” issues, SkyTemple first will give an error showing the incorrect index, then throw an uncaught TypeError exception. This is slightly different from the error with slot 63 because SkyTemple first creates an entry, then cannot process the color data when importing. So the entry becomes invalid while the editor still tries to display it. &#039;&#039;Don’t panic! You can correct this without having to reload/close without saving!&#039;&#039; Correct the color errors and import as &#039;&#039;replacing&#039;&#039; &#039;&#039;current entry&#039;&#039; (i.e.: replacing the invalid entry with colors that the editor can properly validate).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
&lt;br /&gt;
==== Current Limitations - Important! ====&lt;br /&gt;
{{Main|Item/Trap Graphics#Sprite Slots}}&lt;br /&gt;
Edits to &#039;&#039;&#039;slots 96 - 103&#039;&#039;&#039; will &#039;&#039;permanently overwrite&#039;&#039; the sprites present in that row (this includes things like Pokémon shadows).&lt;br /&gt;
&lt;br /&gt;
=== Setting the Sprite ===&lt;br /&gt;
Now that the sprite has been imported, you can set it to be associated with your new item!&lt;br /&gt;
&lt;br /&gt;
Go back to the &#039;&#039;Items &amp;gt; [item name]&#039;&#039; , and set the Sprite ID to &#039;&#039;&#039;63&#039;&#039;&#039; (or whatever index you inserted it at). Increment the Palette ID, and you will see the sprite change colors depending on the ones you used (remember the IDs start at 0).&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=1002</id>
		<title>How to add custom Items</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=1002"/>
		<updated>2025-04-11T12:54:32Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* Preparing an Image */ clarifying Dungeon Graphics nav&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Adding custom items can be broken down into two parts: setting item properties and adding a sprite (if needed).&lt;br /&gt;
&lt;br /&gt;
== Item Settings ==&lt;br /&gt;
The following will walk you through how to customize the properties and behavior of your item.&lt;br /&gt;
&lt;br /&gt;
=== Text ===&lt;br /&gt;
To begin, find a “dummy item” in the &#039;&#039;Items&#039;&#039; section of SkyTemple that has a name &amp;lt;code&amp;gt;[M:D1]$$$&amp;lt;/code&amp;gt;. Double-clicking opens the item’s settings, defaulting to the &#039;&#039;&#039;Text&#039;&#039;&#039; tab. From there you can enter a name, descriptions, category, buy price, and sell price. For more detailed descriptions of these options, see [[Item Data]]. There are also options to set a Sprite ID and Palette ID. Cycling through these changes the item sprite, and the colors used when displaying it. &lt;br /&gt;
[[File:Image tutorial 1 item text.png|alt=Screenshot of SkyTemple showing Item ID settings and dummy text|center|thumb|Example of default dummy text]]&lt;br /&gt;
&lt;br /&gt;
=== General ===&lt;br /&gt;
Switch to the &#039;&#039;&#039;General&#039;&#039;&#039; tab. These settings generally affect how this Item behaves in menus, including the Move ID field. &#039;&#039;Unless making a TM/HM, this should stay set to &#039;&#039;&#039;0&#039;&#039;&#039;.&#039;&#039; For more examples and detailed descriptions of these options, see [[Item Data#General|Item Data - General]].&lt;br /&gt;
[[File:Item tutorial 2 general.png|alt=Screenshot of SkyTemple with default General settings|center|thumb|Example of general settings for a non-stackable food item]]&lt;br /&gt;
&lt;br /&gt;
=== Flags ===&lt;br /&gt;
This tab has flags used to determine AI behavior in-game it looks like this . Depending on which ID you choose to edit, the &#039;&#039;&amp;quot;Is Valid&amp;quot;&#039;&#039; or &#039;&#039;&amp;quot;Is in T/D&#039;&#039;&amp;quot; switches could be flipped or not. Either way, all switches will be shown like this:&lt;br /&gt;
[[File:Item tutorial 3 flags.png|alt=Screenshot of SkyTemple&#039;s list of item flags, with all of them disabled/turned off|center|thumb|Example with all flags disabled (default dummy configuration)]]&lt;br /&gt;
The most important one to note is “&#039;&#039;&#039;Is Valid.&#039;&#039;&#039;” &#039;&#039;This should always be on if you want to use the item!&#039;&#039; Otherwise it cannot be added to the dungeon spawn menus, and will show up as a nonfunctional Plain Seed if manually added to the Treasure Bag.&lt;br /&gt;
&lt;br /&gt;
For more detailed descriptions of these options, see [[Item Data#Flags|Item Data - Flags]].&lt;br /&gt;
&lt;br /&gt;
Toggle these to fit your desired behavior. Once satisfied with these settings, save before continuing.&lt;br /&gt;
&lt;br /&gt;
=== Item Effects Code (Behavior in Dungeons) ===&lt;br /&gt;
The &#039;&#039;effects code&#039;&#039; controls what the item does when used in a dungeon. The table containing these can be found in &#039;&#039;Patches &amp;gt; ASM &amp;gt; Item Effects&#039;&#039;. Viewing this requires the [[ExtractItemCode]] patch.&lt;br /&gt;
[[File:Item tutorial 4 item effects nav.png|alt=Navigation/nested menu for Item Effects entry|center]]&lt;br /&gt;
The items are sorted &#039;&#039;alphabetically&#039;&#039;. If you do not see your new item in the list, you may need to reload the ROM first. This table on the (default) &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab is where you can edit the Effect ID. By default, dummy items have an Effect ID of &#039;&#039;86&#039;&#039;. Double-click on the number next to your item to enter a new one.&lt;br /&gt;
&lt;br /&gt;
Switching to the &#039;&#039;&#039;Effects Code&#039;&#039;&#039; tab has a dropdown menu where you can better see which effect is associated with what item.&lt;br /&gt;
[[File:Item tutorial 5 effect dropdown.png|alt=Screenshot showing 2 items sharing an Effect ID|center|thumb|Example of 2 items sharing an Effect ID]]&lt;br /&gt;
&lt;br /&gt;
==== Adding Custom Effects ====&lt;br /&gt;
If you want to add any custom effects that don’t exist in the base game, that requires ASM code. You can add a new Effect ID by clicking the plus (+) button next to the Effect ID menu, which creates a new entry in the dropdown menu. Selecting it shows the “Used By” table is empty because no item is assigned to it when first created. Import the ASM file; once successful, switch back to the &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab to assign the new Effect ID to an item.&lt;br /&gt;
&lt;br /&gt;
== Item Sprites ==&lt;br /&gt;
The following will walk you through how to create an import an image that fits EoS&#039;s dungeon sprite restrictions.&lt;br /&gt;
&lt;br /&gt;
=== Preparing an Image ===&lt;br /&gt;
Item sprites in EoS must be 16 x 16 pixels, set as indexed PNGs using a specific set of colors. The image below is an &#039;&#039;example&#039;&#039; of the full colormap used by all floor item sprites &amp;lt;small&amp;gt;(don&#039;t download it from this page, it&#039;s been compressed)&amp;lt;/small&amp;gt;.&lt;br /&gt;
[[File:Item tutorial 6 colormap ex.png|alt=Screenshot of dungeon colormap|center]]&lt;br /&gt;
Each of the rows makes up &#039;&#039;one&#039;&#039; individual palette, 15 in total (numbered 0-14). When creating sprites, you must pick a row to use and stick with it—using colors from multiple rows will cause SkyTemple to reject the import with an error. This is where the Palette ID number from the &#039;&#039;Items Settings&#039;&#039; comes in. It determines which row (and its corresponding colors) will be used. Switching to a different Palette ID (ex: from 2 to 3, or row 3 to row 4) will still reference the same positions, but with the color mappings of the new row. &#039;&#039;This includes the transparency color (blue) and outline color (black).&#039;&#039;&lt;br /&gt;
[[File:Image tutorial 7 pal ex.png|alt=Example of indexes carrying over between palettes, arrows drawn between Palette 2 and 3|center|thumb|Palette 2 -&amp;gt; Palette 3]]&lt;br /&gt;
A more in-depth example of this is shown below as we extract the colormap for our use.&lt;br /&gt;
&lt;br /&gt;
It is recommended to start sprinting with the full colormap imported into your sprite editor, so that there are no issues with the indexes later. The easiest way to get the colormap is to export an existing sprite! Navigate to the &#039;&#039;&#039;Dungeon Graphics&#039;&#039;&#039; dropdown, and you will see a list of items for &#039;&#039;Tilesets, Backgrounds (used for [[Fixed Room|Fixed Rooms]], with a tutorial on those [[Fixed Room Guide|here]]), Traps, Items, and Color Map.&#039;&#039; The one we are interested in is &#039;&#039;&#039;Items&#039;&#039;&#039;.&lt;br /&gt;
[[File:Item tutorial dungeon graphics nav.png|alt=Screenshot of ST dropdown for Dungeon Graphics, with Item sprites located there|center]]&lt;br /&gt;
&#039;&#039;Important: The colormap seen in this section is different compared to the one exported with items. Do not use the &amp;quot;Color Map&amp;quot; entry from this dropdown unless you know what you&#039;re doing.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Exporting the Stick with the Palette ID set to &#039;&#039;&#039;1&#039;&#039;&#039; shows this message:[[File:Item tutorial 8 exporting stick.png|alt=Screenshot of Stick sprite with the Palette ID set to 1|center|border]]&amp;lt;small&amp;gt;(Note: all ST screenshots are cropped to save space, the editor does not shrink this much)&amp;lt;/small&amp;gt;[[File:Item tutorial 9 export dialog.png|alt=Screenshot of export dialog (&amp;quot;This exports currently selected image with the currently selected palette. image will contain all palettes&amp;quot;)|center|border]]&lt;br /&gt;
This means that the sprite of the Stick will &#039;&#039;look&#039;&#039; brown, but still have the full colormap in its data. Opening the PNG in a sprite editor shows which colors will be used in each variation of the palette. Using an eyedrop tool or color selection mechanic can highlight the index of the brown being used (index 25). Finding the other shades of brown from there gives a point of reference for each row.&lt;br /&gt;
[[File:Item tutorial 10 stick index example.png|alt=Screenshot of Stick PNG open in sprite editor, showing which colors share the same columns|center|thumb|408x408px|These 3 colors share the same positions within every palette]]&lt;br /&gt;
This is useful if you make a sprite that you want &#039;&#039;multiple variants&#039;&#039; of (Stick, Iron Thorn, Apple, Golden Apple, etc.).&lt;br /&gt;
&lt;br /&gt;
From there, you can save the colormap in your sprite editor to load as needed and create your sprite with your chosen colors. Note that you &#039;&#039;can&#039;&#039; make/import a custom palette, but that may affect existing sprites, and is out of scope of this tutorial at the moment.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a Cheri Berry sprite, not intended to have variants. You can see the sprite only uses colors from Palette 3 (row 4 of the colormap).&lt;br /&gt;
[[File:Item tutorial 11 full row use example.png|alt=Screenshot of a cheri berri (red and green), Example of using almost all colors in a palette|center|thumb|Example of using almost all colors in a palette (sprite credit: deltaflare)]]&lt;br /&gt;
&lt;br /&gt;
=== Importing an Image into Slot 63 ===&lt;br /&gt;
Each item sprite in the game takes up one “slot” that is reserved for use in dungeons. To see which slots are valid to use, see the list in [[Item/Trap Graphics]]. Slots 0 – 62 are used for existing items, with slot 63 being unused in the base game. Given this, it looks like a blank blue square in SkyTemple, free to be used.&lt;br /&gt;
[[File:Item tutorial 12 slot 63 default.png|alt=Screenshot of slot 63 (blank unused sprite)|center|300x300px]]&lt;br /&gt;
Before clicking “Import,” make sure to set the Palette ID to the number you want to use for the &#039;&#039;new&#039;&#039; item. This helps the sprite look “as intended” to check that everything looks correct. Make sure to have the “import palettes” option turned &#039;&#039;&#039;off&#039;&#039;&#039;, and the “insert as NEW image” option turned &#039;&#039;&#039;off&#039;&#039;&#039; (because this is replacing a currently blank sprite with your image).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
Remember that a single sprite can have multiple color variations (Berries, Sticks, etc.), so there is no need for duplicates if you have the desired color indexes matching between rows. If you are only importing &#039;&#039;one&#039;&#039; sprite, feel free to skip to [[How to add custom Items#Setting the Sprite|Setting the Sprite]]. If you plan to import more sprites, &#039;&#039;read the “&#039;&#039;&#039;Importing Past Slot 63&#039;&#039;&#039;” section below&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Possible Errors (&amp;amp; Fixes) ====&lt;br /&gt;
Here are some examples of errors that could happen, with the tile details removed to help explain the cause.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette 0” when using a non-0 palette&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 14 error 1.png|alt=Screenshot of error that could happen when importing into Slot 63 specifically|center|400x400px]]&lt;br /&gt;
Even with the Palette ID number set in the UI, &#039;&#039;&#039;the tool first looks at the index number of the &#039;&#039;transparent&#039;&#039; color to start checking the rest.&#039;&#039;&#039; This means if you mistakenly used the transparent color from Palette 0 when making your sprite, the editor &#039;&#039;now expects everything to come from&#039;&#039; &#039;&#039;Palette 0&#039;&#039;. “Color 49” is the black outline color in &#039;&#039;Palette 3&#039;&#039;. Because “color 49” is not an expected color, the editor rejects the image.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette x”&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 15 error 2.png|alt=Error for uploading to slot 63|center|400x400px]]&lt;br /&gt;
Even with the transparency and outline colors corrected, you may still get an “expected colors” error, despite them matching the palette at a glance. Note that Palettes 1 and 3 share a set of greens (index 27, and index 59). Using the “incorrect green” causes the error (especially if indexing a previously-RGB-mode sprite; the drawing program could attempt to auto-assign incorrect indexes). This is why it&#039;s recommended to work directly with the colormap.&lt;br /&gt;
&lt;br /&gt;
To fix any of these errors, correct the offending colors in your PNG and import again.&lt;br /&gt;
&lt;br /&gt;
=== Importing Past Slot 63 ===&lt;br /&gt;
As noted in [[Item/Trap Graphics#Sprite Slots]], &#039;&#039;&#039;slots 64 - 81&#039;&#039;&#039; will always be replaced by the game with status sprites. This means whatever you import into these slots is &#039;&#039;not permanent,&#039;&#039; and the next valid slot is &#039;&#039;&#039;82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
By default, SkyTemple only shows entries for the existing slots. In order to reach slot, you need to import “blank” sprites. Create a PNG that uses the dungeon item colormap, filled with Palette 0’s blue transparency color. When importing, make sure to have “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;, so slot 63 isn’t replaced.&lt;br /&gt;
[[File:Item tutorial 16 import settings past 63.png|alt=Screenshot of import settings to add a new entry|center|300x300px]]&lt;br /&gt;
[[File:Item tutorial 17 slot 64.png|alt=Example of what slot 64 should look like (blank blue image)|center|300x300px]]&lt;br /&gt;
Now a new entry exists at &#039;&#039;&#039;slot 64&#039;&#039;&#039;! Continue doing this until you reach &#039;&#039;&#039;slot 81&#039;&#039;&#039;. Once you have imported a blank sprite into slot 81, you can import a proper sprite with the “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;. This will create a permanent sprite in &#039;&#039;&#039;slot 82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
You can freely continue this process with &#039;&#039;&#039;slots 83 – 95&#039;&#039;&#039;, as needed.&lt;br /&gt;
&lt;br /&gt;
==== Possible Error (&amp;amp; Fix) ====&lt;br /&gt;
[[File:Item tutorial uncaught error ex.png|alt=Screenshot of uncaught error that happens when importing with incorrect colors|center|thumb|400x400px|Uncaught error that happens when importing with incorrect colors]]&lt;br /&gt;
If you have any “expected color” issues, SkyTemple first will give an error showing the incorrect index, then throw an uncaught TypeError exception. This is slightly different from the error with slot 63 because SkyTemple first creates an entry, then cannot process the color data when importing. So the entry becomes invalid while the editor still tries to display it. &#039;&#039;Don’t panic! You can correct this without having to reload/close without saving!&#039;&#039; Correct the color errors and import as &#039;&#039;replacing&#039;&#039; &#039;&#039;current entry&#039;&#039; (i.e.: replacing the invalid entry with colors that the editor can properly validate).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
&lt;br /&gt;
==== Current Limitations - Important! ====&lt;br /&gt;
{{Main|Item/Trap Graphics#Sprite Slots}}&lt;br /&gt;
Edits to &#039;&#039;&#039;slots 96 - 103&#039;&#039;&#039; will &#039;&#039;permanently overwrite&#039;&#039; the sprites present in that row (this includes things like Pokémon shadows).&lt;br /&gt;
&lt;br /&gt;
=== Setting the Sprite ===&lt;br /&gt;
Now that the sprite has been imported, you can set it to be associated with your new item!&lt;br /&gt;
&lt;br /&gt;
Go back to the &#039;&#039;Items &amp;gt; [item name]&#039;&#039; , and set the Sprite ID to &#039;&#039;&#039;63&#039;&#039;&#039; (or whatever index you inserted it at). Increment the Palette ID, and you will see the sprite change colors depending on the ones you used (remember the IDs start at 0).&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_dungeon_graphics_nav.png&amp;diff=1001</id>
		<title>File:Item tutorial dungeon graphics nav.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_dungeon_graphics_nav.png&amp;diff=1001"/>
		<updated>2025-04-11T12:35:10Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of ST dropdown for Dungeon Graphics&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=1000</id>
		<title>How to add custom Items</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=1000"/>
		<updated>2025-04-10T18:30:44Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: slight wording changes, added category&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Adding custom items can be broken down into two parts: setting item properties and adding a sprite (if needed).&lt;br /&gt;
&lt;br /&gt;
== Item Settings ==&lt;br /&gt;
The following will walk you through how to customize the properties and behavior of your item.&lt;br /&gt;
&lt;br /&gt;
=== Text ===&lt;br /&gt;
To begin, find a “dummy item” in the &#039;&#039;Items&#039;&#039; section of SkyTemple that has a name &amp;lt;code&amp;gt;[M:D1]$$$&amp;lt;/code&amp;gt;. Double-clicking opens the item’s settings, defaulting to the &#039;&#039;&#039;Text&#039;&#039;&#039; tab. From there you can enter a name, descriptions, category, buy price, and sell price. For more detailed descriptions of these options, see [[Item Data]]. There are also options to set a Sprite ID and Palette ID. Cycling through these changes the item sprite, and the colors used when displaying it. &lt;br /&gt;
[[File:Image tutorial 1 item text.png|alt=Screenshot of SkyTemple showing Item ID settings and dummy text|center|thumb|Example of default dummy text]]&lt;br /&gt;
&lt;br /&gt;
=== General ===&lt;br /&gt;
Switch to the &#039;&#039;&#039;General&#039;&#039;&#039; tab. These settings generally affect how this Item behaves in menus, including the Move ID field. &#039;&#039;Unless making a TM/HM, this should stay set to &#039;&#039;&#039;0&#039;&#039;&#039;.&#039;&#039; For more examples and detailed descriptions of these options, see [[Item Data#General|Item Data - General]].&lt;br /&gt;
[[File:Item tutorial 2 general.png|alt=Screenshot of SkyTemple with default General settings|center|thumb|Example of general settings for a non-stackable food item]]&lt;br /&gt;
&lt;br /&gt;
=== Flags ===&lt;br /&gt;
This tab has flags used to determine AI behavior in-game it looks like this . Depending on which ID you choose to edit, the &#039;&#039;&amp;quot;Is Valid&amp;quot;&#039;&#039; or &#039;&#039;&amp;quot;Is in T/D&#039;&#039;&amp;quot; switches could be flipped or not. Either way, all switches will be shown like this:&lt;br /&gt;
[[File:Item tutorial 3 flags.png|alt=Screenshot of SkyTemple&#039;s list of item flags, with all of them disabled/turned off|center|thumb|Example with all flags disabled (default dummy configuration)]]&lt;br /&gt;
The most important one to note is “&#039;&#039;&#039;Is Valid.&#039;&#039;&#039;” &#039;&#039;This should always be on if you want to use the item!&#039;&#039; Otherwise it cannot be added to the dungeon spawn menus, and will show up as a nonfunctional Plain Seed if manually added to the Treasure Bag.&lt;br /&gt;
&lt;br /&gt;
For more detailed descriptions of these options, see [[Item Data#Flags|Item Data - Flags]].&lt;br /&gt;
&lt;br /&gt;
Toggle these to fit your desired behavior. Once satisfied with these settings, save before continuing.&lt;br /&gt;
&lt;br /&gt;
=== Item Effects Code (Behavior in Dungeons) ===&lt;br /&gt;
The &#039;&#039;effects code&#039;&#039; controls what the item does when used in a dungeon. The table containing these can be found in &#039;&#039;Patches &amp;gt; ASM &amp;gt; Item Effects&#039;&#039;. Viewing this requires the [[ExtractItemCode]] patch.&lt;br /&gt;
[[File:Item tutorial 4 item effects nav.png|alt=Navigation/nested menu for Item Effects entry|center]]&lt;br /&gt;
The items are sorted &#039;&#039;alphabetically&#039;&#039;. If you do not see your new item in the list, you may need to reload the ROM first. This table on the (default) &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab is where you can edit the Effect ID. By default, dummy items have an Effect ID of &#039;&#039;86&#039;&#039;. Double-click on the number next to your item to enter a new one.&lt;br /&gt;
&lt;br /&gt;
Switching to the &#039;&#039;&#039;Effects Code&#039;&#039;&#039; tab has a dropdown menu where you can better see which effect is associated with what item.&lt;br /&gt;
[[File:Item tutorial 5 effect dropdown.png|alt=Screenshot showing 2 items sharing an Effect ID|center|thumb|Example of 2 items sharing an Effect ID]]&lt;br /&gt;
&lt;br /&gt;
==== Adding Custom Effects ====&lt;br /&gt;
If you want to add any custom effects that don’t exist in the base game, that requires ASM code. You can add a new Effect ID by clicking the plus (+) button next to the Effect ID menu, which creates a new entry in the dropdown menu. Selecting it shows the “Used By” table is empty because no item is assigned to it when first created. Import the ASM file; once successful, switch back to the &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab to assign the new Effect ID to an item.&lt;br /&gt;
&lt;br /&gt;
== Item Sprites ==&lt;br /&gt;
The following will walk you through how to create an import an image that fits EoS&#039;s dungeon sprite restrictions.&lt;br /&gt;
&lt;br /&gt;
=== Preparing an Image ===&lt;br /&gt;
Item sprites in EoS must be 16 x 16 pixels, set as indexed PNGs using a specific set of colors. The image below is an &#039;&#039;example&#039;&#039; of the full colormap used by all floor item sprites &amp;lt;small&amp;gt;(don&#039;t download it from this page, it&#039;s been compressed)&amp;lt;/small&amp;gt;.&lt;br /&gt;
[[File:Item tutorial 6 colormap ex.png|alt=Screenshot of dungeon colormap|center]]&lt;br /&gt;
Each of the rows makes up &#039;&#039;one&#039;&#039; individual palette, 15 in total (numbered 0-14). When creating sprites, you must pick a row to use and stick with it—using colors from multiple rows will cause SkyTemple to reject the import with an error. This is where the Palette ID number from the &#039;&#039;Items Settings&#039;&#039; comes in. It determines which row (and its corresponding colors) will be used. Switching to a different Palette ID (ex: from 2 to 3, or row 3 to row 4) will still reference the same positions, but with the color mappings of the new row. &#039;&#039;This includes the transparency color (blue) and outline color (black).&#039;&#039;&lt;br /&gt;
[[File:Image tutorial 7 pal ex.png|alt=Example of indexes carrying over between palettes, arrows drawn between Palette 2 and 3|center|thumb|Palette 2 -&amp;gt; Palette 3]]&lt;br /&gt;
A more in-depth example of this is shown below as we extract the colormap for our use.&lt;br /&gt;
&lt;br /&gt;
It is recommended to start sprinting with the full colormap imported into your sprite editor, so that there are no issues with the indexes later. The easiest way to get the colormap is to export an existing sprite. As an example, exporting the Stick with the Palette ID set to &#039;&#039;&#039;1&#039;&#039;&#039; shows this message:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;(Note: all ST screenshots are cropped to save space)&amp;lt;/small&amp;gt;&lt;br /&gt;
[[File:Item tutorial 8 exporting stick.png|alt=Screenshot of Stick sprite with the Palette ID set to 1|center|border]]&lt;br /&gt;
[[File:Item tutorial 9 export dialog.png|alt=Screenshot of export dialog (&amp;quot;This exports currently selected image with the currently selected palette. image will contain all palettes&amp;quot;)|center|border]]&lt;br /&gt;
This means that the sprite of the Stick will &#039;&#039;look&#039;&#039; brown, but still have the full colormap in its data. Opening the PNG in a sprite editor shows which colors will be used in each variation of the palette. Using an eyedrop tool or color selection mechanic can highlight the index of the brown being used (index 25). Finding the other shades of brown from there gives a point of reference for each row.&lt;br /&gt;
[[File:Item tutorial 10 stick index example.png|alt=Screenshot of Stick PNG open in sprite editor, showing which colors share the same columns|center|thumb|408x408px|These 3 colors share the same positions within every palette]]&lt;br /&gt;
This is useful if you make a sprite that you want &#039;&#039;multiple variants&#039;&#039; of (Stick, Iron Thorn, Apple, Golden Apple, etc.).&lt;br /&gt;
&lt;br /&gt;
From there, you can save the colormap in your sprite editor to load as needed and create your sprite with your chosen colors. Note that you &#039;&#039;can&#039;&#039; make/import a custom palette, but that may affect existing sprites, and is out of scope of this tutorial at the moment.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a Cheri Berry sprite, not intended to have variants. You can see the sprite only uses colors from Palette 3 (row 4 of the colormap).&lt;br /&gt;
[[File:Item tutorial 11 full row use example.png|alt=Screenshot of a cheri berri (red and green), Example of using almost all colors in a palette|center|thumb|Example of using almost all colors in a palette (sprite credit: deltaflare)]]&lt;br /&gt;
&lt;br /&gt;
=== Importing an Image into Slot 63 ===&lt;br /&gt;
Each item sprite in the game takes up one “slot” that is reserved for use in dungeons. To see which slots are valid to use, see the list in [[Item/Trap Graphics]]. Slots 0 – 62 are used for existing items, with slot 63 being unused in the base game. Given this, it looks like a blank blue square in SkyTemple, free to be used.&lt;br /&gt;
[[File:Item tutorial 12 slot 63 default.png|alt=Screenshot of slot 63 (blank unused sprite)|center|300x300px]]&lt;br /&gt;
Before clicking “Import,” make sure to set the Palette ID to the number you want to use for the &#039;&#039;new&#039;&#039; item. This helps the sprite look “as intended” to check that everything looks correct. Make sure to have the “import palettes” option turned &#039;&#039;&#039;off&#039;&#039;&#039;, and the “insert as NEW image” option turned &#039;&#039;&#039;off&#039;&#039;&#039; (because this is replacing a currently blank sprite with your image).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
Remember that a single sprite can have multiple color variations (Berries, Sticks, etc.), so there is no need for duplicates if you have the desired color indexes matching between rows. If you are only importing &#039;&#039;one&#039;&#039; sprite, feel free to skip to [[How to add custom Items#Setting the Sprite|Setting the Sprite]]. If you plan to import more sprites, &#039;&#039;read the “&#039;&#039;&#039;Importing Past Slot 63&#039;&#039;&#039;” section below&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Possible Errors (&amp;amp; Fixes) ====&lt;br /&gt;
Here are some examples of errors that could happen, with the tile details removed to help explain the cause.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette 0” when using a non-0 palette&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 14 error 1.png|alt=Screenshot of error that could happen when importing into Slot 63 specifically|center|400x400px]]&lt;br /&gt;
Even with the Palette ID number set in the UI, &#039;&#039;&#039;the tool first looks at the index number of the &#039;&#039;transparent&#039;&#039; color to start checking the rest.&#039;&#039;&#039; This means if you mistakenly used the transparent color from Palette 0 when making your sprite, the editor &#039;&#039;now expects everything to come from&#039;&#039; &#039;&#039;Palette 0&#039;&#039;. “Color 49” is the black outline color in &#039;&#039;Palette 3&#039;&#039;. Because “color 49” is not an expected color, the editor rejects the image.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette x”&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 15 error 2.png|alt=Error for uploading to slot 63|center|400x400px]]&lt;br /&gt;
Even with the transparency and outline colors corrected, you may still get an “expected colors” error, despite them matching the palette at a glance. Note that Palettes 1 and 3 share a set of greens (index 27, and index 59). Using the “incorrect green” causes the error (especially if indexing a previously-RGB-mode sprite; the drawing program could attempt to auto-assign incorrect indexes). This is why it&#039;s recommended to work directly with the colormap.&lt;br /&gt;
&lt;br /&gt;
To fix any of these errors, correct the offending colors in your PNG and import again.&lt;br /&gt;
&lt;br /&gt;
=== Importing Past Slot 63 ===&lt;br /&gt;
As noted in [[Item/Trap Graphics#Sprite Slots]], &#039;&#039;&#039;slots 64 - 81&#039;&#039;&#039; will always be replaced by the game with status sprites. This means whatever you import into these slots is &#039;&#039;not permanent,&#039;&#039; and the next valid slot is &#039;&#039;&#039;82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
By default, SkyTemple only shows entries for the existing slots. In order to reach slot, you need to import “blank” sprites. Create a PNG that uses the dungeon item colormap, filled with Palette 0’s blue transparency color. When importing, make sure to have “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;, so slot 63 isn’t replaced.&lt;br /&gt;
[[File:Item tutorial 16 import settings past 63.png|alt=Screenshot of import settings to add a new entry|center|300x300px]]&lt;br /&gt;
[[File:Item tutorial 17 slot 64.png|alt=Example of what slot 64 should look like (blank blue image)|center|300x300px]]&lt;br /&gt;
Now a new entry exists at &#039;&#039;&#039;slot 64&#039;&#039;&#039;! Continue doing this until you reach &#039;&#039;&#039;slot 81&#039;&#039;&#039;. Once you have imported a blank sprite into slot 81, you can import a proper sprite with the “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;. This will create a permanent sprite in &#039;&#039;&#039;slot 82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
You can freely continue this process with &#039;&#039;&#039;slots 83 – 95&#039;&#039;&#039;, as needed.&lt;br /&gt;
&lt;br /&gt;
==== Possible Error (&amp;amp; Fix) ====&lt;br /&gt;
[[File:Item tutorial uncaught error ex.png|alt=Screenshot of uncaught error that happens when importing with incorrect colors|center|thumb|400x400px|Uncaught error that happens when importing with incorrect colors]]&lt;br /&gt;
If you have any “expected color” issues, SkyTemple first will give an error showing the incorrect index, then throw an uncaught TypeError exception. This is slightly different from the error with slot 63 because SkyTemple first creates an entry, then cannot process the color data when importing. So the entry becomes invalid while the editor still tries to display it. &#039;&#039;Don’t panic! You can correct this without having to reload/close without saving!&#039;&#039; Correct the color errors and import as &#039;&#039;replacing&#039;&#039; &#039;&#039;current entry&#039;&#039; (i.e.: replacing the invalid entry with colors that the editor can properly validate).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
&lt;br /&gt;
==== Current Limitations - Important! ====&lt;br /&gt;
{{Main|Item/Trap Graphics#Sprite Slots}}&lt;br /&gt;
Edits to &#039;&#039;&#039;slots 96 - 103&#039;&#039;&#039; will &#039;&#039;permanently overwrite&#039;&#039; the sprites present in that row (this includes things like Pokémon shadows).&lt;br /&gt;
&lt;br /&gt;
=== Setting the Sprite ===&lt;br /&gt;
Now that the sprite has been imported, you can set it to be associated with your new item!&lt;br /&gt;
&lt;br /&gt;
Go back to the &#039;&#039;Items &amp;gt; [item name]&#039;&#039; , and set the Sprite ID to &#039;&#039;&#039;63&#039;&#039;&#039; (or whatever index you inserted it at). Increment the Palette ID, and you will see the sprite change colors depending on the ones you used (remember the IDs start at 0).&lt;br /&gt;
[[Category:Tutorials]]&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=Item/Trap_Graphics&amp;diff=999</id>
		<title>Item/Trap Graphics</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=Item/Trap_Graphics&amp;diff=999"/>
		<updated>2025-04-10T18:22:31Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* Sprite Slots */ remove attr&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Stub}}&lt;br /&gt;
&lt;br /&gt;
Within the [[SkyTemple]] editor, graphics used by the game to render items and traps (including the Wonder Tile and stairs) can be edited.&lt;br /&gt;
&lt;br /&gt;
== Item Sprites ==&lt;br /&gt;
EoS has 120 slots (numbered 0 - 119) used for items and effect sprites in dungeons. Not all are permanent entries, some are updated at runtime with certain animations. In SkyTemple, slots 0 - 63 can always be seen. These are the sprites used for existing floor items. Slot 63 is unnused in the base game, and appears in SkyTemple as a blank, transparent sprite.&lt;br /&gt;
&lt;br /&gt;
=== Sprite Slots ===&lt;br /&gt;
It is possible to add custom item sprites without interfering with most existing ones. The valid, usable slots are &#039;&#039;italicized&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Slots 0 - 62&#039;&#039;&#039; are existing floor items&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slot 63&#039;&#039;&#039; can be given a new item sprite &#039;&#039;&#039;(1)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Slots 64 - 81&#039;&#039;&#039; will always be replaced by the game at runtime with status animation sprites&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 82 - 95&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(14)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Edits to &#039;&#039;&#039;slots 96 - 103&#039;&#039;&#039; will &#039;&#039;permanently overwrite&#039;&#039; the sprites present in that row. Creating entries for these slots in SkyTemple (even if adding the correct sprites) &#039;&#039;will force the sprites to use Palette 0.&#039;&#039; This can affect entries that may have had different a palette originally assigned to them. For example, the ally shadows will no longer be shaded yellow, turning magenta instead. These entries include:&lt;br /&gt;
** 96: small enemy shadow (black)&lt;br /&gt;
** 97: big enemy shadow (black)&lt;br /&gt;
** 98: small ally shadow  (yellow) &lt;br /&gt;
** 99: big ally shadow  (yellow) &lt;br /&gt;
** 100: big ally shadow  (yellow) &lt;br /&gt;
** 101: small arrow?&lt;br /&gt;
** 102: small arrow?&lt;br /&gt;
** 103: beta &amp;quot;for HP&amp;quot; text&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 104 - 107&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(4)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Slots 108 - 110&#039;&#039;&#039; will always be replaced by the game at runtime with water shadow animation sprites&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 111 - 119&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(9)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Any new entry after that slot (120+) will roll over into the next set of tiles, which will overwrite attack animation sprites. In total, there are &#039;&#039;&#039;28 slots&#039;&#039;&#039; available for custom item sprites.{{NavSkyTemple}}&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=998</id>
		<title>How to add custom Items</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=998"/>
		<updated>2025-04-10T04:16:22Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: minor formatting fixes, linking to sections&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Adding custom items can be broken down into two parts: setting item properties and adding a sprite (if needed).&lt;br /&gt;
&lt;br /&gt;
== Item Settings ==&lt;br /&gt;
The following will walk you through how to customize the properties and behavior of your item.&lt;br /&gt;
&lt;br /&gt;
=== Text ===&lt;br /&gt;
To begin, find a “dummy item” in the &#039;&#039;Items&#039;&#039; section of SkyTemple that has a name &amp;lt;code&amp;gt;[M:D1]$$$&amp;lt;/code&amp;gt;. Double-clicking opens the item’s settings, defaulting to the &#039;&#039;&#039;Text&#039;&#039;&#039; tab. From there you can enter a name, descriptions, category, buy price, and sell price. For more detailed descriptions of these options, see [[Item Data]]. There are also options to set a Sprite ID and Palette ID. Cycling through these changes the item sprite, and the colors used when displaying it. &lt;br /&gt;
[[File:Image tutorial 1 item text.png|alt=Screenshot of SkyTemple showing Item ID settings and dummy text|center|thumb|Example of default dummy text]]&lt;br /&gt;
&lt;br /&gt;
=== General ===&lt;br /&gt;
Switch to the &#039;&#039;&#039;General&#039;&#039;&#039; tab. These settings generally affect how this Item behaves in menus, including the Move ID field. &#039;&#039;Unless making a TM/HM, this should stay set to &#039;&#039;&#039;0&#039;&#039;&#039;.&#039;&#039; For more examples and detailed descriptions of these options, see [[Item Data#General|Item Data - General]].&lt;br /&gt;
[[File:Item tutorial 2 general.png|alt=Screenshot of SkyTemple with default General settings|center|thumb|Example of general settings for a non-stackable food item]]&lt;br /&gt;
&lt;br /&gt;
=== Flags ===&lt;br /&gt;
This tab has flags used to determine AI behavior in-game it looks like this . Depending on which ID you choose to edit, the &#039;&#039;&amp;quot;Is Valid&amp;quot;&#039;&#039; or &#039;&#039;&amp;quot;Is in T/D&#039;&#039;&amp;quot; switches could be flipped or not. Either way, all switches will be shown like this:&lt;br /&gt;
[[File:Item tutorial 3 flags.png|alt=Screenshot of SkyTemple&#039;s list of item flags, with all of them disabled/turned off|center|thumb|Example with all flags disabled (default dummy configuration)]]&lt;br /&gt;
The most important one to note is “&#039;&#039;&#039;Is Valid.&#039;&#039;&#039;” &#039;&#039;This should always be on if you want to use the item!&#039;&#039; Otherwise it cannot be added to the dungeon spawn menus, and will show up as a nonfunctional Plain Seed if manually added to the Treasure Bag.&lt;br /&gt;
&lt;br /&gt;
For more detailed descriptions of these options, see [[Item Data#Flags|Item Data - Flags]].&lt;br /&gt;
&lt;br /&gt;
Toggle these to fit your desired behavior. Once satisfied with these settings, save before continuing.&lt;br /&gt;
&lt;br /&gt;
=== Item Effects Code (Behavior in Dungeons) ===&lt;br /&gt;
The &#039;&#039;effects code&#039;&#039; controls what the item does when used in a dungeon. The table containing these can be found in &#039;&#039;Patches &amp;gt; ASM &amp;gt; Item Effects&#039;&#039;. Viewing this requires the [[ExtractItemCode]] patch.&lt;br /&gt;
[[File:Item tutorial 4 item effects nav.png|alt=Navigation/nested menu for Item Effects entry|center]]&lt;br /&gt;
The items are sorted &#039;&#039;alphabetically&#039;&#039;. If you do not see your new item in the list, you may need to reload the ROM first. This table on the (default) &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab is where you can edit the Effect ID. By default, dummy items have an Effect ID of &#039;&#039;86&#039;&#039;. Double-click on the number next to your item to enter a new one.&lt;br /&gt;
&lt;br /&gt;
Switching to the &#039;&#039;&#039;Effects Code&#039;&#039;&#039; tab has a dropdown menu where you can better see which effect is associated with what item.&lt;br /&gt;
[[File:Item tutorial 5 effect dropdown.png|alt=Screenshot showing 2 items sharing an Effect ID|center|thumb|Example of 2 items sharing an Effect ID]]&lt;br /&gt;
&lt;br /&gt;
==== Adding Custom Effects ====&lt;br /&gt;
If you want to add any custom effects that don’t exist in the base game, that requires ASM code. You can add a new Effect ID by clicking the plus (+) button next to the Effect ID menu, which creates a new entry in the dropdown menu. Selecting it shows the “Used By” table is empty because no item is assigned to it when first created. Import the ASM file; once successful, switch back to the &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab to assign the new Effect ID to an item.&lt;br /&gt;
&lt;br /&gt;
== Item Sprites ==&lt;br /&gt;
The following will walk you through how to create an import an image that fits EoS&#039;s dungeon sprite restrictions.&lt;br /&gt;
&lt;br /&gt;
=== Preparing an Image ===&lt;br /&gt;
Item sprites in EoS must be 16 x 16 pixels, set as indexed PNGs using a specific set of colors. The image below is an &#039;&#039;example&#039;&#039; of the full colormap used by all floor item sprites &amp;lt;small&amp;gt;(don&#039;t download it from this page, it&#039;s been compressed)&amp;lt;/small&amp;gt;.&lt;br /&gt;
[[File:Item tutorial 6 colormap ex.png|alt=Screenshot of dungeon colormap|center]]&lt;br /&gt;
Each of the rows makes up &#039;&#039;one&#039;&#039; individual palette, 15 in total (numbered 0-14). When creating sprites, you must pick a row to use and stick with it—using colors from multiple rows will cause SkyTemple to reject the import with an error. This is where the Palette ID number from the &#039;&#039;Items Settings&#039;&#039; comes in. It determines which row (and its corresponding colors) will be used. Switching to a different Palette ID (ex: from 2 to 3, or row 3 to row 4) will still reference the same positions, but with the color mappings of the new row. &#039;&#039;This includes the transparency color (blue) and outline color (black).&#039;&#039;&lt;br /&gt;
[[File:Image tutorial 7 pal ex.png|alt=Example of indexes carrying over between palettes, arrows drawn between Palette 2 and 3|center|thumb|Palette 2 -&amp;gt; Palette 3]]&lt;br /&gt;
A more in-depth example of this is shown below as we extract the colormap for our use.&lt;br /&gt;
&lt;br /&gt;
It is recommended to start sprinting with the full colormap imported into your sprite editor, so that there are no issues with the indexes later. The easiest way to get the colormap is to export an existing sprite. As an example, exporting the Stick with the Palette ID set to &#039;&#039;&#039;1&#039;&#039;&#039; shows this message:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;(Note: all ST screenshots are cropped to save space)&amp;lt;/small&amp;gt;&lt;br /&gt;
[[File:Item tutorial 8 exporting stick.png|alt=Screenshot of Stick sprite with the Palette ID set to 1|center|border]]&lt;br /&gt;
[[File:Item tutorial 9 export dialog.png|alt=Screenshot of export dialog (&amp;quot;This exports currently selected image with the currently selected palette. image will contain all palettes&amp;quot;)|center|border]]&lt;br /&gt;
This means that the sprite of the Stick will &#039;&#039;look&#039;&#039; brown, but still have the full colormap in its data. Opening the PNG in a sprite editor shows which colors will be used in each variation of the palette. Using an eyedrop tool or color selection mechanic can highlight the index of the brown being used (index 25). Finding the other shades of brown from there gives a point of reference for each row.&lt;br /&gt;
[[File:Item tutorial 10 stick index example.png|alt=Screenshot of Stick PNG open in sprite editor, showing which colors share the same columns|center|thumb|408x408px|These colors (23-25) share the same positions within every palette]]&lt;br /&gt;
This is useful if you make a sprite that you want &#039;&#039;multiple variants&#039;&#039; of (Stick, Iron Thorn, Apple, Golden Apple, etc.).&lt;br /&gt;
&lt;br /&gt;
From there, you can save the colormap in your sprite editor to load as needed and create your sprite with your chosen colors. Note that you &#039;&#039;can&#039;&#039; make/import a custom palette, but that may affect existing sprites, and is out of scope of this tutorial at the moment.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a Cheri Berry sprite, not intended to have variants. You can see the sprite only uses colors from Palette 3 (row 4 of the colormap).&lt;br /&gt;
[[File:Item tutorial 11 full row use example.png|alt=Screenshot of a cheri berri (red and green), Example of using almost all colors in a palette|center|thumb|Example of using almost all colors in a palette (sprite credit: deltaflare)]]&lt;br /&gt;
&lt;br /&gt;
=== Importing an Image into Slot 63 ===&lt;br /&gt;
Each item sprite in the game takes up one “slot” that is reserved for use in dungeons. To see which slots are valid to use, see the list in [[Item/Trap Graphics]]. Slots 0 – 62 are used for existing items, with slot 63 being unused in the base game. Given this, it looks like a blank blue square in SkyTemple, free to be used.&lt;br /&gt;
[[File:Item tutorial 12 slot 63 default.png|alt=Screenshot of slot 63 (blank unused sprite)|center|300x300px]]&lt;br /&gt;
Before clicking “Import,” make sure to set the Palette ID to the number you want to use for the &#039;&#039;new&#039;&#039; item. This helps the sprite look “as intended” to check that everything looks correct. Make sure to have the “import palettes” option turned &#039;&#039;&#039;off&#039;&#039;&#039;, and the “insert as NEW image” option turned &#039;&#039;&#039;off&#039;&#039;&#039; (because this is replacing a currently blank sprite with your image).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
Remember that a single sprite can have multiple color variations (Berries, Sticks, etc.), so there is no need for duplicates if you have the desired color indexes matching between rows. If you are only importing &#039;&#039;one&#039;&#039; sprite, feel free to skip to [[How to add custom Items#Setting the Sprite|Setting the Sprite]]. If you plan to import more sprites, &#039;&#039;read the “&#039;&#039;&#039;Importing Past Slot 63&#039;&#039;&#039;” section below&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Possible Errors (&amp;amp; Fixes) ====&lt;br /&gt;
Here are some examples of errors that could happen, with the tile details removed to help explain the cause.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette 0” when using a non-0 palette&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 14 error 1.png|alt=Screenshot of error that could happen when importing into Slot 63 specifically|center|400x400px]]&lt;br /&gt;
Even with the Palette ID number set in the UI, &#039;&#039;&#039;the tool first looks at the index number of the &#039;&#039;transparent&#039;&#039; color to start checking the rest.&#039;&#039;&#039; This means if you mistakenly used the transparent color from Palette 0 when making your sprite, the editor &#039;&#039;now expects everything to come from&#039;&#039; &#039;&#039;Palette 0&#039;&#039;. “Color 49” is the black outline color in &#039;&#039;Palette 3&#039;&#039;. Because “color 49” is not an expected color, the editor rejects the image.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette x”&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 15 error 2.png|alt=Error for uploading to slot 63|center|400x400px]]&lt;br /&gt;
Even with the transparency and outline colors corrected, you may still get an “expected colors” error, despite them matching the palette at a glance. Note that Palettes 1 and 3 share a set of greens (index 27, and index 59). Using the “incorrect green” causes the error (especially if indexing a previously-RGB-mode sprite; the drawing program could attempt to auto-assign incorrect indexes). This is why it&#039;s recommended to work directly with the colormap.&lt;br /&gt;
&lt;br /&gt;
To fix any of these errors, correct the offending colors in your PNG and import again.&lt;br /&gt;
&lt;br /&gt;
=== Importing Past Slot 63 ===&lt;br /&gt;
As noted in [[Item/Trap Graphics#Sprite Slots]], &#039;&#039;&#039;slots 64 - 81&#039;&#039;&#039; will always be replaced by the game with status sprites. This means whatever you import into these slots is &#039;&#039;not permanent,&#039;&#039; and the next valid slot is &#039;&#039;&#039;82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
By default, SkyTemple only shows entries for the existing slots. In order to reach slot, you need to import “blank” sprites. Create a PNG that uses the dungeon item colormap, filled with Palette 0’s blue transparency color. When importing, make sure to have “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;, so slot 63 isn’t replaced.&lt;br /&gt;
[[File:Item tutorial 16 import settings past 63.png|alt=Screenshot of import settings to add a new entry|center|300x300px]]&lt;br /&gt;
[[File:Item tutorial 17 slot 64.png|alt=Example of what slot 64 should look like (blank blue image)|center|300x300px]]&lt;br /&gt;
Now a new entry exists at &#039;&#039;&#039;slot 64&#039;&#039;&#039;! Continue doing this until you reach &#039;&#039;&#039;slot 81&#039;&#039;&#039;. Once you have imported a blank sprite into slot 81, you can import a proper sprite with the “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;. This will create a permanent sprite in &#039;&#039;&#039;slot 82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
You can freely continue this process with &#039;&#039;&#039;slots 83 – 95&#039;&#039;&#039;, as needed.&lt;br /&gt;
&lt;br /&gt;
==== Possible Error (&amp;amp; Fix) ====&lt;br /&gt;
[[File:Item tutorial uncaught error ex.png|alt=Screenshot of uncaught error that happens when importing with incorrect colors|center|thumb|400x400px|Uncaught error that happens when importing with incorrect colors]]&lt;br /&gt;
If you have any “expected color” issues, SkyTemple first will give an error showing the incorrect index, then throw an uncaught TypeError exception. This is slightly different from the error with slot 63 because SkyTemple first creates an entry then cannot process the color data, so the entry becomes invalid while the editor still tries to display it. &#039;&#039;Don’t panic! You can correct this without having to reload/close without saving!&#039;&#039; Correct the color errors and import as &#039;&#039;replacing&#039;&#039; &#039;&#039;current entry&#039;&#039; (i.e.: replacing the invalid entry with colors that the editor can properly validate).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
&lt;br /&gt;
==== Current Limitations - Important ====&lt;br /&gt;
{{Main|Item/Trap Graphics#Sprite Slots}}&lt;br /&gt;
Edits to &#039;&#039;&#039;slots 96 - 103&#039;&#039;&#039; will &#039;&#039;permanently overwrite&#039;&#039; the sprites present in that row (this includes things like Pokémon shadows).&lt;br /&gt;
&lt;br /&gt;
=== Setting the Sprite ===&lt;br /&gt;
Now that the sprite has been imported, you can set it to be associated with your new item!&lt;br /&gt;
&lt;br /&gt;
Go back to the &#039;&#039;Items &amp;gt; [item name]&#039;&#039; , and set the Sprite ID to &#039;&#039;&#039;63&#039;&#039;&#039; (or whatever index you inserted it at). Increment the Palette ID, and you will see the sprite change colors depending on the ones you used (remember the IDs start at 0).&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=Item/Trap_Graphics&amp;diff=997</id>
		<title>Item/Trap Graphics</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=Item/Trap_Graphics&amp;diff=997"/>
		<updated>2025-04-10T04:11:12Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* Item Sprites */ clarifying slot 63 is visible in ST&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Stub}}&lt;br /&gt;
&lt;br /&gt;
Within the [[SkyTemple]] editor, graphics used by the game to render items and traps (including the Wonder Tile and stairs) can be edited.&lt;br /&gt;
&lt;br /&gt;
== Item Sprites ==&lt;br /&gt;
EoS has 120 slots (numbered 0 - 119) used for items and effect sprites in dungeons. Not all are permanent entries, some are updated at runtime with certain animations. In SkyTemple, slots 0 - 63 can always be seen. These are the sprites used for existing floor items. Slot 63 is unnused in the base game, and appears in SkyTemple as a blank, transparent sprite.&lt;br /&gt;
&lt;br /&gt;
=== Sprite Slots ===&lt;br /&gt;
It is possible to add custom item sprites without interfering with most existing ones. The valid, usable slots are &#039;&#039;italicized&#039;&#039;. &amp;lt;small&amp;gt;Documented by @lunaalex (on Discord)&amp;lt;/small&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Slots 0 - 62&#039;&#039;&#039; are existing floor items&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slot 63&#039;&#039;&#039; can be given a new item sprite &#039;&#039;&#039;(1)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Slots 64 - 81&#039;&#039;&#039; will always be replaced by the game at runtime with status animation sprites&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 82 - 95&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(14)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* Edits to &#039;&#039;&#039;slots 96 - 103&#039;&#039;&#039; will &#039;&#039;permanently overwrite&#039;&#039; the sprites present in that row. Creating entries for these slots in SkyTemple (even if adding the correct sprites) &#039;&#039;will force the sprites to use Palette 0.&#039;&#039; This can affect entries that may have had different a palette originally assigned to them. For example, the ally shadows will no longer be shaded yellow, turning magenta instead. These entries include:&lt;br /&gt;
** 96: small enemy shadow (black)&lt;br /&gt;
** 97: big enemy shadow (black)&lt;br /&gt;
** 98: small ally shadow  (yellow) &lt;br /&gt;
** 99: big ally shadow  (yellow) &lt;br /&gt;
** 100: big ally shadow  (yellow) &lt;br /&gt;
** 101: small arrow?&lt;br /&gt;
** 102: small arrow?&lt;br /&gt;
** 103: beta &amp;quot;for HP&amp;quot; text&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 104 - 107&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(4)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
* &#039;&#039;&#039;Slots 108 - 110&#039;&#039;&#039; will always be replaced by the game at runtime with water shadow animation sprites&lt;br /&gt;
* &#039;&#039;&#039;&#039;&#039;Slots 111 - 119&#039;&#039;&#039; can be given new item sprites &#039;&#039;&#039;(9)&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Any new entry after that slot (120+) will roll over into the next set of tiles, which will overwrite attack animation sprites. In total, there are &#039;&#039;&#039;28 slots&#039;&#039;&#039; available for custom item sprites.{{NavSkyTemple}}&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=996</id>
		<title>How to add custom Items</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=How_to_add_custom_Items&amp;diff=996"/>
		<updated>2025-04-10T03:57:17Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: creating tutorial page for items&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Adding custom items can be broken down into two parts: setting item properties and adding a sprite (if needed).&lt;br /&gt;
&lt;br /&gt;
== Item Settings ==&lt;br /&gt;
The following will walk you through how to customize the properties and behavior of your item.&lt;br /&gt;
&lt;br /&gt;
=== Text ===&lt;br /&gt;
To begin, find a “dummy item” in the &#039;&#039;Items&#039;&#039; section of SkyTemple that has a name &amp;lt;code&amp;gt;[M:D1]$$$&amp;lt;/code&amp;gt;. Double-clicking opens the item’s settings, defaulting to the &#039;&#039;&#039;Text&#039;&#039;&#039; tab. From there you can enter a name, descriptions, category, buy price, and sell price. For more detailed descriptions of these options, see [[Item Data]]. There are also options to set a Sprite ID and Palette ID. Cycling through these changes the item sprite, and the colors used when displaying it. &lt;br /&gt;
[[File:Image tutorial 1 item text.png|alt=Screenshot of SkyTemple showing Item ID settings and dummy text|center|thumb|Example of default dummy text]]&lt;br /&gt;
&lt;br /&gt;
=== General ===&lt;br /&gt;
Switch to the &#039;&#039;&#039;General&#039;&#039;&#039; tab. These settings generally affect how this Item behaves in menus, including the Move ID field. &#039;&#039;Unless making a TM/HM, this should stay set to &#039;&#039;&#039;0&#039;&#039;&#039;.&#039;&#039; For more examples and detailed descriptions of these options, see [[Item Data#General|Item Data - General]].&lt;br /&gt;
[[File:Item tutorial 2 general.png|alt=Screenshot of SkyTemple with default General settings|center|thumb|Example of general settings for a non-stackable food item]]&lt;br /&gt;
&lt;br /&gt;
=== Flags ===&lt;br /&gt;
This tab has flags used to determine AI behavior in-game it looks like this . Depending on which ID you choose to edit, the &#039;&#039;&amp;quot;Is Valid&amp;quot;&#039;&#039; or &#039;&#039;&amp;quot;Is in T/D&#039;&#039;&amp;quot; switches could be flipped or not. Either way, all switches will be shown like this:&lt;br /&gt;
[[File:Item tutorial 3 flags.png|alt=Screenshot of SkyTemple&#039;s list of item flags, with all of them disabled/turned off|center|thumb|Example with all flags disabled (default dummy configuration)]]&lt;br /&gt;
The most important one to note is “&#039;&#039;&#039;Is Valid.&#039;&#039;&#039;” &#039;&#039;This should always be on if you want to use the item!&#039;&#039; Otherwise it cannot be added to the dungeon spawn menus, and will show up as a nonfunctional Plain Seed if manually added to the Treasure Bag.&lt;br /&gt;
&lt;br /&gt;
For more detailed descriptions of these options, see [[Item Data#Flags|Item Data - Flags]].&lt;br /&gt;
&lt;br /&gt;
Toggle these to fit your desired behavior. Once satisfied with these settings, save before continuing.&lt;br /&gt;
&lt;br /&gt;
=== Item Effects Code (Behavior in Dungeons) ===&lt;br /&gt;
The &#039;&#039;effects code&#039;&#039; controls what the item does when used in a dungeon. The table containing these can be found in &#039;&#039;Patches &amp;gt; ASM &amp;gt; Item Effects&#039;&#039;. Viewing this requires the [[ExtractItemCode]] patch.&lt;br /&gt;
[[File:Item tutorial 4 item effects nav.png|alt=Navigation/nested menu for Item Effects entry|center]]&lt;br /&gt;
The items are sorted &#039;&#039;alphabetically&#039;&#039;. If you do not see your new item in the list, you may need to reload the ROM first. This table on the (default) &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab is where you can edit the Effect ID. By default, dummy items have an Effect ID of &#039;&#039;86&#039;&#039;. Double-click on the number next to your item to enter a new one.&lt;br /&gt;
&lt;br /&gt;
Switching to the &#039;&#039;&#039;Effects Code&#039;&#039;&#039; tab has a dropdown menu where you can better see which effect is associated with what item.&lt;br /&gt;
[[File:Item tutorial 5 effect dropdown.png|alt=Screenshot showing 2 items sharing an Effect ID|center|thumb|Example of 2 items sharing an Effect ID]]&lt;br /&gt;
&lt;br /&gt;
==== Adding Custom Effects ====&lt;br /&gt;
If you want to add any custom effects that don’t exist in the base game, that requires ASM code. You can add a new Effect ID by clicking the plus (+) button next to the Effect ID menu, which creates a new entry in the dropdown menu. Selecting it shows the “Used By” table is empty because no item is assigned to it when first created. Import the ASM file; once successful, switch back to the &#039;&#039;&#039;Item&#039;&#039;&#039; &#039;&#039;&#039;Effects&#039;&#039;&#039; tab to assign the new Effect ID to an item.&lt;br /&gt;
&lt;br /&gt;
== Item Sprites ==&lt;br /&gt;
The following will walk you through how to create an import an image that fits EoS&#039;s dungeon sprite restrictions.&lt;br /&gt;
&lt;br /&gt;
=== Preparing an Image ===&lt;br /&gt;
Item sprites in EoS must be 16 x 16 pixels, set as indexed PNGs using a specific set of colors. The image below is an &#039;&#039;example&#039;&#039; of the full colormap used by all floor item sprites &amp;lt;small&amp;gt;(don&#039;t download it from this page, it&#039;s been compressed)&amp;lt;/small&amp;gt;.&lt;br /&gt;
[[File:Item tutorial 6 colormap ex.png|alt=Screenshot of dungeon colormap|center]]&lt;br /&gt;
Each of the rows makes up &#039;&#039;one&#039;&#039; individual palette, 15 in total (numbered 0-14). When creating sprites, you must pick a row to use and stick with it—using colors from multiple rows will cause SkyTemple to reject the import with an error. This is where the Palette ID number from the &#039;&#039;Items Settings&#039;&#039; comes in. It determines which row (and its corresponding colors) will be used. Switching to a different Palette ID (ex: from 2 to 3, or row 3 to row 4) will still reference the same positions, but with the color mappings of the new row. &#039;&#039;This includes the transparency color (blue) and outline color (black).&#039;&#039;&lt;br /&gt;
[[File:Image tutorial 7 pal ex.png|alt=Example of indexes carrying over between palettes, arrows drawn between Palette 2 and 3|center|thumb|Palette 2 -&amp;gt; Palette 3]]&lt;br /&gt;
A more in-depth example of this is shown below as we extract the colormap for our use.&lt;br /&gt;
&lt;br /&gt;
It is recommended to start sprinting with the full colormap imported into your sprite editor, so that there are no issues with the indexes later. The easiest way to get the colormap is to export an existing sprite. As an example, exporting the Stick with the Palette ID set to &#039;&#039;&#039;1&#039;&#039;&#039; shows this message:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;(Note: all ST screenshots are cropped to save space)&amp;lt;/small&amp;gt;&lt;br /&gt;
[[File:Item tutorial 8 exporting stick.png|alt=Screenshot of Stick sprite with the Palette ID set to 1|center|350x350px]]&lt;br /&gt;
[[File:Item tutorial 9 export dialog.png|alt=Screenshot of export dialog (&amp;quot;This exports currently selected image with the currently selected palette. image will contain all palettes&amp;quot;)|center]]&lt;br /&gt;
This means that the sprite of the Stick will &#039;&#039;look&#039;&#039; brown, but still have the full colormap in its data. Opening the PNG in a sprite editor shows which colors will be used in each variation of the palette. Using an eyedrop tool or color selection mechanic can highlight the index of the brown being used (index 25). Finding the other shades of brown from there gives a point of reference for each row.&lt;br /&gt;
[[File:Item tutorial 10 stick index example.png|alt=Screenshot of Stick PNG open in sprite editor, showing which colors share the same columns|center|thumb|408x408px|These colors (23-25) share the same positions within every palette]]&lt;br /&gt;
This is useful if you make a sprite that you want &#039;&#039;multiple variants&#039;&#039; of (Stick, Iron Thorn, Apple, Golden Apple, etc.).&lt;br /&gt;
&lt;br /&gt;
From there, you can save the colormap in your sprite editor to load as needed and create your sprite with your chosen colors. Note that you &#039;&#039;can&#039;&#039; make/import a custom palette, but that may affect existing sprites, and is out of scope of this tutorial at the moment.&lt;br /&gt;
&lt;br /&gt;
Here is an example of a Cheri Berry sprite, not intended to have variants. You can see the sprite only uses colors from Palette 3 (row 4 of the colormap).&lt;br /&gt;
[[File:Item tutorial 11 full row use example.png|alt=Screenshot of a cheri berri (red and green), Example of using almost all colors in a palette|center|thumb|Example of using almost all colors in a palette (sprite credit: deltaflare)]]&lt;br /&gt;
&lt;br /&gt;
=== Importing an Image into Slot 63 ===&lt;br /&gt;
Each item sprite in the game takes up one “slot” that is reserved for use in dungeons. To see which slots are valid to use, see the list in [[Item/Trap Graphics]]. Slots 0 – 62 are used for existing items, with slot 63 being unused in the base game. Given this, it looks like a blank blue square in SkyTemple, free to be used.&lt;br /&gt;
[[File:Item tutorial 12 slot 63 default.png|alt=Screenshot of slot 63 (blank unused sprite)|center|300x300px]]&lt;br /&gt;
Before clicking “Import,” make sure to set the Palette ID to the number you want to use for the &#039;&#039;new&#039;&#039; item. This helps the sprite look “as intended” to check that everything looks correct. Make sure to have the “import palettes” option turned &#039;&#039;&#039;off&#039;&#039;&#039;, and the “insert as NEW image” option turned &#039;&#039;&#039;off&#039;&#039;&#039; (because this is replacing a currently blank sprite with your image).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
Remember that a single sprite can have multiple color variations (Berries, Sticks, etc.), so there is no need for duplicates if you have the desired color indexes matching between rows. If you are only importing &#039;&#039;one&#039;&#039; sprite, feel free to skip to [[How to add custom Items#Setting the Sprite|Setting the Sprite]]. If you plan to import more sprites, &#039;&#039;read the “&#039;&#039;&#039;Importing Past Slot 63&#039;&#039;&#039;” section below&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==== Possible Errors (&amp;amp; Fixes) ====&lt;br /&gt;
Here are some examples of errors that could happen, with the tile details removed to help explain the cause.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette 0” when using a non-0 palette&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 14 error 1.png|alt=Screenshot of error that could happen when importing into Slot 63 specifically|center|400x400px]]&lt;br /&gt;
Even with the Palette ID number set in the UI, &#039;&#039;&#039;the tool first looks at the index number of the &#039;&#039;transparent&#039;&#039; color to start checking the rest.&#039;&#039;&#039; This means if you mistakenly used the transparent color from Palette 0 when making your sprite, the editor &#039;&#039;now expects everything to come from&#039;&#039; &#039;&#039;Palette 0&#039;&#039;. “Color 49” is the black outline color in &#039;&#039;Palette 3&#039;&#039;. Because “color 49” is not an expected color, the editor rejects the image.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;“Expected colors are from Palette x”&#039;&#039;&#039;&lt;br /&gt;
[[File:Item tutorial 15 error 2.png|alt=Error for uploading to slot 63|center|400x400px]]&lt;br /&gt;
Even with the transparency and outline colors corrected, you may still get an “expected colors” error, despite them matching the palette at a glance. Note that Palettes 1 and 3 share a set of greens (index 27, and index 59). Using the “incorrect green” causes the error (especially if indexing a previously-RGB-mode sprite; the drawing program could attempt to auto-assign incorrect indexes). This is why it&#039;s recommended to work directly with the colormap.&lt;br /&gt;
&lt;br /&gt;
To fix any of these errors, correct the offending colors in your PNG and import again.&lt;br /&gt;
&lt;br /&gt;
=== Importing Past Slot 63 ===&lt;br /&gt;
As noted in &amp;lt;nowiki&amp;gt;[[Item/Trap Graphics]]&amp;lt;/nowiki&amp;gt;, &#039;&#039;&#039;slots 64 - 81&#039;&#039;&#039; will always be replaced by the game with status sprites. This means whatever you import into these slots is &#039;&#039;not permanent,&#039;&#039; and the next valid slot is &#039;&#039;&#039;82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
By default, SkyTemple only shows entries for the existing slots. In order to reach slot, you need to import “blank” sprites. Create a PNG that uses the dungeon item colormap, filled with Palette 0’s blue transparency color. When importing, make sure to have “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;, so slot 63 isn’t replaced.&lt;br /&gt;
[[File:Item tutorial 16 import settings past 63.png|alt=Screenshot of import settings to add a new entry|center|300x300px]]&lt;br /&gt;
[[File:Item tutorial 17 slot 64.png|alt=Example of what slot 64 should look like (blank blue image)|center|300x300px]]&lt;br /&gt;
Now a new entry exists at &#039;&#039;&#039;slot 64&#039;&#039;&#039;! Continue doing this until you reach &#039;&#039;&#039;slot 81&#039;&#039;&#039;. Once you have imported a blank sprite into slot 81, you can import a proper sprite with the “insert a new entry” option turned &#039;&#039;&#039;on&#039;&#039;&#039;. This will create a permanent sprite in &#039;&#039;&#039;slot 82&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
You can freely continue this process with &#039;&#039;&#039;slots 83 – 95&#039;&#039;&#039;, as needed.&lt;br /&gt;
&lt;br /&gt;
==== Possible Error (&amp;amp; Fix) ====&lt;br /&gt;
[[File:Item tutorial uncaught error ex.png|alt=Screenshot of uncaught error that happens when importing with incorrect colors|center|thumb|400x400px|Uncaught error that happens when importing with incorrect colors]]&lt;br /&gt;
If you have any “expected color” issues, SkyTemple first will give an error showing the incorrect index, then throw an uncaught TypeError exception. This is slightly different from the error with slot 63 because SkyTemple first creates an entry then cannot process the color data, so the entry becomes invalid while the editor still tries to display it. &#039;&#039;Don’t panic! You can correct this without having to reload/close without saving!&#039;&#039; Correct the color errors and import as &#039;&#039;replacing&#039;&#039; &#039;&#039;current entry&#039;&#039; (i.e.: replacing the invalid entry with colors that the editor can properly validate).&lt;br /&gt;
[[File:Image tutorial 13 import settings off.png|alt=Screenshot of import settings needed to replace an existing sprite entry|center|300x300px]]&lt;br /&gt;
&lt;br /&gt;
==== Current Limitations - Important ====&lt;br /&gt;
{{Main|Item/Trap Graphics}}&lt;br /&gt;
Edits to &#039;&#039;&#039;slots 96 - 103&#039;&#039;&#039; will &#039;&#039;permanently overwrite&#039;&#039; the sprites present in that row (this includes things like Pokémon shadows).&lt;br /&gt;
&lt;br /&gt;
=== Setting the Sprite ===&lt;br /&gt;
Now that the sprite has been imported, you can set it to be associated with your new item!&lt;br /&gt;
&lt;br /&gt;
Go back to the &#039;&#039;Items &amp;gt; [item name]&#039;&#039; , and set the Sprite ID to &#039;&#039;&#039;63&#039;&#039;&#039; (or whatever index you inserted it at). Increment the Palette ID, and you will see the sprite change colors depending on the ones you used (remember the IDs start at 0).&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_uncaught_error_ex.png&amp;diff=995</id>
		<title>File:Item tutorial uncaught error ex.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_uncaught_error_ex.png&amp;diff=995"/>
		<updated>2025-04-10T03:48:23Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of uncaught error that happens when importing with incorrect colors&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_17_slot_64.png&amp;diff=994</id>
		<title>File:Item tutorial 17 slot 64.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_17_slot_64.png&amp;diff=994"/>
		<updated>2025-04-10T03:46:44Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example of what slot 64 should look like (blank blue image)&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_16_import_settings_past_63.png&amp;diff=993</id>
		<title>File:Item tutorial 16 import settings past 63.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_16_import_settings_past_63.png&amp;diff=993"/>
		<updated>2025-04-10T03:45:19Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of settings to import a new entry&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_15_error_2.png&amp;diff=992</id>
		<title>File:Item tutorial 15 error 2.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_15_error_2.png&amp;diff=992"/>
		<updated>2025-04-10T03:40:46Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Error for uploading to slot 63&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_14_error_1.png&amp;diff=991</id>
		<title>File:Item tutorial 14 error 1.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_14_error_1.png&amp;diff=991"/>
		<updated>2025-04-10T03:37:57Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of error that could happen when importing into Slot 63 specifically&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Image_tutorial_13_import_settings_off.png&amp;diff=990</id>
		<title>File:Image tutorial 13 import settings off.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Image_tutorial_13_import_settings_off.png&amp;diff=990"/>
		<updated>2025-04-10T03:32:23Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of import settings needed to replace an existing sprite entry&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_12_slot_63_default.png&amp;diff=989</id>
		<title>File:Item tutorial 12 slot 63 default.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_12_slot_63_default.png&amp;diff=989"/>
		<updated>2025-04-10T03:29:48Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of slot 63 (blank unused sprite)&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_11_full_row_use_example.png&amp;diff=988</id>
		<title>File:Item tutorial 11 full row use example.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_11_full_row_use_example.png&amp;diff=988"/>
		<updated>2025-04-10T03:24:05Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;sprite credit: deltaflare, referenced from RSE Cheri Berri sprite&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_10_stick_index_example.png&amp;diff=987</id>
		<title>File:Item tutorial 10 stick index example.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_10_stick_index_example.png&amp;diff=987"/>
		<updated>2025-04-10T03:17:53Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of Stick PNG open in sprite editor, showing which colors share the same columns&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_9_export_dialog.png&amp;diff=986</id>
		<title>File:Item tutorial 9 export dialog.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_9_export_dialog.png&amp;diff=986"/>
		<updated>2025-04-10T03:12:38Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of export dialog (&amp;quot;This exports currently selected image with the currently selected palette. image will contain all palettes&amp;quot;)&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_8_exporting_stick.png&amp;diff=985</id>
		<title>File:Item tutorial 8 exporting stick.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_8_exporting_stick.png&amp;diff=985"/>
		<updated>2025-04-10T03:10:59Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of Stick sprite with the Palette ID set to 1&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Image_tutorial_7_pal_ex.png&amp;diff=984</id>
		<title>File:Image tutorial 7 pal ex.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Image_tutorial_7_pal_ex.png&amp;diff=984"/>
		<updated>2025-04-10T03:06:38Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example of indexes carrying over between palettes&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_6_colormap_ex.png&amp;diff=983</id>
		<title>File:Item tutorial 6 colormap ex.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_6_colormap_ex.png&amp;diff=983"/>
		<updated>2025-04-10T02:57:19Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of dungeon colormap&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_5_effect_dropdown.png&amp;diff=982</id>
		<title>File:Item tutorial 5 effect dropdown.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_5_effect_dropdown.png&amp;diff=982"/>
		<updated>2025-04-10T02:47:43Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot showing 2 items sharing an Effect ID&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_4_item_effects_nav.png&amp;diff=981</id>
		<title>File:Item tutorial 4 item effects nav.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_4_item_effects_nav.png&amp;diff=981"/>
		<updated>2025-04-10T02:44:57Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Navigation/nested menu for Item Effects entry&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_3_flags.png&amp;diff=980</id>
		<title>File:Item tutorial 3 flags.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_3_flags.png&amp;diff=980"/>
		<updated>2025-04-10T02:40:05Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of SkyTemple&#039;s list of item flags&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Item_tutorial_2_general.png&amp;diff=979</id>
		<title>File:Item tutorial 2 general.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Item_tutorial_2_general.png&amp;diff=979"/>
		<updated>2025-04-10T02:36:59Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Screenshot of SkyTemple with default General settings&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:Image_tutorial_1_item_text.png&amp;diff=978</id>
		<title>File:Image tutorial 1 item text.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:Image_tutorial_1_item_text.png&amp;diff=978"/>
		<updated>2025-04-10T02:28:36Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;screenshot of ST showing Item Text settings&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=Item_Data&amp;diff=977</id>
		<title>Item Data</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=Item_Data&amp;diff=977"/>
		<updated>2025-04-09T20:07:49Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: /* General */ adding example images&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &#039;&#039;Items&#039;&#039; section shows all items available in-game. SkyTemple offers the following sections for editing item properties.&lt;br /&gt;
&lt;br /&gt;
== Category and IDs ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Sprite ID&#039;&#039;&#039;: sprite used when displaying this object in a dungeon&lt;br /&gt;
* &#039;&#039;&#039;Palette ID&#039;&#039;&#039;: set of colors used when displaying this object in a dungeon&lt;br /&gt;
* &#039;&#039;&#039;Item ID&#039;&#039;&#039;: self-explanatory&lt;br /&gt;
* &#039;&#039;&#039;Category&#039;&#039;&#039;: these are used when setting the item spawn settings on a dungeon floor&lt;br /&gt;
* &#039;&#039;&#039;Buy Price&#039;&#039;&#039;: Poké price at Kecleon Market&lt;br /&gt;
* &#039;&#039;&#039;Sell Price&#039;&#039;&#039;: Poké price at Kecleon Market&lt;br /&gt;
&lt;br /&gt;
=== Categories Available ===&lt;br /&gt;
&lt;br /&gt;
* Thrown – Pierce (item moves in a straight line)&lt;br /&gt;
* Thrown – Rock (item flies in an arc)&lt;br /&gt;
* Berries, Seeds, Vitamins&lt;br /&gt;
* Food, Gummies&lt;br /&gt;
* Hold (held items only)&lt;br /&gt;
* TMs, HMs&lt;br /&gt;
* Poké (Money)&lt;br /&gt;
* Unknown 7&lt;br /&gt;
* Other&lt;br /&gt;
* Orbs&lt;br /&gt;
* Link Boxes&lt;br /&gt;
* Used TM&lt;br /&gt;
* Treasure Box 1&lt;br /&gt;
* Treasure Box 2&lt;br /&gt;
* Treasure Box 3&lt;br /&gt;
* Exclusive Items&lt;br /&gt;
&lt;br /&gt;
== Text ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Name&#039;&#039;&#039;: self-explanatory&lt;br /&gt;
* &#039;&#039;&#039;Short description&#039;&#039;&#039;: used when hovering over the item in the Treasure Box&lt;br /&gt;
* &#039;&#039;&#039;Long description&#039;&#039;&#039;: used when viewing Info&lt;br /&gt;
&lt;br /&gt;
== General ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Move ID&#039;&#039;&#039;: The ID of a move that is associated with this item. &#039;&#039;Unless making a TM/HM, this should stay &#039;&#039;&#039;0&#039;&#039;&#039;.&#039;&#039; Example of TM Focus Punch vs. Stick (a stackable item):&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;packed&amp;quot; widths=&amp;quot;420&amp;quot; heights=&amp;quot;150&amp;quot;&amp;gt;&lt;br /&gt;
File:ST TM Example.png|alt=SkyTemple UI showing the General settings for the Focus Punch TM. This highlights that the Move ID field is set to 75, corresponding to the move Focus Punch.|Move ID is set to 75 (the ID for Focus Punch)&lt;br /&gt;
File:ST Stick Example Settings.png|alt=SkyTemple UI showing the General settings for the Stick item. This highlights that the Move ID field is set to 0 (no move is associated with it), and that it has stackable settings.|Move ID is set to 0&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Min Amount (for stackable items)&#039;&#039;&#039;: indicates the minimum amount you can get for 1 instance of that item.&lt;br /&gt;
* &#039;&#039;&#039;Max Amount (for stackable items)&#039;&#039;&#039;: indicates the maximum amount you can get for 1 instance of that item.&lt;br /&gt;
* &#039;&#039;&#039;Action Name&#039;&#039;&#039;: String displayed in dungeon menus. These can be changed in “Text Strings.”&lt;br /&gt;
&lt;br /&gt;
=== Default Action Item Values ===&lt;br /&gt;
&lt;br /&gt;
* 0: Use&lt;br /&gt;
* 1: Hurl&lt;br /&gt;
* 2: Throw&lt;br /&gt;
* 3: Equip&lt;br /&gt;
* 4: Eat&lt;br /&gt;
* 5: Ingest&lt;br /&gt;
* 6: Peel&lt;br /&gt;
* 7: Use&lt;br /&gt;
* 8: Use&lt;br /&gt;
* 9: Use&lt;br /&gt;
* 10: Use&lt;br /&gt;
* 11 Equip&lt;br /&gt;
* 12: Equip&lt;br /&gt;
* 13: Use&lt;br /&gt;
* 14: Use&lt;br /&gt;
* 15: Use&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Is Valid&#039;&#039;&#039;: &#039;&#039;This should always be on if you want to use the item!&#039;&#039; Otherwise it cannot be added to the dungeon spawn menus, and will show up as a nonfunctional Plain Seed if manually added to the Treasure Bag.&lt;br /&gt;
* &#039;&#039;&#039;Is T/D&#039;&#039;&#039;: Is this item originally present in Time or Darkness versions?&lt;br /&gt;
* &#039;&#039;&#039;AI Flag: Throw at enemies&#039;&#039;&#039;: Do you want allies to throw this item at enemies? (ex: Gravelerocks or Sticks)&lt;br /&gt;
* &#039;&#039;&#039;AI Flag: Throw at allies&#039;&#039;&#039;: Do you want allies to throw this item at you or other allies? (ex: healing items)&lt;br /&gt;
* &#039;&#039;&#039;AI Flag: Use on self&#039;&#039;&#039;: Do you want allies to use this item on themselves? (ex: healing items)&lt;br /&gt;
&lt;br /&gt;
{{NavSkyTemple}}&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
	<entry>
		<id>https://wiki.skytemple.org/index.php?title=File:ST_TM_Example.png&amp;diff=976</id>
		<title>File:ST TM Example.png</title>
		<link rel="alternate" type="text/html" href="https://wiki.skytemple.org/index.php?title=File:ST_TM_Example.png&amp;diff=976"/>
		<updated>2025-04-09T19:46:23Z</updated>

		<summary type="html">&lt;p&gt;Deltaflare: Deltaflare uploaded a new version of File:ST TM Example.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Example of settings used in a HM/TM item, specifically the Move ID field&lt;/div&gt;</summary>
		<author><name>Deltaflare</name></author>
	</entry>
</feed>