<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://modenc2.markjfox.net/history/Secret_Lab_System?feed=atom</id>
	<title>Secret Lab System - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://modenc2.markjfox.net/history/Secret_Lab_System?feed=atom"/>
	<link rel="alternate" type="text/html" href="https://modenc2.markjfox.net/history/Secret_Lab_System"/>
	<updated>2026-09-22T13:14:10Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://modenc2.markjfox.net/index.php?title=Secret_Lab_System&amp;diff=19612&amp;oldid=prev</id>
		<title>MarkJFox: 3 revisions imported</title>
		<link rel="alternate" type="text/html" href="https://modenc2.markjfox.net/index.php?title=Secret_Lab_System&amp;diff=19612&amp;oldid=prev"/>
		<updated>2025-03-31T20:04:08Z</updated>

		<summary type="html">&lt;p&gt;3 revisions imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 22:04, 31 March 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>MarkJFox</name></author>
	</entry>
	<entry>
		<id>https://modenc2.markjfox.net/index.php?title=Secret_Lab_System&amp;diff=19611&amp;oldid=prev</id>
		<title>en&gt;Testid123 at 09:32, 11 August 2024</title>
		<link rel="alternate" type="text/html" href="https://modenc2.markjfox.net/index.php?title=Secret_Lab_System&amp;diff=19611&amp;oldid=prev"/>
		<updated>2024-08-11T09:32:05Z</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 11:32, 11 August 2024&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-l29&quot;&gt;Line 29:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 29:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:Systems]]&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;[[Category:Systems]]&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;&lt;/ins&gt;&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;==Nots==&lt;/ins&gt;&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;If [[InfantryTypes]] ,[[VehicleTypes]], [[ BuildingTypes]], has [[RequiresStolenAlliedTech]] [[RequiresStolenSovietTech]] [[RequiresStolenThirdTech]] or {{f|TechLevel|-1|Link}} these conditions That will all be ignored.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>en&gt;Testid123</name></author>
	</entry>
	<entry>
		<id>https://modenc2.markjfox.net/index.php?title=Secret_Lab_System&amp;diff=19610&amp;oldid=prev</id>
		<title>en&gt;EvilRenegade: Replacing Template:TTL with Template:F.</title>
		<link rel="alternate" type="text/html" href="https://modenc2.markjfox.net/index.php?title=Secret_Lab_System&amp;diff=19610&amp;oldid=prev"/>
		<updated>2009-11-27T08:30:51Z</updated>

		<summary type="html">&lt;p&gt;Replacing &lt;a href=&quot;/edit/Template:TTL?redlink=1&quot; class=&quot;new&quot; title=&quot;Template:TTL (page does not exist)&quot;&gt;Template:TTL&lt;/a&gt; with &lt;a href=&quot;/Template:F&quot; title=&quot;Template:F&quot;&gt;Template:F&lt;/a&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 10:30, 27 November 2009&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-l6&quot;&gt;Line 6:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 6:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# At map load time:&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;# At map load time:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;## The engine enumerates all the buildings with {{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;TTL&lt;/del&gt;|SecretLab|yes}} present on the map.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;## The engine enumerates all the buildings with {{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;f&lt;/ins&gt;|SecretLab|yes&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|link&lt;/ins&gt;}} present on the map.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;## The engine constructs a single list from objects specified in {{sl|General}}{{arr|r}}{{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;TTL&lt;/del&gt;|SecretInfantry}}, {{sl|General}}{{arr|r}}{{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;TTL&lt;/del&gt;|SecretUnits}} and {{sl|General}}{{arr|r}}{{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;TTL&lt;/del&gt;|SecretBuildings}} and using pseudorandomness assigns each building one of the objects on this list. &#039;&#039;&#039;Note:&#039;&#039;&#039; this step only happens if the map contains less Secret Labs than potential bonuses.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;## The engine constructs a single list from objects specified in {{sl|General}}{{arr|r}}{{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;f&lt;/ins&gt;|SecretInfantry&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|link&lt;/ins&gt;}}, {{sl|General}}{{arr|r}}{{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;f&lt;/ins&gt;|SecretUnits&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|link&lt;/ins&gt;}} and {{sl|General}}{{arr|r}}{{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;f&lt;/ins&gt;|SecretBuildings&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|link&lt;/ins&gt;}} and using pseudorandomness assigns each building one of the objects on this list. &#039;&#039;&#039;Note:&#039;&#039;&#039; this step only happens if the map contains less Secret Labs than potential bonuses.&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;# During gameplay:&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;# During gameplay:&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;## Each frame the game asks each of those &amp;#039;&amp;#039;SecretLab=yes&amp;#039;&amp;#039; buildings what object they can build.&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;## Each frame the game asks each of those &amp;#039;&amp;#039;SecretLab=yes&amp;#039;&amp;#039; buildings what object they can build.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;### If the building has {{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;TTL&lt;/del&gt;|SecretInfantry}}, {{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;TTL&lt;/del&gt;|SecretUnit}} or {{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;TTL&lt;/del&gt;|SecretBuilding}} specified, it will report that it can build that, in that order (if &#039;&#039;SecretInfantry&#039;&#039; is set, it is reported, otherwise it falls back to &#039;&#039;SecretUnit&#039;&#039; and then to &#039;&#039;SecretBuilding&#039;&#039;).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;### If the building has {{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;f&lt;/ins&gt;|SecretInfantry&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|link&lt;/ins&gt;}}, {{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;f&lt;/ins&gt;|SecretUnit&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|link&lt;/ins&gt;}} or {{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;f&lt;/ins&gt;|SecretBuilding&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|link&lt;/ins&gt;}} specified, it will report that it can build that, in that order (if &#039;&#039;SecretInfantry&#039;&#039; is set, it is reported, otherwise it falls back to &#039;&#039;SecretUnit&#039;&#039; and then to &#039;&#039;SecretBuilding&#039;&#039;).&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;### Otherwise, the building will report that it can build the object assigned to it by the pseudo-random process in step 1.&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;### Otherwise, the building will report that it can build the object assigned to it by the pseudo-random process in step 1.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;## The {{Ini|Rules}} does contain a {{&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;TTL&lt;/del&gt;|SecretHouses}} flag, which is parsed, but entirely unused.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;## The {{Ini|Rules}} does contain a {{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;f&lt;/ins&gt;|SecretHouses&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;|link&lt;/ins&gt;}} flag, which is parsed, but entirely unused.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Drawbacks ==&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;== Drawbacks ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>en&gt;EvilRenegade</name></author>
	</entry>
	<entry>
		<id>https://modenc2.markjfox.net/index.php?title=Secret_Lab_System&amp;diff=19609&amp;oldid=prev</id>
		<title>en&gt;DCoder: Created. The code powering this feature blows my mind.</title>
		<link rel="alternate" type="text/html" href="https://modenc2.markjfox.net/index.php?title=Secret_Lab_System&amp;diff=19609&amp;oldid=prev"/>
		<updated>2008-05-18T13:36:50Z</updated>

		<summary type="html">&lt;p&gt;Created. The code powering this feature blows my mind.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;The &amp;quot;Secret Lab&amp;quot; logic was introduced in Yuri&amp;#039;s Revenge : when you captured a building, you gained the ability to build a semi-random object you otherwise couldn&amp;#039;t. However nicely this sounded, the logic is dreadfully screwed up.&lt;br /&gt;
&lt;br /&gt;
== How it works ==&lt;br /&gt;
&lt;br /&gt;
{{SourceCode|http://dc.strategy-x.com/src2/ScenarioClass/GenerateSecretLabBonuses.cpp|tr=yes}}&lt;br /&gt;
&lt;br /&gt;
# At map load time:&lt;br /&gt;
## The engine enumerates all the buildings with {{TTL|SecretLab|yes}} present on the map.&lt;br /&gt;
## The engine constructs a single list from objects specified in {{sl|General}}{{arr|r}}{{TTL|SecretInfantry}}, {{sl|General}}{{arr|r}}{{TTL|SecretUnits}} and {{sl|General}}{{arr|r}}{{TTL|SecretBuildings}} and using pseudorandomness assigns each building one of the objects on this list. &amp;#039;&amp;#039;&amp;#039;Note:&amp;#039;&amp;#039;&amp;#039; this step only happens if the map contains less Secret Labs than potential bonuses.&lt;br /&gt;
# During gameplay:&lt;br /&gt;
## Each frame the game asks each of those &amp;#039;&amp;#039;SecretLab=yes&amp;#039;&amp;#039; buildings what object they can build.&lt;br /&gt;
### If the building has {{TTL|SecretInfantry}}, {{TTL|SecretUnit}} or {{TTL|SecretBuilding}} specified, it will report that it can build that, in that order (if &amp;#039;&amp;#039;SecretInfantry&amp;#039;&amp;#039; is set, it is reported, otherwise it falls back to &amp;#039;&amp;#039;SecretUnit&amp;#039;&amp;#039; and then to &amp;#039;&amp;#039;SecretBuilding&amp;#039;&amp;#039;).&lt;br /&gt;
### Otherwise, the building will report that it can build the object assigned to it by the pseudo-random process in step 1.&lt;br /&gt;
## The {{Ini|Rules}} does contain a {{TTL|SecretHouses}} flag, which is parsed, but entirely unused.&lt;br /&gt;
&lt;br /&gt;
== Drawbacks ==&lt;br /&gt;
&lt;br /&gt;
The process has quite a few drawbacks:&lt;br /&gt;
&lt;br /&gt;
# The bonus you get is determined at map load time rather than at building capture/acquisition time:&lt;br /&gt;
## A captures lab -&amp;gt; B captures lab -&amp;gt; A recaptures lab -&amp;gt; D captures lab : All get the same object.&lt;br /&gt;
## Libya captures lab -&amp;gt; gets Grand Cannon as bonus. France captures that same lab -&amp;gt; gets Grand Cannon which it already could build.&lt;br /&gt;
## You cannot have a buildable lab (well, technically SecretInfantry/Unit/Building on the lab itself will be granted, but that part is completely unrandomized, so it behaves like any run-of-the-mill prerequisite building).&lt;br /&gt;
# If you place more labs on the map than there are choices for bonuses, &amp;#039;&amp;#039;&amp;#039;none of the labs will give any bonuses at all&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
# You cannot define multiple labs with varying bonuses - all secret labs pick pseudorandom bonuses from the same pool of choices.&lt;br /&gt;
# The code for random bonus assignment is terribly quirky and not at all random: The closer an object is to the beginning of the combined bonus list, the more chances it has to be picked. For example, the very last object in the combined list will either be granted by the very first Secret Lab on the map (first in the {{sl|Structures}} section of the map) or not at all.&lt;br /&gt;
== See Also ==&lt;br /&gt;
*[[The Prerequisite System]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Systems]]&lt;/div&gt;</summary>
		<author><name>en&gt;DCoder</name></author>
	</entry>
</feed>