<?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%2FEditing_in_ESB</id>
	<title>DSB/Editing in ESB - 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%2FEditing_in_ESB"/>
	<link rel="alternate" type="text/html" href="https://dmwiki.atomas.com/w/index.php?title=DSB/Editing_in_ESB&amp;action=history"/>
	<updated>2026-04-15T15:46:56Z</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/Editing_in_ESB&amp;diff=1978&amp;oldid=prev</id>
		<title>WikiSysop: added category</title>
		<link rel="alternate" type="text/html" href="https://dmwiki.atomas.com/w/index.php?title=DSB/Editing_in_ESB&amp;diff=1978&amp;oldid=prev"/>
		<updated>2011-05-09T14:03:11Z</updated>

		<summary type="html">&lt;p&gt;added category&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 14:03, 9 May 2011&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-l60&quot;&gt;Line 60:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 60:&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;small&amp;gt;[http://www.dungeon-master.com/forum/viewtopic.php?f=53&amp;amp;t=28860#p118919 By Joramun]&amp;lt;/small&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;small&amp;gt;[http://www.dungeon-master.com/forum/viewtopic.php?f=53&amp;amp;t=28860#p118919 By Joramun]&amp;lt;/small&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:DSB|Editing in ESB]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>WikiSysop</name></author>
	</entry>
	<entry>
		<id>https://dmwiki.atomas.com/w/index.php?title=DSB/Editing_in_ESB&amp;diff=1569&amp;oldid=prev</id>
		<title>Ian scho: /* First Steps */</title>
		<link rel="alternate" type="text/html" href="https://dmwiki.atomas.com/w/index.php?title=DSB/Editing_in_ESB&amp;diff=1569&amp;oldid=prev"/>
		<updated>2010-12-05T11:43:32Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;First Steps&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 11:43, 5 December 2010&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-l46&quot;&gt;Line 46:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 46:&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;** counter: it&amp;#039;s like a msg_sender, except it will send its message when it&amp;#039;s count is zero. You guessed, it has an exvar count=number&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;** counter: it&amp;#039;s like a msg_sender, except it will send its message when it&amp;#039;s count is zero. You guessed, it has an exvar count=number&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;** qswapper &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;when activated, the qswapper &lt;/del&gt;will exchange it&#039;s target type of item (for example, a fountain) for another defined type (for example exvar: arch=gorface)&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;** qswapper&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;: &lt;/ins&gt;will exchange it&#039;s target type of item (for example, a fountain) for another defined type (for example exvar: arch=gorface)&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;** item_action: it incorporates many of the actions in RTC&amp;#039;s &amp;#039;&amp;#039;&amp;#039;WALLITEM_ACTION&amp;#039;&amp;#039;&amp;#039;, and allows shuffling of the &amp;quot;operating instance&amp;quot; of a trigger etc. as well as the manipulation of various objects in the dungeon. For example, you can use it to send a certain message to any monster that steps on a certain trigger, or send a message to all instances of a certain type, or create a new instance and put it somewhere in the dungeon, or whatever else.&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;** item_action: it incorporates many of the actions in RTC&amp;#039;s &amp;#039;&amp;#039;&amp;#039;WALLITEM_ACTION&amp;#039;&amp;#039;&amp;#039;, and allows shuffling of the &amp;quot;operating instance&amp;quot; of a trigger etc. as well as the manipulation of various objects in the dungeon. For example, you can use it to send a certain message to any monster that steps on a certain trigger, or send a message to all instances of a certain type, or create a new instance and put it somewhere in the dungeon, or whatever else.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Ian scho</name></author>
	</entry>
	<entry>
		<id>https://dmwiki.atomas.com/w/index.php?title=DSB/Editing_in_ESB&amp;diff=1567&amp;oldid=prev</id>
		<title>Ian scho: New page: == &quot;Editor Strikes Back&quot; - A GUI editor for DSB ==  Included with DSB is &#039;&#039;&#039;Editor Strikes Back&#039;&#039;&#039;, a GUI editor for DSB.   The first thing you&#039;ll have to do to get started is to create a ...</title>
		<link rel="alternate" type="text/html" href="https://dmwiki.atomas.com/w/index.php?title=DSB/Editing_in_ESB&amp;diff=1567&amp;oldid=prev"/>
		<updated>2010-12-04T08:14:58Z</updated>

		<summary type="html">&lt;p&gt;New page: == &amp;quot;Editor Strikes Back&amp;quot; - A GUI editor for DSB ==  Included with DSB is &amp;#039;&amp;#039;&amp;#039;Editor Strikes Back&amp;#039;&amp;#039;&amp;#039;, a GUI editor for DSB.   The first thing you&amp;#039;ll have to do to get started is to create a ...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== &amp;quot;Editor Strikes Back&amp;quot; - A GUI editor for DSB ==&lt;br /&gt;
&lt;br /&gt;
Included with DSB is &amp;#039;&amp;#039;&amp;#039;Editor Strikes Back&amp;#039;&amp;#039;&amp;#039;, a GUI editor for DSB. &lt;br /&gt;
&lt;br /&gt;
The first thing you&amp;#039;ll have to do to get started is to create a new game directory. You can do that from within the editor, or just make a folder in Windows before you start. This will be where ESB puts your newly created &amp;#039;&amp;#039;dungeon.lua&amp;#039;&amp;#039;, and where you can store any other files you need, like graphics or a custom &amp;#039;&amp;#039;startup.lua&amp;#039;&amp;#039;. After you&amp;#039;ve created a new dungeon, you&amp;#039;ll be presented with a grid of walls, where, by selecting items from the tree view on the right, you can stick in all the objects necessary. Most that use exvars (external variables) have a standard selection of exvars predefined when you place them.&lt;br /&gt;
&lt;br /&gt;
The test_dungeon provides a lot of examples of most of the game&amp;#039;s objects in use, as well as some additional ones that expand the functionality of traditional DM and show what DSB can do. The test_dungeon&amp;#039;s Lua source code also contains examples for adding new objects and adding new spells.&lt;br /&gt;
&lt;br /&gt;
[http://www.dungeon-master.com/forum/viewtopic.php?f=53&amp;amp;t=28414&amp;amp;p=104460&amp;amp;hilit=esb#p104460 Questions?]&lt;br /&gt;
&lt;br /&gt;
== First Steps ==&lt;br /&gt;
&lt;br /&gt;
* Step 1: Explore&lt;br /&gt;
&lt;br /&gt;
:Open the dungeon.lua file in the test_dungeon directory with ESB.&lt;br /&gt;
&lt;br /&gt;
:Explore it. Check the mechanics. Play the dungeon.&lt;br /&gt;
&lt;br /&gt;
* Step 2: Experiment&lt;br /&gt;
:Do you start from scratch or from RTC?&lt;br /&gt;
&lt;br /&gt;
:Try and modify things.&lt;br /&gt;
&lt;br /&gt;
:Mechanics in DSB are using a MESSAGE system.&lt;br /&gt;
&lt;br /&gt;
:For example: If you walk on a &amp;#039;&amp;#039;pad&amp;#039;&amp;#039;, the said &amp;#039;&amp;#039;pad&amp;#039;&amp;#039; will send a message to a target.&lt;br /&gt;
&lt;br /&gt;
:In ESB, edit the &amp;#039;&amp;#039;pad&amp;#039;&amp;#039; you will see the following exvars: &amp;#039;&amp;#039;&amp;#039;msg=M_ACTIVATE&amp;#039;&amp;#039;&amp;#039; and &amp;#039;&amp;#039;&amp;#039;target=128&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
:Where &amp;#039;&amp;#039;&amp;#039;128&amp;#039;&amp;#039;&amp;#039; is the identity number of the target item (it can be any number).&lt;br /&gt;
&lt;br /&gt;
:In &amp;#039;&amp;#039;dungeon.lua&amp;#039;&amp;#039;, you will see:&lt;br /&gt;
&lt;br /&gt;
    exvar[55]={ msg=M_ACTIVATE, target=128 }&lt;br /&gt;
&lt;br /&gt;
:Where &amp;#039;&amp;#039;&amp;#039;55&amp;#039;&amp;#039;&amp;#039; is the identity number of the pad (it can be any number).&lt;br /&gt;
&lt;br /&gt;
* Step 3: Get ready&lt;br /&gt;
The main mechanics in ESB are the following:&lt;br /&gt;
&lt;br /&gt;
** trigger: ground item that will send a message when it&amp;#039;s stepped on by the party / by a monster / by an item&lt;br /&gt;
&lt;br /&gt;
** msg_sender: it&amp;#039;s a relayer of messages. When it receives a M_ACTIVATE message, it will send a message to its own targets. It can be used as a repeat fire: add the exvar repeat_rate=number, then it will send the message every number ticks (roughly 1/5 of a second). If it receives a M_DEACTIVATE, it will stop doing so.&lt;br /&gt;
&lt;br /&gt;
** sequencer: it&amp;#039;s like a msg_sender, except that it sends its messages to its targets ONE AT A TIME, every tick. It can be used to make a sequence of events. If you add the exvar send_reverse=true, everytime it sends a message to a target, the previous target will get the opposite message (NB: the opposite compared to what it received on the previous step, not compared to the current message being sent to the new target)&lt;br /&gt;
&lt;br /&gt;
** counter: it&amp;#039;s like a msg_sender, except it will send its message when it&amp;#039;s count is zero. You guessed, it has an exvar count=number&lt;br /&gt;
&lt;br /&gt;
** qswapper when activated, the qswapper will exchange it&amp;#039;s target type of item (for example, a fountain) for another defined type (for example exvar: arch=gorface)&lt;br /&gt;
&lt;br /&gt;
** item_action: it incorporates many of the actions in RTC&amp;#039;s &amp;#039;&amp;#039;&amp;#039;WALLITEM_ACTION&amp;#039;&amp;#039;&amp;#039;, and allows shuffling of the &amp;quot;operating instance&amp;quot; of a trigger etc. as well as the manipulation of various objects in the dungeon. For example, you can use it to send a certain message to any monster that steps on a certain trigger, or send a message to all instances of a certain type, or create a new instance and put it somewhere in the dungeon, or whatever else.&lt;br /&gt;
&lt;br /&gt;
:I leave the rest to your curiosity. The main messages are: &amp;#039;&amp;#039;&amp;#039;M_ACTIVATE&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;M_DEACTIVATE&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;M_TOGGLE&amp;#039;&amp;#039;&amp;#039;, &amp;#039;&amp;#039;&amp;#039;M_DESTROY&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
* Step 4: Customize&lt;br /&gt;
:Open the &amp;#039;&amp;#039;object.lua&amp;#039;&amp;#039; of the &amp;#039;&amp;#039;test_dungeon&amp;#039;&amp;#039; and in &amp;#039;&amp;#039;base&amp;#039;&amp;#039;.&lt;br /&gt;
:Open the &amp;#039;&amp;#039;startup.lua&amp;#039;&amp;#039; of the &amp;#039;&amp;#039;test_dungeon&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
:See how items are defined by an &amp;quot;archetype&amp;quot;: &amp;#039;&amp;#039;&amp;#039;obj.arch = { graphics, properties }&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
:Explore the files to see what&amp;#039;s what. Graphics are the easiest to modify.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;small&amp;gt;[http://www.dungeon-master.com/forum/viewtopic.php?f=53&amp;amp;t=28860#p118919 By Joramun]&amp;lt;/small&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ian scho</name></author>
	</entry>
</feed>