<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://turingcomplete.wiki/w/index.php?action=history&amp;feed=atom&amp;title=Custom_level_creation%2Fui.txt</id>
	<title>Custom level creation/ui.txt - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://turingcomplete.wiki/w/index.php?action=history&amp;feed=atom&amp;title=Custom_level_creation%2Fui.txt"/>
	<link rel="alternate" type="text/html" href="http://turingcomplete.wiki/w/index.php?title=Custom_level_creation/ui.txt&amp;action=history"/>
	<updated>2026-04-25T12:30:14Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.40.1</generator>
	<entry>
		<id>http://turingcomplete.wiki/w/index.php?title=Custom_level_creation/ui.txt&amp;diff=9470&amp;oldid=prev</id>
		<title>Altrag: Remove breadcrumbs in favor of built-ins</title>
		<link rel="alternate" type="text/html" href="http://turingcomplete.wiki/w/index.php?title=Custom_level_creation/ui.txt&amp;diff=9470&amp;oldid=prev"/>
		<updated>2025-02-19T10:01:01Z</updated>

		<summary type="html">&lt;p&gt;Remove breadcrumbs in favor of built-ins&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 10:01, 19 February 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Breadcrumbs|Alpha Branch|Custom level creation}}&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-added&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Early-access-version|0|1346}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Early-access-version|0|1346}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;code&amp;gt;ui.txt&amp;lt;/code&amp;gt; is used to define text and image metadata used by the bottom flyout panel, and can be manipulated from within the [[Custom level creation/test.si|&amp;lt;code&amp;gt;test.si&amp;lt;/code&amp;gt;]] test code.  It has a relatively simple structure in comparison to the other files used for custom level creation.  Each entry is a single line enclosed in square brackets (&amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt;).  There are currently only two valid entry types:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;code&amp;gt;ui.txt&amp;lt;/code&amp;gt; is used to define text and image metadata used by the bottom flyout panel, and can be manipulated from within the [[Custom level creation/test.si|&amp;lt;code&amp;gt;test.si&amp;lt;/code&amp;gt;]] test code.  It has a relatively simple structure in comparison to the other files used for custom level creation.  Each entry is a single line enclosed in square brackets (&amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt;).  There are currently only two valid entry types:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Altrag</name></author>
	</entry>
	<entry>
		<id>http://turingcomplete.wiki/w/index.php?title=Custom_level_creation/ui.txt&amp;diff=9325&amp;oldid=prev</id>
		<title>Altrag at 00:45, 15 January 2025</title>
		<link rel="alternate" type="text/html" href="http://turingcomplete.wiki/w/index.php?title=Custom_level_creation/ui.txt&amp;diff=9325&amp;oldid=prev"/>
		<updated>2025-01-15T00:45:39Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 00:45, 15 January 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Breadcrumbs|Alpha Branch|Custom level creation}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Breadcrumbs|Alpha Branch|Custom level creation}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;{{Early-access-version|0|1346}}&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;code&amp;gt;ui.txt&amp;lt;/code&amp;gt; is used to define text and image metadata used by the bottom flyout panel, and can be manipulated from within the [[Custom level creation/test.si|&amp;lt;code&amp;gt;test.si&amp;lt;/code&amp;gt;]] test code.  It has a relatively simple structure in comparison to the other files used for custom level creation.  Each entry is a single line enclosed in square brackets (&amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt;).  There are currently only two valid entry types:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;code&amp;gt;ui.txt&amp;lt;/code&amp;gt; is used to define text and image metadata used by the bottom flyout panel, and can be manipulated from within the [[Custom level creation/test.si|&amp;lt;code&amp;gt;test.si&amp;lt;/code&amp;gt;]] test code.  It has a relatively simple structure in comparison to the other files used for custom level creation.  Each entry is a single line enclosed in square brackets (&amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt;).  There are currently only two valid entry types:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Altrag</name></author>
	</entry>
	<entry>
		<id>http://turingcomplete.wiki/w/index.php?title=Custom_level_creation/ui.txt&amp;diff=9324&amp;oldid=prev</id>
		<title>Altrag: Created page with &quot;{{Breadcrumbs|Alpha Branch|Custom level creation}} The &lt;code&gt;ui.txt&lt;/code&gt; is used to define text and image metadata used by the bottom flyout panel, and can be manipulated from within the &lt;code&gt;test.si&lt;/code&gt; test code.  It has a relatively simple structure in comparison to the other files used for custom level creation.  Each entry is a single line enclosed in square brackets (&lt;code&gt;[]&lt;/code&gt;).  There are currently only two valid entry...&quot;</title>
		<link rel="alternate" type="text/html" href="http://turingcomplete.wiki/w/index.php?title=Custom_level_creation/ui.txt&amp;diff=9324&amp;oldid=prev"/>
		<updated>2025-01-15T00:42:15Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;{{Breadcrumbs|Alpha Branch|Custom level creation}} The &amp;lt;code&amp;gt;ui.txt&amp;lt;/code&amp;gt; is used to define text and image metadata used by the bottom flyout panel, and can be manipulated from within the &lt;a href=&quot;/wiki/Custom_level_creation/test.si&quot; title=&quot;Custom level creation/test.si&quot;&gt;&amp;lt;code&amp;gt;test.si&amp;lt;/code&amp;gt;&lt;/a&gt; test code.  It has a relatively simple structure in comparison to the other files used for custom level creation.  Each entry is a single line enclosed in square brackets (&amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt;).  There are currently only two valid entry...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Breadcrumbs|Alpha Branch|Custom level creation}}&lt;br /&gt;
The &amp;lt;code&amp;gt;ui.txt&amp;lt;/code&amp;gt; is used to define text and image metadata used by the bottom flyout panel, and can be manipulated from within the [[Custom level creation/test.si|&amp;lt;code&amp;gt;test.si&amp;lt;/code&amp;gt;]] test code.  It has a relatively simple structure in comparison to the other files used for custom level creation.  Each entry is a single line enclosed in square brackets (&amp;lt;code&amp;gt;[]&amp;lt;/code&amp;gt;).  There are currently only two valid entry types:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[text id=&amp;quot;text_id&amp;quot; text=&amp;quot;Any text you wish to display&amp;quot; font=mono size=24 align=left x=78 y=90 hidden=true]&lt;br /&gt;
[image id=&amp;quot;image_id&amp;quot; file=&amp;quot;filename.png&amp;quot; x=78 y=90 hidden=true]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{note|type=info|&amp;lt;code&amp;gt;ui.txt&amp;lt;/code&amp;gt; is not hot-reloaded, even upon level change.  You will need to restart the game to pick up changes to this file.}}&lt;br /&gt;
&lt;br /&gt;
== Text metadata ==&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[text id=&amp;quot;text_id&amp;quot; text=&amp;quot;Any text you wish to display&amp;quot; font=mono size=24 align=left x=78 y=90 hidden=true]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt; An identifier that can be used by the test code to reference the text object.&lt;br /&gt;
* &amp;lt;code&amp;gt;text&amp;lt;/code&amp;gt; The text to be displayed.&lt;br /&gt;
* &amp;lt;code&amp;gt;font&amp;lt;/code&amp;gt; The font face.  Currently only &amp;lt;code&amp;gt;mono&amp;lt;/code&amp;gt; is supported.  Any other option will use the game&amp;#039;s normal font.&lt;br /&gt;
* &amp;lt;code&amp;gt;size&amp;lt;/code&amp;gt; The font size.  The game&amp;#039;s standard size is 24.&lt;br /&gt;
* &amp;lt;code&amp;gt;align&amp;lt;/code&amp;gt; The text alignment.  Can be &amp;lt;code&amp;gt;left&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;right&amp;lt;/code&amp;gt;.  The default is centered text.&lt;br /&gt;
** {{note}} The alignment is measured from center, so &amp;lt;code&amp;gt;left&amp;lt;/code&amp;gt; aligned grows from center to the right, and &amp;lt;right&amp;gt; aligned grows from center to the left.  This can make it appear like the values are reversed if you&amp;#039;re not expecting it!&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; The horizontal offset of the text from the center of the panel (negative values are left).&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt; The vertical offset of the text from the top of the panel (negative values are up - above the panel itself).&lt;br /&gt;
* &amp;lt;code&amp;gt;hidden&amp;lt;/code&amp;gt; If true, the text will not be displayed until the test code changes this property to false.&lt;br /&gt;
&lt;br /&gt;
== Image metadata ==&lt;br /&gt;
{{note|type=warn|Images currently need to be compiled into the game files.  Simply including them in your level directory is not sufficient and attempting to reference such a file will result in the game crashing on startup.}}&lt;br /&gt;
{{note|type=info|You can reuse images from existing levels using normal path navigation (eg: &amp;lt;code&amp;gt;../sort/0.png&amp;lt;/code&amp;gt; for a slice of pie on a plate).&lt;br /&gt;
&lt;br /&gt;
This should not be considered a viable long-term solution as your level becomes dependent both on the other level(s) not changing their images, and also on the game not enforcing directory locality in the future.  It can be a good placeholder during development however, and if your level is accepted into the base game you can replace the temporary image references with valid ones at that time.}}&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[image id=&amp;quot;image_id&amp;quot; file=&amp;quot;filename.png&amp;quot; x=78 y=90 hidden=true]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt; An identifier that can be used by the test code to reference the image object.&lt;br /&gt;
* &amp;lt;code&amp;gt;filename&amp;lt;/code&amp;gt; The name of the file to load.&lt;br /&gt;
* &amp;lt;code&amp;gt;x&amp;lt;/code&amp;gt; The horizontal offset of the image from the center of the panel (negative values are left).&lt;br /&gt;
* &amp;lt;code&amp;gt;y&amp;lt;/code&amp;gt; The vertical offset of the image from the top of the panel (negative values are up - above the panel itself).&lt;br /&gt;
* &amp;lt;code&amp;gt;hidden&amp;lt;/code&amp;gt; If true, the image will not be displayed until the test code changes this property to false.&lt;/div&gt;</summary>
		<author><name>Altrag</name></author>
	</entry>
</feed>