<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.alioth.net/index.php?action=history&amp;feed=atom&amp;title=Lib_Config_101</id>
	<title>Lib Config 101 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.alioth.net/index.php?action=history&amp;feed=atom&amp;title=Lib_Config_101"/>
	<link rel="alternate" type="text/html" href="https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;action=history"/>
	<updated>2026-05-30T00:47:30Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.12</generator>
	<entry>
		<id>https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88993&amp;oldid=prev</id>
		<title>Phkb: /* 1. Dataset */</title>
		<link rel="alternate" type="text/html" href="https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88993&amp;oldid=prev"/>
		<updated>2026-05-24T10:20:28Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;1. Dataset&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 10:20, 24 May 2026&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-l20&quot; &gt;Line 20:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 20:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; Notify: &amp;quot;$generalChanges&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; Notify: &amp;quot;$generalChanges&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; Reset: false,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; Reset: false,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;#160; &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; Bool: {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; Bool: {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; B0: { Name: &amp;quot;_debug&amp;quot;, Def: false, Hide: false, Notify: &amp;quot;$debugFlagChanges&amp;quot;, Desc: &amp;quot;Turn on debug messages&amp;quot; },&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; B0: { Name: &amp;quot;_debug&amp;quot;, Def: false, Hide: false, Notify: &amp;quot;$debugFlagChanges&amp;quot;, Desc: &amp;quot;Turn on debug messages&amp;quot; },&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Turn on/off debug messages sent to the log file&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Turn on/off debug messages sent to the log file&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalFlagChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalFlagChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;/del&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &lt;/ins&gt;}&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;,&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; SInt: {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; SInt: {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; S0: { Name: &amp;quot;_myValue&amp;quot;, Def: 0.3, Min: 0, Max: 1, Float: true, Hide: false, Notify: &amp;quot;$myValueChanges&amp;quot;, Desc: &amp;quot;My decimal value&amp;quot; },&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; S0: { Name: &amp;quot;_myValue&amp;quot;, Def: 0.3, Min: 0, Max: 1, Float: true, Hide: false, Notify: &amp;quot;$myValueChanges&amp;quot;, Desc: &amp;quot;My decimal value&amp;quot; },&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Special decimal value used for important calculations&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Special decimal value used for important calculations&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalValueChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalValueChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;/del&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &lt;/ins&gt;}&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;,&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; EInt: {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; EInt: {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; E0: { Name: &amp;quot;_myBitmask&amp;quot;, Def: 0, Min: 0, Max: 15, OneOf: false, OneOfZero: true, Hide: false, Notify: &amp;quot;$myBitmaskChanges&amp;quot;, Desc: [&amp;quot;Value 1&amp;quot;, &amp;quot;Value 2&amp;quot;, &amp;quot;Value 3&amp;quot;, &amp;quot;Value 4&amp;quot;] },&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; E0: { Name: &amp;quot;_myBitmask&amp;quot;, Def: 0, Min: 0, Max: 15, OneOf: false, OneOfZero: true, Hide: false, Notify: &amp;quot;$myBitmaskChanges&amp;quot;, Desc: [&amp;quot;Value 1&amp;quot;, &amp;quot;Value 2&amp;quot;, &amp;quot;Value 3&amp;quot;, &amp;quot;Value 4&amp;quot;] },&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Controls special settings&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Controls special settings&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalBitmaskChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalBitmaskChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;/del&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &lt;/ins&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; };&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; };&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;[[Image:Library (BGS Config Flags).png|320px|thumb|Config for AddOns (example: BGS flags settings)&amp;lt;br&amp;gt;'''Flags''' are On/Off options, Values give a numerical range. (Old Hyperspace is added by Tsoj's newest version of BGS)]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;[[Image:Library (BGS Config Flags).png|320px|thumb|Config for AddOns (example: BGS flags settings)&amp;lt;br&amp;gt;'''Flags''' are On/Off options, Values give a numerical range. (Old Hyperspace is added by Tsoj's newest version of BGS)]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Phkb</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88992&amp;oldid=prev</id>
		<title>Phkb: Spelling correction</title>
		<link rel="alternate" type="text/html" href="https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88992&amp;oldid=prev"/>
		<updated>2026-05-24T10:18:40Z</updated>

		<summary type="html">&lt;p&gt;Spelling correction&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 10:18, 24 May 2026&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-l3&quot; &gt;Line 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;This guide is designed to help you add Library Config into your OXP.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;This guide is designed to help you add Library Config into your OXP.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;Lib Config is a powerful tool that can make it super easy for &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;player &lt;/del&gt;to customise your OXP in the ways you want them too. If they open your OXP and fiddle with things you *don't* want them to, all bets are off!&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;Lib Config is a powerful tool that can make it super easy for &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;players &lt;/ins&gt;to customise your OXP in the ways you want them too. If they open your OXP and fiddle with things you *don't* want them to, all bets are off!&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;There are 3 possible parts to Library Config integration.&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;There are 3 possible parts to Library Config integration.&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Phkb</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88955&amp;oldid=prev</id>
		<title>Cholmondely: Moved screenshots to improve spacing of Dataset, minor formatting</title>
		<link rel="alternate" type="text/html" href="https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88955&amp;oldid=prev"/>
		<updated>2026-05-21T10:21:08Z</updated>

		<summary type="html">&lt;p&gt;Moved screenshots to improve spacing of Dataset, minor formatting&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 10:21, 21 May 2026&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='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;[[Image:IconLib.png|100px|right]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;[[Image:IconLib.png|100px|right]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;[[Image:Library (Config for AddOns Settings List).png|320px|thumb|Config for AddOns (List of OXPs with settings)]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;[[Image:Library (Config for AddOns Settings List).png|320px|thumb|Config for AddOns (List of OXPs with settings)]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;[[Image:Library (BGS Config Flags).png|320px|thumb|Config for AddOns (example: BGS flags settings)&amp;lt;br&amp;gt;'''Flags''' are On/Off options, Values give a numerical range. (Old Hyperspace is added by Tsoj's newest version of BGS)]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;[[Image:Library (BGS Config Values).png|320px|thumb|Config for AddOns (example: BGS values settings)&amp;lt;br&amp;gt;'''Values''' ('''D''' is the default setting, '''R''' shows the range)]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;This guide is designed to help you add Library Config into your OXP.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;This guide is designed to help you add Library Config into your OXP.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l26&quot; &gt;Line 26:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Turn on/off debug messages sent to the log file&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Turn on/off debug messages sent to the log file&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalFlagChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalFlagChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &lt;/del&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;/ins&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; SInt: {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; SInt: {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; S0: { Name: &amp;quot;_myValue&amp;quot;, Def: 0.3, Min: 0, Max: 1, Float: true, Hide: false, Notify: &amp;quot;$myValueChanges&amp;quot;, Desc: &amp;quot;My decimal value&amp;quot; },&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; S0: { Name: &amp;quot;_myValue&amp;quot;, Def: 0.3, Min: 0, Max: 1, Float: true, Hide: false, Notify: &amp;quot;$myValueChanges&amp;quot;, Desc: &amp;quot;My decimal value&amp;quot; },&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Special decimal value used for important calculations&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Special decimal value used for important calculations&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalValueChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalValueChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &lt;/del&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;/ins&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; EInt: {&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; EInt: {&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; E0: { Name: &amp;quot;_myBitmask&amp;quot;, Def: 0, Min: 0, Max: 15, OneOf: false, OneOfZero: true, Hide: false, Notify: &amp;quot;$myBitmaskChanges&amp;quot;, Desc: [&amp;quot;Value 1&amp;quot;, &amp;quot;Value 2&amp;quot;, &amp;quot;Value 3&amp;quot;, &amp;quot;Value 4&amp;quot;] },&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; E0: { Name: &amp;quot;_myBitmask&amp;quot;, Def: 0, Min: 0, Max: 15, OneOf: false, OneOfZero: true, Hide: false, Notify: &amp;quot;$myBitmaskChanges&amp;quot;, Desc: [&amp;quot;Value 1&amp;quot;, &amp;quot;Value 2&amp;quot;, &amp;quot;Value 3&amp;quot;, &amp;quot;Value 4&amp;quot;] },&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Controls special settings&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Info: &amp;quot;0: Controls special settings&amp;quot;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalBitmaskChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; &amp;#160; &amp;#160; Notify: &amp;quot;$generalBitmaskChanges&amp;quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &lt;/del&gt;}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &lt;/ins&gt;}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; };&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; };&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;[[Image:Library (BGS Config Flags).png|320px|thumb|Config for AddOns (example: BGS flags settings)&amp;lt;br&amp;gt;'''Flags''' are On/Off options, Values give a numerical range. (Old Hyperspace is added by Tsoj's newest version of BGS)]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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 class=&quot;diffchange diffchange-inline&quot;&gt;[[Image:Library (BGS Config Values).png|320px|thumb|Config for AddOns (example: BGS values settings)&amp;lt;br&amp;gt;'''Values''' ('''D''' is the default setting, '''R''' shows the range)]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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 first line &amp;lt;code&amp;gt;this._myConfig&amp;lt;/code&amp;gt; is the name we are giving to the dataset. It can be pretty much any combination of letters and numbers. Something meaningful is usually preferred.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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 first line &amp;lt;code&amp;gt;this._myConfig&amp;lt;/code&amp;gt; is the name we are giving to the dataset. It can be pretty much any combination of letters and numbers. Something meaningful is usually preferred.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cholmondely</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88942&amp;oldid=prev</id>
		<title>Cholmondely: Tagged as an &quot;OXP API&quot;, added screen shots</title>
		<link rel="alternate" type="text/html" href="https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88942&amp;oldid=prev"/>
		<updated>2026-05-21T08:52:23Z</updated>

		<summary type="html">&lt;p&gt;Tagged as an &amp;quot;OXP API&amp;quot;, added screen shots&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 08:52, 21 May 2026&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 colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;[[Image:IconLib.png|100px|right]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;[[Image:Library (Config for AddOns Settings List).png|320px|thumb|Config for AddOns (List of OXPs with settings)]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;[[Image:Library (BGS Config Flags).png|320px|thumb|Config for AddOns (example: BGS flags settings)&amp;lt;br&amp;gt;'''Flags''' are On/Off options, Values give a numerical range. (Old Hyperspace is added by Tsoj's newest version of BGS)]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;[[Image:Library (BGS Config Values).png|320px|thumb|Config for AddOns (example: BGS values settings)&amp;lt;br&amp;gt;'''Values''' ('''D''' is the default setting, '''R''' shows the range)]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;This guide is designed to help you add Library Config into your OXP.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;This guide is designed to help you add Library Config into your OXP.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l199&quot; &gt;Line 199:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 203:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;And that's it! Hopefully this guide has helped you unlock some of the potential in Library Config, and made the process of exposing internal settings a little bit easier.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;And that's it! Hopefully this guide has helped you unlock some of the potential in Library Config, and made the process of exposing internal settings a little bit easier.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;[[Category:OXP API's]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cholmondely</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88921&amp;oldid=prev</id>
		<title>Phkb: /* EInt Section */</title>
		<link rel="alternate" type="text/html" href="https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88921&amp;oldid=prev"/>
		<updated>2026-05-21T05:51:22Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;EInt Section&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 05:51, 21 May 2026&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-l147&quot; &gt;Line 147:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 147:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;Next we have &amp;lt;code&amp;gt;Min&amp;lt;/code&amp;gt;. This is the minimum value your variable can have. With a bitmask, this will either mean 0 or 1. If the value can have no flags set, the minimum value is 0. If there must be at least one flag set, the minimum value will be 1.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;Next we have &amp;lt;code&amp;gt;Min&amp;lt;/code&amp;gt;. This is the minimum value your variable can have. With a bitmask, this will either mean 0 or 1. If the value can have no flags set, the minimum value is 0. If there must be at least one flag set, the minimum value will be 1.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; 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;After this is &amp;lt;code&amp;gt;Max&amp;lt;/code&amp;gt;. This is the maximum value your variable can have. With a bitmask, this will be either the sum of all the bits, or the value of the last bit. Which one it is will depend on how you are using your bitmask. If you're keeping track of multiple flags, then you are likely using a bitmask where multiple bits are set. If you're tracking something that can have only one state at a time, but there are a number of states it could be, then only one bit is being set. The &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;max &lt;/del&gt;value can only be determined by &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;understand &lt;/del&gt;how you are using your bitmask value.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; 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;After this is &amp;lt;code&amp;gt;Max&amp;lt;/code&amp;gt;. This is the maximum value your variable can have. With a bitmask, this will be either the sum of all the bits, or the value of the last bit. Which one it is will depend on how you are using your bitmask. If you're keeping track of multiple flags, then you are likely using a bitmask where multiple bits are set. If you're tracking something that can have only one state at a time, but there are a number of states it could be, then only one bit is being set. The &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;maximum &lt;/ins&gt;value can only be determined by &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;understanding &lt;/ins&gt;how you are using your bitmask value.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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 next two keys would never be in the settings at the same time. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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 next two keys would never be in the settings at the same time. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Phkb</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88920&amp;oldid=prev</id>
		<title>Phkb: /* EInt Section */</title>
		<link rel="alternate" type="text/html" href="https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88920&amp;oldid=prev"/>
		<updated>2026-05-21T05:49:22Z</updated>

		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;EInt Section&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&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: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 05:49, 21 May 2026&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-l116&quot; &gt;Line 116:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 116:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; weapon_facings = 3;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;#160;&amp;#160; weapon_facings = 3;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;code&amp;gt;weapon_facings&amp;lt;/code&amp;gt; value is a bitmask. The possible values start at 1 and go up by a factor of 2 for each additional value. In the example from shipyard.plist, the possible values are 1 = Forward weapon, 2 = Aft weapon, 4 = Port weapon, and 8 = Starboard. So a value of 3 would mean 1 (forward) + 2 (rear), meaning only front and rear laser mounts.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The &amp;lt;code&amp;gt;weapon_facings&amp;lt;/code&amp;gt; value is a bitmask. The possible values &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;(other than zero) &lt;/ins&gt;start at 1 and go up by a factor of 2 for each additional value. In the example from shipyard.plist, the possible values are 1 = Forward weapon, 2 = Aft weapon, 4 = Port weapon, and 8 = Starboard. So a value of 3 would mean 1 (forward) + 2 (rear), meaning only front and rear laser mounts.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;Think of it like this: Imagine a panel of switches like this:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; 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;Think of it like this: Imagine a panel of switches like this:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Phkb</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88918&amp;oldid=prev</id>
		<title>Phkb: Created page with &quot;This guide is designed to help you add Library Config into your OXP.  Lib Config is a powerful tool that can make it super easy for player to customise your OXP in the ways yo...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.alioth.net/index.php?title=Lib_Config_101&amp;diff=88918&amp;oldid=prev"/>
		<updated>2026-05-21T05:44:24Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;This guide is designed to help you add Library Config into your OXP.  Lib Config is a powerful tool that can make it super easy for player to customise your OXP in the ways yo...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;This guide is designed to help you add Library Config into your OXP.&lt;br /&gt;
&lt;br /&gt;
Lib Config is a powerful tool that can make it super easy for player to customise your OXP in the ways you want them too. If they open your OXP and fiddle with things you *don't* want them to, all bets are off!&lt;br /&gt;
&lt;br /&gt;
There are 3 possible parts to Library Config integration.&amp;lt;br&amp;gt;&lt;br /&gt;
1. Dataset&amp;lt;br&amp;gt;&lt;br /&gt;
2. Interface code&amp;lt;br&amp;gt;&lt;br /&gt;
3. Notify code&lt;br /&gt;
&lt;br /&gt;
==1. Dataset==&lt;br /&gt;
The dataset required for Library Config is a dictionary with several distinct parts. Let's look at an example:&lt;br /&gt;
&lt;br /&gt;
  this._myConfig = {&lt;br /&gt;
    Name: this.name,&lt;br /&gt;
    Display: &amp;quot;Debug Options&amp;quot;,&lt;br /&gt;
    Alias: &amp;quot;My Super OXP&amp;quot;,&lt;br /&gt;
    Alive: &amp;quot;_myConfig&amp;quot;,&lt;br /&gt;
    Notify: &amp;quot;$generalChanges&amp;quot;,&lt;br /&gt;
    Reset: false,&lt;br /&gt;
    Bool: {&lt;br /&gt;
      B0: { Name: &amp;quot;_debug&amp;quot;, Def: false, Hide: false, Notify: &amp;quot;$debugFlagChanges&amp;quot;, Desc: &amp;quot;Turn on debug messages&amp;quot; },&lt;br /&gt;
      Info: &amp;quot;0: Turn on/off debug messages sent to the log file&amp;quot;,&lt;br /&gt;
      Notify: &amp;quot;$generalFlagChanges&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
    SInt: {&lt;br /&gt;
      S0: { Name: &amp;quot;_myValue&amp;quot;, Def: 0.3, Min: 0, Max: 1, Float: true, Hide: false, Notify: &amp;quot;$myValueChanges&amp;quot;, Desc: &amp;quot;My decimal value&amp;quot; },&lt;br /&gt;
      Info: &amp;quot;0: Special decimal value used for important calculations&amp;quot;,&lt;br /&gt;
      Notify: &amp;quot;$generalValueChanges&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
    EInt: {&lt;br /&gt;
      E0: { Name: &amp;quot;_myBitmask&amp;quot;, Def: 0, Min: 0, Max: 15, OneOf: false, OneOfZero: true, Hide: false, Notify: &amp;quot;$myBitmaskChanges&amp;quot;, Desc: [&amp;quot;Value 1&amp;quot;, &amp;quot;Value 2&amp;quot;, &amp;quot;Value 3&amp;quot;, &amp;quot;Value 4&amp;quot;] },&lt;br /&gt;
      Info: &amp;quot;0: Controls special settings&amp;quot;,&lt;br /&gt;
      Notify: &amp;quot;$generalBitmaskChanges&amp;quot;&lt;br /&gt;
    }&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
The first line &amp;lt;code&amp;gt;this._myConfig&amp;lt;/code&amp;gt; is the name we are giving to the dataset. It can be pretty much any combination of letters and numbers. Something meaningful is usually preferred.&lt;br /&gt;
&lt;br /&gt;
This is followed by an &amp;lt;code&amp;gt;=&amp;lt;/code&amp;gt; sign, and then an opening curly brace &amp;lt;code&amp;gt;{&amp;lt;/code&amp;gt;, which signals what follows should be considered a dictionary, that is, key/value pairs, separated by commas. There is a closing curly brace at the end with a semi-colon &amp;lt;code&amp;gt;};&amp;lt;/code&amp;gt; to mark the end of the dictionary.&lt;br /&gt;
&lt;br /&gt;
Please note: key names are case sensitive. &amp;lt;code&amp;gt;name&amp;lt;/code&amp;gt; doesn't equal &amp;lt;code&amp;gt;Name&amp;lt;/code&amp;gt;. All the key values in a Lib Config dataset are Capitalised, so if you're getting errors when creating your dataset, check the key names for the correct format.&lt;br /&gt;
&lt;br /&gt;
The first key/value pair is for &amp;lt;code&amp;gt;Name&amp;lt;/code&amp;gt;. This is the worldScript name of where our dataset is being held. We could enter it as text, but the more reliable and easier to maintain method is to use &amp;lt;code&amp;gt;this.name&amp;lt;/code&amp;gt; as the value.&lt;br /&gt;
&lt;br /&gt;
Next is &amp;lt;code&amp;gt;Display&amp;lt;/code&amp;gt;. This is the text that will be displayed in the &amp;quot;Settings&amp;quot; column in the Config display. This can be any text, but long values will be truncated.&lt;br /&gt;
&lt;br /&gt;
Next is &amp;lt;code&amp;gt;Alias&amp;lt;/code&amp;gt;. This is an optional value, and if not supplied the script name (ie what was entered into the &amp;lt;code&amp;gt;Name&amp;lt;/code&amp;gt; key above) will be used. &amp;lt;code&amp;gt;Alias&amp;lt;/code&amp;gt; allows us to put something more human-readable on the screen. This can be any text, but again, long values will be truncated.&lt;br /&gt;
&lt;br /&gt;
Next is &amp;lt;code&amp;gt;Alive&amp;lt;/code&amp;gt;. This is the name of your dataset, the same name we entered on the first line. The only difference is that you don't put &amp;lt;code&amp;gt;this&amp;lt;/code&amp;gt; in front of it. It's just the name of your dataset on its own.&lt;br /&gt;
&lt;br /&gt;
Next is &amp;lt;code&amp;gt;Notify&amp;lt;/code&amp;gt;. This is the name of a function in your worldScript file that will be called whenever the user finishes making changes to your settings through Lib Config. This item is optional and is only used in specific circumstances. If you need to make other changes to various aspects of your OXP (for instance, changing the colour of something the player will see immediately), you would add a function and put the name of it here in &amp;lt;code&amp;gt;Notify&amp;lt;/code&amp;gt;. Then in your function you could check the values that might have changed and perform any addition tasks those changes require.&lt;br /&gt;
&lt;br /&gt;
Next is &amp;lt;code&amp;gt;Reset&amp;lt;/code&amp;gt;. This is an optional boolean value. It will add a &amp;quot;Reset to default&amp;quot; menu option to your settings page, and is the reason why all the settings about to be described have a &amp;lt;code&amp;gt;Def&amp;lt;/code&amp;gt; key. If the user selects the &amp;quot;Reset to default&amp;quot; option, Lib Config will set all your values back to their &amp;lt;code&amp;gt;Def&amp;lt;/code&amp;gt; value.&lt;br /&gt;
&lt;br /&gt;
We now get to the &amp;lt;code&amp;gt;Bool&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;SInt&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;EInt&amp;lt;/code&amp;gt; sections. This is where we tell Lib Config what data we want it to interact with, and how to do that interaction. Each of these is another dictionary object (ie key/value pairs).&lt;br /&gt;
&lt;br /&gt;
We'll start with the easy one first: &amp;lt;code&amp;gt;Bool&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;code&amp;gt;Bool&amp;lt;/code&amp;gt; Section===&lt;br /&gt;
The &amp;lt;code&amp;gt;Bool&amp;lt;/code&amp;gt; section deals with boolean values. ie. values that are either true or false. When you open your settings in Lib Config, this is the &amp;quot;Show Switches&amp;quot; menu item. The structure of the &amp;lt;code&amp;gt;Bool&amp;lt;/code&amp;gt; dictionary is:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Bn&amp;lt;/code&amp;gt;: where &amp;quot;n&amp;quot; is a number between 0 and 8. For example &amp;lt;code&amp;gt;B0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;B1&amp;lt;/code&amp;gt; etc. Each of these are another dictionary, and they each define one boolean value.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Info&amp;lt;/code&amp;gt;: A text entry that adds some descriptive text to your boolean values screen. Generally this has been used to provide additional help and instructions that might be otherwise difficult to enter on an individual line.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Notify&amp;lt;/code&amp;gt;: The name of a function to call when the user leaves the &amp;quot;Show Switches&amp;quot; screen.&lt;br /&gt;
&lt;br /&gt;
Each of the &amp;lt;code&amp;gt;Bn&amp;lt;/code&amp;gt; dictionaries has the following key/value pairs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Name&amp;lt;/code&amp;gt;: This is the name of your variable, and an accurate path to get to it. In it's most simple form, this can be something like &amp;lt;code&amp;gt;_debug&amp;lt;/code&amp;gt;. What this means is there needs to be a definition in your script file of &amp;lt;code&amp;gt;this._debug = false;&amp;lt;/code&amp;gt;, usually above the point where you're defining your Lib Config data (not that it will matter, but it makes it easier to read as a human).&lt;br /&gt;
&lt;br /&gt;
Where is can get complicated is if you have a dictionary object with all your custom values in it. For example:&lt;br /&gt;
&lt;br /&gt;
  this._myData = {&lt;br /&gt;
    debug: false,&lt;br /&gt;
    myValue: 0.3,&lt;br /&gt;
    myBitmask: 0&lt;br /&gt;
  };&lt;br /&gt;
&lt;br /&gt;
In this example, the &amp;quot;path&amp;quot; to the debug flag is &amp;lt;code&amp;gt;this._myData.debug&amp;lt;/code&amp;gt;. When it comes to the enter in your config, you would leave off the &amp;lt;code&amp;gt;this.&amp;lt;/code&amp;gt; and just enter &amp;lt;code&amp;gt;_myData.debug&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Next we have &amp;lt;code&amp;gt;Def&amp;lt;/code&amp;gt;. This is short for &amp;quot;default&amp;quot;, and indicates what the default value for our flag is. For a boolean value, it can be either true or false.&lt;br /&gt;
&lt;br /&gt;
Next is &amp;lt;code&amp;gt;Hide&amp;lt;/code&amp;gt;. This is an optional key. This allows the value to be defined but not displayed to the user. This will only be used in very edge cases, so edge I'm not sure I can think of one!&lt;br /&gt;
&lt;br /&gt;
Next is &amp;lt;code&amp;gt;Notify&amp;lt;/code&amp;gt;. This is an optional key, and is the same as the overall settings &amp;lt;code&amp;gt;Notify&amp;lt;/code&amp;gt;, in that it is the name of a function in your worldScript. The difference is that this function will be called every time the user changes the value.&lt;br /&gt;
&lt;br /&gt;
Finally, we have &amp;lt;code&amp;gt;Desc&amp;lt;/code&amp;gt;. This is the text that will appear beside the value, explaining what it does. You can put whatever text you like here, but the space is short and long entries will be truncated.&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;code&amp;gt;SInt&amp;lt;/code&amp;gt; Section===&lt;br /&gt;
The &amp;lt;code&amp;gt;SInt&amp;lt;/code&amp;gt; section deals with numerical data, both integers (or whole numbers) and decimal values. When you open your settings in Lib Config, this is the &amp;quot;Show Values&amp;quot; menu item. The structure is basically the same as the &amp;lt;code&amp;gt;Bool&amp;lt;/code&amp;gt; section:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Sn&amp;lt;/code&amp;gt;: where &amp;quot;n&amp;quot; is a number between 0 and 8. For example, &amp;lt;code&amp;gt;S0&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;S1&amp;lt;/code&amp;gt; etc. Each of these is another dictionary, and they each define one numeric value.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Info&amp;lt;/code&amp;gt;: A text entry that adds some descriptive text to your values screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Notify&amp;lt;/code&amp;gt;: The name of a function to call when the user leaves the &amp;quot;Show Values&amp;quot; screen.&lt;br /&gt;
&lt;br /&gt;
Each of the &amp;lt;code&amp;gt;Sn&amp;lt;/code&amp;gt; dictionaries has the following key/value pairs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Name&amp;lt;/code&amp;gt;: As with the boolean entries, this is the name of your variable, and all the same rules apply.&lt;br /&gt;
&lt;br /&gt;
Next we have &amp;lt;code&amp;gt;Def&amp;lt;/code&amp;gt;, which is the default value for this variable. This can be whatever you need it to be, but it makes sense for it to have the same value as whatever you use in your definition. For example, if you have &amp;lt;code&amp;gt;this._myValue = 15.5;&amp;lt;/code&amp;gt; in your script file, it makes sense to have &amp;lt;code&amp;gt;Def: 15.5&amp;lt;/code&amp;gt; in your Lib Config entry for that variable.&lt;br /&gt;
&lt;br /&gt;
Next we have &amp;lt;code&amp;gt;Min&amp;lt;/code&amp;gt;. This is the minimum value your variable can have. Attempting to enter a value below this will fail and no value will be changed.&lt;br /&gt;
&lt;br /&gt;
After this is &amp;lt;code&amp;gt;Max&amp;lt;/code&amp;gt;. This is the maximum value your variable can have. Attempting to enter a value above this will fail and no value will be changed.&lt;br /&gt;
&lt;br /&gt;
Next is &amp;lt;code&amp;gt;Float&amp;lt;/code&amp;gt;. This is a boolean value indicating whether the variable is a decimal (ie with decimal points). This is an optional setting, and if omitted the default is &amp;quot;false&amp;quot;, which means Lib Config will treat the value as an integer, and any decimals entered by the user will be stripped.&lt;br /&gt;
&lt;br /&gt;
The last 3 entries are the same as for the &amp;lt;code&amp;gt;Bool&amp;lt;/code&amp;gt; section. &amp;lt;code&amp;gt;Hide&amp;lt;/code&amp;gt; will hide the entry on the display, &amp;lt;code&amp;gt;Notify&amp;lt;/code&amp;gt; is a function that will be called whenever the user changes the value, and &amp;lt;code&amp;gt;Desc&amp;lt;/code&amp;gt; is the short text description for the value, with long entries being truncated.&lt;br /&gt;
&lt;br /&gt;
===&amp;lt;code&amp;gt;EInt&amp;lt;/code&amp;gt; Section===&lt;br /&gt;
The &amp;lt;code&amp;gt;EInt&amp;lt;/code&amp;gt; section is the least used section of Lib Config, largely because bitmasks are confusing. What are bitmasks, you ask? Well, in Oolite we do deal with bitmasks a little bit. Let me show you a small snippet from a random shipyard.plist file:&lt;br /&gt;
&lt;br /&gt;
  weapon_facings = 3;&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;weapon_facings&amp;lt;/code&amp;gt; value is a bitmask. The possible values start at 1 and go up by a factor of 2 for each additional value. In the example from shipyard.plist, the possible values are 1 = Forward weapon, 2 = Aft weapon, 4 = Port weapon, and 8 = Starboard. So a value of 3 would mean 1 (forward) + 2 (rear), meaning only front and rear laser mounts.&lt;br /&gt;
&lt;br /&gt;
Think of it like this: Imagine a panel of switches like this:&lt;br /&gt;
  [XXXXXXXXXX]&lt;br /&gt;
Where &amp;quot;X&amp;quot; is a switch. Each of those switches can be turned on an off, like this:&lt;br /&gt;
  [X..XXX..X.]&lt;br /&gt;
Where &amp;quot;X&amp;quot; is on and &amp;quot;.&amp;quot; is off. Now, we could set up ten different flag varibles, which would work, but gets cumbersome when there are a lot of flags to track. So instead we can use a bitmask:&lt;br /&gt;
          125&lt;br /&gt;
       136251&lt;br /&gt;
   1248624862&lt;br /&gt;
  [XXXXXXXXXX]&lt;br /&gt;
The numbers here are read vertically (1, 2, 4, 8, 16, 32, 64, 128, 256, 512).&lt;br /&gt;
&lt;br /&gt;
Converting the switch settings above into a single value would be (1 + 8 + 16 + 32 + 256) = 313&lt;br /&gt;
&lt;br /&gt;
Given the fiddly nature of bitmasks, they are only likely to be used in certain conditions, but they can be a handy way to combine a lot of boolean values into one.&lt;br /&gt;
&lt;br /&gt;
When it comes to the &amp;lt;code&amp;gt;EInt&amp;lt;/code&amp;gt; section, there is only 1 entry: &amp;lt;code&amp;gt;E0&amp;lt;/code&amp;gt;. The other sections can have 9, but in this section there is only one. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Info&amp;lt;/code&amp;gt;: This is the same as for the other sections, a text entry that adds some descriptive text to the data entry screen.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Notify&amp;lt;/code&amp;gt;: The name of a function to call when the user leaves the &amp;quot;Show Flags&amp;quot; screen.&lt;br /&gt;
&lt;br /&gt;
The &amp;lt;code&amp;gt;E0&amp;lt;/code&amp;gt; dictionary has the following key/value pairs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Name&amp;lt;/code&amp;gt;: Same as the other section. This is the name of your variable, and all the same rules apply.&lt;br /&gt;
&lt;br /&gt;
Next we have &amp;lt;code&amp;gt;Def&amp;lt;/code&amp;gt;, which is the default value for this variable.&lt;br /&gt;
&lt;br /&gt;
Next we have &amp;lt;code&amp;gt;Min&amp;lt;/code&amp;gt;. This is the minimum value your variable can have. With a bitmask, this will either mean 0 or 1. If the value can have no flags set, the minimum value is 0. If there must be at least one flag set, the minimum value will be 1.&lt;br /&gt;
&lt;br /&gt;
After this is &amp;lt;code&amp;gt;Max&amp;lt;/code&amp;gt;. This is the maximum value your variable can have. With a bitmask, this will be either the sum of all the bits, or the value of the last bit. Which one it is will depend on how you are using your bitmask. If you're keeping track of multiple flags, then you are likely using a bitmask where multiple bits are set. If you're tracking something that can have only one state at a time, but there are a number of states it could be, then only one bit is being set. The max value can only be determined by understand how you are using your bitmask value.&lt;br /&gt;
&lt;br /&gt;
The next two keys would never be in the settings at the same time. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;OneOf&amp;lt;/code&amp;gt; means only one bit can be set at a time, but one *must* be set. You cannot have a zero value. If you can only have one bit set at a time, but &amp;quot;no bits&amp;quot; is a valid possibility, then you would use &amp;lt;code&amp;gt;OneOfZero&amp;lt;/code&amp;gt;. Both of these can be excluded if you can have any number of bits set.&lt;br /&gt;
&lt;br /&gt;
The next 2 entries are the same as for the &amp;lt;code&amp;gt;Bool&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;SInt&amp;lt;/code&amp;gt; sections. &amp;lt;code&amp;gt;Hide&amp;lt;/code&amp;gt; will hide the entry on the display, and &amp;lt;code&amp;gt;Notify&amp;lt;/code&amp;gt; is a function that will be called whenever the user changes the value.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;Desc&amp;lt;/code&amp;gt; is slightly different to the other sections. Rather than being one piece of text, this is an array of text items. The array should be the same size as the number of bits in your bitmask. So, if you have 10 bits, there should be 10 entries in the array. The text entries will be shown beside the bit values on the screen.&lt;br /&gt;
&lt;br /&gt;
So, that's our Lib Config dataset established. Next, let's have a look at the interface code.&lt;br /&gt;
&lt;br /&gt;
==2. Interface code==&lt;br /&gt;
The hard stuff has largely been done now. To add our settings into Lib Config, we put the following code into the &amp;lt;code&amp;gt;startUpComplete&amp;lt;/code&amp;gt; function of our worldScript.&lt;br /&gt;
&lt;br /&gt;
  this.startUpComplete = function () {&lt;br /&gt;
    // register our settings, if Lib_Config is present&lt;br /&gt;
    if (worldScripts.Lib_Config) {&lt;br /&gt;
      worldScripts.Lib_Config._registerSet(this._myConfig);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
If you don't need to be notified when changes are made, that's it! However, there is one more worldScript function we should add.&lt;br /&gt;
&lt;br /&gt;
  this.playerWillSaveGame = function () {&lt;br /&gt;
    if (worldScripts.Lib_Config) {&lt;br /&gt;
      missionVariables.MyOXP_debug = this._debug;&lt;br /&gt;
      missionVariables.MyOXP_myValue = this._myValue;&lt;br /&gt;
      missionVariables.MyOXP_myBitmask = this._myBitmask;&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
If the player makes changes that need to be saved with the game, this is the spot to put it. Here, we are only saving the values if Lib Config is installed. If Lib Config is not present, the only way to change the values would be by editing the worldScript itself. If someone does that, they probably wouldn't want the values saved - they're making a global change, which probably shouldn't be overwritten by saved data.&lt;br /&gt;
&lt;br /&gt;
If we're saving the data, we should also load it, so:&lt;br /&gt;
&lt;br /&gt;
  this.startUp = function () {&lt;br /&gt;
    if (worldScripts.LibConfig) {&lt;br /&gt;
      if (missionVariables.MyOXP_debug) this._debug = missionVariables.MyOXP_debug;&lt;br /&gt;
      if (missionVariables.MyOXP_myValue this._myValue = parseFloat(missionVariables.MyOXP_myValue);&lt;br /&gt;
      if (missionVariables.MyOXP_myBitmask = this._myBitmask = parseInt(missionVariables.MyOXP_myBitmask);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
==3. Notify code==&lt;br /&gt;
Adding the notify functions would only be required if you defined one in your dataset. What goes into them will be unique to your OXP. But for example:&lt;br /&gt;
&lt;br /&gt;
  this.$debugFlagChanges = function() {&lt;br /&gt;
    log(this.name, &amp;quot;Debug flag is now set to &amp;quot; + this._debug);&lt;br /&gt;
  }&lt;br /&gt;
&lt;br /&gt;
And that's it! Hopefully this guide has helped you unlock some of the potential in Library Config, and made the process of exposing internal settings a little bit easier.&lt;/div&gt;</summary>
		<author><name>Phkb</name></author>
		
	</entry>
</feed>