<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://dmwiki.atomas.com/w/index.php?action=history&amp;feed=atom&amp;title=DSB%2FBasic_DSB_Terminology</id>
	<title>DSB/Basic DSB Terminology - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://dmwiki.atomas.com/w/index.php?action=history&amp;feed=atom&amp;title=DSB%2FBasic_DSB_Terminology"/>
	<link rel="alternate" type="text/html" href="https://dmwiki.atomas.com/w/index.php?title=DSB/Basic_DSB_Terminology&amp;action=history"/>
	<updated>2026-04-15T15:46:07Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://dmwiki.atomas.com/w/index.php?title=DSB/Basic_DSB_Terminology&amp;diff=2979&amp;oldid=prev</id>
		<title>Gambit37 at 02:03, 29 November 2012</title>
		<link rel="alternate" type="text/html" href="https://dmwiki.atomas.com/w/index.php?title=DSB/Basic_DSB_Terminology&amp;diff=2979&amp;oldid=prev"/>
		<updated>2012-11-29T02:03:13Z</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 02:03, 29 November 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The terms &amp;quot;object,&amp;quot; &amp;quot;item&amp;quot; and so on can be somewhat ambiguous. Dungeon objects in DSB should be thought of in two broad categories.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The terms &amp;quot;object,&amp;quot; &amp;quot;item&amp;quot; and so on can be somewhat ambiguous. Dungeon objects in DSB should be thought of in two broad categories.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;lt;b&amp;gt;Archetype&amp;lt;/b&amp;gt; (arch) - a general category, such as &quot;Axe&quot; or &quot;Iron Keyhole.&quot;&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;* &amp;lt;b&amp;gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[DSB/Archetypes|&lt;/ins&gt;Archetype&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;&amp;lt;/b&amp;gt; (arch) - a general category, such as &quot;Axe&quot; or &quot;Iron Keyhole.&quot;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;lt;b&amp;gt;Instance&amp;lt;/b&amp;gt; (inst) - one specific thing that is found in the dungeon, assigned an id (an integer from 1 to 32767).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;lt;b&amp;gt;Instance&amp;lt;/b&amp;gt; (inst) - one specific thing that is found in the dungeon, assigned an id (an integer from 1 to 32767).&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;So, &amp;quot;Screamer Slice&amp;quot; is an archetype, a particular screamer slice that Daroou just popped in his mouth is an inst.&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;So, &amp;quot;Screamer Slice&amp;quot; is an archetype, a particular screamer slice that Daroou just popped in his mouth is an inst.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;lt;b&amp;gt;Exvar&amp;lt;/b&amp;gt; - For reasons of speed and space, many instances don&#039;t have a full representation in Lua. Instead, exvars (external variables) can be used to store essential information about an instance that its archetype doesn&#039;t have. For example, the power of a ful bomb, or the target of a pushbutton, or whatever else you can imagine. The [[DSB/Base Code|Base Code]] includes quite a few &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;exvars, &lt;/del&gt;[[DSB/Exvars|Exvars]].&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;* &amp;lt;b&amp;gt;Exvar&amp;lt;/b&amp;gt; - For reasons of speed and space, many instances don&#039;t have a full representation in Lua. Instead, exvars (external variables) can be used to store essential information about an instance that its archetype doesn&#039;t have. For example, the power of a ful bomb, or the target of a pushbutton, or whatever else you can imagine. The [[DSB/Base Code|Base Code]] includes quite a few [[DSB/Exvars|Exvars]].&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;Each inst can have exvars associated with it in the form of Lua table, such as:&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 inst can have exvars associated with it in the form of Lua table, such as:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Gambit37</name></author>
	</entry>
	<entry>
		<id>https://dmwiki.atomas.com/w/index.php?title=DSB/Basic_DSB_Terminology&amp;diff=523&amp;oldid=prev</id>
		<title>Gilles at 05:54, 8 September 2008</title>
		<link rel="alternate" type="text/html" href="https://dmwiki.atomas.com/w/index.php?title=DSB/Basic_DSB_Terminology&amp;diff=523&amp;oldid=prev"/>
		<updated>2008-09-08T05:54:08Z</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 05:54, 8 September 2008&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-l9&quot;&gt;Line 9:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&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 inst can have exvars associated with it in the form of Lua table, such as:&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 inst can have exvars associated with it in the form of Lua table, such as:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;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;exvar[id] = { msg = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;M&#039;&#039;ACTIVATE&lt;/del&gt;, target = &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;some&#039;&#039;other&#039;&#039;id&lt;/del&gt;, &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;opby&#039;&#039;party &lt;/del&gt;= true }&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;exvar[id] = { msg = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;M_ACTIVATE&lt;/ins&gt;, target = &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;some_other_id&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;opby_party &lt;/ins&gt;= true }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;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 colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l19&quot;&gt;Line 19:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 19:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;lt;b&amp;gt;System Function&amp;lt;/b&amp;gt; - A system function is a Lua function that begins with the prefix sys_, and is called by the game engine in order to do some task or perform some calculation. They can be modified to change the game behavior in subtle or dramatic ways.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;lt;b&amp;gt;System Function&amp;lt;/b&amp;gt; - A system function is a Lua function that begins with the prefix sys_, and is called by the game engine in order to do some task or perform some calculation. They can be modified to change the game behavior in subtle or dramatic ways.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039; &lt;/del&gt;&amp;lt;b&amp;gt;Event&amp;lt;/b&amp;gt; - An event is similar to a system function, in that it is called by the engine, only it is usually prefixed with &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;on&#039;&#039;&#039;&#039;&#039; &lt;/del&gt;(or sometimes &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;off&#039;&#039;&lt;/del&gt;*) and is associated with a given arch.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* &lt;/ins&gt;&amp;lt;b&amp;gt;Event&amp;lt;/b&amp;gt; - An event is similar to a system function, in that it is called by the engine, only it is usually prefixed with &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;on_*&quot; &lt;/ins&gt;(or sometimes &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;off_&lt;/ins&gt;*&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&quot;&lt;/ins&gt;) and is associated with a given arch.&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;[[DSB/Events and System Functions|Events and System Functions]] documentation.&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;[[DSB/Events and System Functions|Events and System Functions]] documentation.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Gilles</name></author>
	</entry>
	<entry>
		<id>https://dmwiki.atomas.com/w/index.php?title=DSB/Basic_DSB_Terminology&amp;diff=438&amp;oldid=prev</id>
		<title>Gilles at 20:05, 16 August 2008</title>
		<link rel="alternate" type="text/html" href="https://dmwiki.atomas.com/w/index.php?title=DSB/Basic_DSB_Terminology&amp;diff=438&amp;oldid=prev"/>
		<updated>2008-08-16T20:05:04Z</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 20:05, 16 August 2008&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-l9&quot;&gt;Line 9:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&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 inst can have exvars associated with it in the form of Lua table, such as:&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 inst can have exvars associated with it in the form of Lua table, such as:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;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;exvar&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;~&lt;/del&gt;[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[ DSBFuncs#dsb&#039;&#039;msg|&lt;/del&gt;id] = { msg = M&#039;&#039;ACTIVATE, target = some&#039;&#039;other&#039;&#039;id, opby&#039;&#039;party = true }&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;exvar[id] = { msg = M&#039;&#039;ACTIVATE, target = some&#039;&#039;other&#039;&#039;id, opby&#039;&#039;party = true }&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/pre&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;lt;b&amp;gt;Message&amp;lt;/b&amp;gt; - An instruction sent from one inst to another, using the [[&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;dsb&#039;&#039;msg &lt;/del&gt;]]] command. &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Messages are documented &lt;/del&gt;[[ &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;DSBMsgs&lt;/del&gt;|&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;here &lt;/del&gt;]].&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;* &amp;lt;b&amp;gt;Message&amp;lt;/b&amp;gt; - An instruction sent from one inst to another, using the [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;DSB/Exposed functions|dsb_msg&lt;/ins&gt;]]] command. [[&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;DSB/Messages&lt;/ins&gt;|&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Messages&lt;/ins&gt;]] &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;documentation&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;lt;b&amp;gt;Ppos&amp;lt;/b&amp;gt; - A party position, usually represented &amp;quot;ppos&amp;quot; in the code, is a number from 0 to 3 that refers to the slot occupied by a given character. This is different than the character id of the character him/herself.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* &amp;lt;b&amp;gt;Ppos&amp;lt;/b&amp;gt; - A party position, usually represented &amp;quot;ppos&amp;quot; in the code, is a number from 0 to 3 that refers to the slot occupied by a given character. This is different than the character id of the character him/herself.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Gilles</name></author>
	</entry>
	<entry>
		<id>https://dmwiki.atomas.com/w/index.php?title=DSB/Basic_DSB_Terminology&amp;diff=437&amp;oldid=prev</id>
		<title>Gilles: New page: The terms &quot;object,&quot; &quot;item&quot; and so on can be somewhat ambiguous. Dungeon objects in DSB should be thought of in two broad categories.  * &lt;b&gt;Archetype&lt;/b&gt; (arch) - a general category, such a...</title>
		<link rel="alternate" type="text/html" href="https://dmwiki.atomas.com/w/index.php?title=DSB/Basic_DSB_Terminology&amp;diff=437&amp;oldid=prev"/>
		<updated>2008-08-16T20:02:17Z</updated>

		<summary type="html">&lt;p&gt;New page: The terms &amp;quot;object,&amp;quot; &amp;quot;item&amp;quot; and so on can be somewhat ambiguous. Dungeon objects in DSB should be thought of in two broad categories.  * &amp;lt;b&amp;gt;Archetype&amp;lt;/b&amp;gt; (arch) - a general category, such a...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;The terms &amp;quot;object,&amp;quot; &amp;quot;item&amp;quot; and so on can be somewhat ambiguous. Dungeon objects in DSB should be thought of in two broad categories.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Archetype&amp;lt;/b&amp;gt; (arch) - a general category, such as &amp;quot;Axe&amp;quot; or &amp;quot;Iron Keyhole.&amp;quot;&lt;br /&gt;
* &amp;lt;b&amp;gt;Instance&amp;lt;/b&amp;gt; (inst) - one specific thing that is found in the dungeon, assigned an id (an integer from 1 to 32767).&lt;br /&gt;
So, &amp;quot;Screamer Slice&amp;quot; is an archetype, a particular screamer slice that Daroou just popped in his mouth is an inst.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Exvar&amp;lt;/b&amp;gt; - For reasons of speed and space, many instances don&amp;#039;t have a full representation in Lua. Instead, exvars (external variables) can be used to store essential information about an instance that its archetype doesn&amp;#039;t have. For example, the power of a ful bomb, or the target of a pushbutton, or whatever else you can imagine. The [[DSB/Base Code|Base Code]] includes quite a few exvars, [[DSB/Exvars|Exvars]].&lt;br /&gt;
&lt;br /&gt;
Each inst can have exvars associated with it in the form of Lua table, such as:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
exvar~[[ DSBFuncs#dsb&amp;#039;&amp;#039;msg|id] = { msg = M&amp;#039;&amp;#039;ACTIVATE, target = some&amp;#039;&amp;#039;other&amp;#039;&amp;#039;id, opby&amp;#039;&amp;#039;party = true }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Message&amp;lt;/b&amp;gt; - An instruction sent from one inst to another, using the [[dsb&amp;#039;&amp;#039;msg ]]] command. Messages are documented [[ DSBMsgs|here ]].&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;b&amp;gt;Ppos&amp;lt;/b&amp;gt; - A party position, usually represented &amp;quot;ppos&amp;quot; in the code, is a number from 0 to 3 that refers to the slot occupied by a given character. This is different than the character id of the character him/herself.&lt;br /&gt;
&lt;br /&gt;
There are two main times the game engine will call custom Lua code the dungeon designer has created:&lt;br /&gt;
* &amp;lt;b&amp;gt;System Function&amp;lt;/b&amp;gt; - A system function is a Lua function that begins with the prefix sys_, and is called by the game engine in order to do some task or perform some calculation. They can be modified to change the game behavior in subtle or dramatic ways.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039; &amp;lt;b&amp;gt;Event&amp;lt;/b&amp;gt; - An event is similar to a system function, in that it is called by the engine, only it is usually prefixed with on&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039; (or sometimes off&amp;#039;&amp;#039;*) and is associated with a given arch.&lt;br /&gt;
&lt;br /&gt;
[[DSB/Events and System Functions|Events and System Functions]] documentation.&lt;br /&gt;
&lt;br /&gt;
One special type of function called by the game engine is called a [[DSB/Subrenderers|subrenderers]].&lt;br /&gt;
* &amp;lt;b&amp;gt;Subrenderer&amp;lt;/b&amp;gt; - A subrenderer is a special Lua function that renders the large area in the lower-right corner of the inventory screen. In the default code provided in &amp;lt;i&amp;gt;base/&amp;lt;/i&amp;gt;, subrenderers are used to create the chest and scroll, and concievably about anything else could be built.&lt;br /&gt;
&lt;br /&gt;
[[Category:DSB|Basic DSB Terminology]]&lt;/div&gt;</summary>
		<author><name>Gilles</name></author>
	</entry>
</feed>