<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.dikumud.com/index.php?action=history&amp;feed=atom&amp;title=Manual%3AZone_Manual%2FThe_Reset_Section</id>
	<title>Manual:Zone Manual/The Reset Section - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.dikumud.com/index.php?action=history&amp;feed=atom&amp;title=Manual%3AZone_Manual%2FThe_Reset_Section"/>
	<link rel="alternate" type="text/html" href="https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/The_Reset_Section&amp;action=history"/>
	<updated>2026-10-28T23:24:29Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.1</generator>
	<entry>
		<id>https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/The_Reset_Section&amp;diff=992&amp;oldid=prev</id>
		<title>Nove at 15:16, 6 January 2023</title>
		<link rel="alternate" type="text/html" href="https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/The_Reset_Section&amp;diff=992&amp;oldid=prev"/>
		<updated>2023-01-06T15:16:47Z</updated>

		<summary type="html">&lt;p&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 15:16, 6 January 2023&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-l125&quot; &gt;Line 125:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 125:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &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;	its status that it has when it first is loaded into the game.  If&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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;	its status that it has when it first is loaded into the game.  If&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;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;	however we wanted to change the door to a locked door we could do that&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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;	however we wanted to change the door to a locked door we could do that&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;	by adding the locked flag like this&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;.&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;	by adding the locked flag like this&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 class='diff-marker'&gt; &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;lt;nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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;lt;nowiki&amp;gt;&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;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;	door hallway EAST {EX_OPEN_CLOSE, EX_CLOSED,EX_LOCKED}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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;	door hallway EAST {EX_OPEN_CLOSE, EX_CLOSED,EX_LOCKED}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Nove</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/The_Reset_Section&amp;diff=214&amp;oldid=prev</id>
		<title>Nove at 11:34, 26 May 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/The_Reset_Section&amp;diff=214&amp;oldid=prev"/>
		<updated>2020-05-26T11:34:56Z</updated>

		<summary type="html">&lt;p&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 11:34, 26 May 2020&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-l129&quot; &gt;Line 129:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 129:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &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;	door hallway EAST {EX_OPEN_CLOSE, EX_CLOSED,EX_LOCKED}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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;	door hallway EAST {EX_OPEN_CLOSE, EX_CLOSED,EX_LOCKED}&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;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;	door office WEST {EX_OPEN_CLOSE, EX_CLOSED,EX_LOCKED}&amp;lt;/nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &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;	door office WEST {EX_OPEN_CLOSE, EX_CLOSED,EX_LOCKED}&amp;lt;/nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&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 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; &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;lt;div style='padding-top: 30px; padding-bottom: 20px; text-align: left;float:left;width:50%;'&amp;gt;[[Manual:Zone_Manual/The_Objects_Section/Suggested_object_exercises|Previous: Suggested object exercises]]&amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&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 style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style='padding-top: 30px; padding-bottom: 20px; text-align: right;float:right;width:50%;'&amp;gt;[[Manual:Zone_Manual/The_Reset_Section/Loading_objects_and_NPCs|Next: Loading objects and NPCs]]&amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Nove</name></author>
		
	</entry>
	<entry>
		<id>https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/The_Reset_Section&amp;diff=133&amp;oldid=prev</id>
		<title>Nove: Created page with &quot;== The reset section ==  	Once you have learned to build rooms, objects and NPCs, you will 	find one main missing thing, while you have created NPCs and objects 	they don't ex...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/The_Reset_Section&amp;diff=133&amp;oldid=prev"/>
		<updated>2020-05-25T14:32:47Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== The reset section ==  	Once you have learned to build rooms, objects and NPCs, you will 	find one main missing thing, while you have created NPCs and objects 	they don&amp;#039;t ex...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== The reset section ==&lt;br /&gt;
&lt;br /&gt;
	Once you have learned to build rooms, objects and NPCs, you will&lt;br /&gt;
	find one main missing thing, while you have created NPCs and objects&lt;br /&gt;
	they don't exist in the game unless you load them.  When developing the&lt;br /&gt;
	VME we found that logging on and loading everything for the players to&lt;br /&gt;
	interact with, became a very difficult thing to do when we got over 30&lt;br /&gt;
	items.  After many seconds of thought we came up with the idea of a&lt;br /&gt;
	reset section that would do all of this work for us.  In fact the reset&lt;br /&gt;
	takes care of closing doors after players have opened them, loading NPCs&lt;br /&gt;
	and their equipment, loading objects by themselves in rooms or even&lt;br /&gt;
	loaded objects in objects.&lt;br /&gt;
&lt;br /&gt;
	Everything inside the reset section activates once at boot time and&lt;br /&gt;
	then again when the reset time is up and the reset flag is true.  These&lt;br /&gt;
	two fields were described in (Link to zoneinfo) and are included&lt;br /&gt;
	in the zone header.  The reset section is denoted by the symbol '%reset' and can placed&lt;br /&gt;
	anywhere but we try to keep it at the end of our zone files.  There is&lt;br /&gt;
	no set order you must reset your doors, objects, and NPCs in but I like&lt;br /&gt;
	to do doors first, special reset commands second, objects in rooms third, objects with objects in them&lt;br /&gt;
	forth, NPCs fifth,&lt;br /&gt;
	and finally NPCs.  You may find that you have a better way of sorting&lt;br /&gt;
	them and again it is up to you.&lt;br /&gt;
=== Door resets ===&lt;br /&gt;
&lt;br /&gt;
	To show how the door resets work we will revisit an old room&lt;br /&gt;
	example from (Link to rmdoorexits). The following two rooms are&lt;br /&gt;
	linked with a door and at boot time they are reset to closed.  When the&lt;br /&gt;
	mud boots the door flags set on the room are the door flags that are&lt;br /&gt;
	used.  After boot up time the reset section is where the VME gets its&lt;br /&gt;
	information about what to do with the door.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	hallway&lt;br /&gt;
	title &amp;quot;Module tunnel&amp;quot;&lt;br /&gt;
	descr &amp;quot;The hallway is about 50 meters long and around 100 meters from&lt;br /&gt;
	side to side and top to bottom....&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	movement SECT_INSIDE&lt;br /&gt;
	ALWAYS_LIGHT&lt;br /&gt;
	flags {UNIT_FL_NO_WEATHER, UNIT_FL_INDOORS}&lt;br /&gt;
&lt;br /&gt;
	west to chamber descr&lt;br /&gt;
	&amp;quot;The hallway opens up into a chamber.&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
	east to office descr&lt;br /&gt;
	&amp;quot;You see what looks to be an office.&amp;quot;&lt;br /&gt;
	keyword {&amp;quot;air lock door&amp;quot;,&amp;quot;air lock&amp;quot;,&amp;quot;door&amp;quot;}&lt;br /&gt;
	open {EX_OPEN_CLOSE, EX_CLOSED};&lt;br /&gt;
&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	office&lt;br /&gt;
	title &amp;quot;The station office&amp;quot;&lt;br /&gt;
	descr&lt;br /&gt;
	&amp;quot;Large paintings fill the walls of this part of the station....&amp;quot;&lt;br /&gt;
&lt;br /&gt;
	movement SECT_INSIDE&lt;br /&gt;
	ALWAYS_LIGHT&lt;br /&gt;
	flags {UNIT_FL_NO_WEATHER, UNIT_FL_INDOORS}&lt;br /&gt;
&lt;br /&gt;
	west to hallway descr&lt;br /&gt;
	&amp;quot;You see what looks to be a hallway.&amp;quot;&lt;br /&gt;
	keyword {&amp;quot;air lock door&amp;quot;,&amp;quot;air lock&amp;quot;,&amp;quot;door&amp;quot;}&lt;br /&gt;
	open {EX_OPEN_CLOSE, EX_CLOSED};&lt;br /&gt;
	end&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
Now that we have two rooms lets define the reset command and how&lt;br /&gt;
	it works.  All reset commands have a keyword and then a set of&lt;br /&gt;
	arguments.  The door reset command is simply 'door' followed by a set of&lt;br /&gt;
	arguments that tell the VME where the door is, which door in that&lt;br /&gt;
	location, and what you want to do with the door.  The command looks like&lt;br /&gt;
	this.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	door &amp;amp;lt;room symbol&amp;amp;gt; &amp;amp;lt;Direction number&amp;amp;gt; {&amp;amp;lt;door flags&amp;amp;gt;}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
==== Door argument explanation ====&lt;br /&gt;
;room symbolic&lt;br /&gt;
: As the name indicates this is the room that the door is located in.  If you are resetting a door not in the zone the reset command is in you will need to use a full symbolic name with the zone extension.  The following would be two valid examples.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	//room symbolic in  this zone&lt;br /&gt;
	door myroom ...&lt;br /&gt;
&lt;br /&gt;
	//room symbolic in another zone&lt;br /&gt;
	door out_room@frogwart ...&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
;direction number&lt;br /&gt;
: The direction number can be one of the pre-defined direction numbers in the file ''vme.h''.  shown here so you don't have to go flipping file to file.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	#define NORTH 0&lt;br /&gt;
	#define EAST  1&lt;br /&gt;
	#define SOUTH 2&lt;br /&gt;
	#define WEST  3&lt;br /&gt;
	#define UP    4&lt;br /&gt;
	#define DOWN  5&lt;br /&gt;
	#define NORTHEAST 6&lt;br /&gt;
	#define NORTHWEST 7&lt;br /&gt;
	#define SOUTHEAST 8&lt;br /&gt;
	#define SOUTHWEST 9&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
;door flags&lt;br /&gt;
: These flags, surrounded by '{}', describe the state of the door after the reset.  The following is the list of possible door flags.&lt;br /&gt;
&lt;br /&gt;
;EX_OPEN_CLOSE&lt;br /&gt;
: Set this if you can open and close this exit, be it a door, gate or otherwise.&lt;br /&gt;
;EX_CLOSED&lt;br /&gt;
: Set this if you want the exit to be closed at reset time.&lt;br /&gt;
;EX_LOCKED&lt;br /&gt;
: Set this if you want the exit to be locked at reset time.&lt;br /&gt;
	&amp;lt;blockquote style=&amp;quot;background-color: #E8E8E8; font-style: italic; &amp;quot;&amp;gt;&lt;br /&gt;
	An interesting aspect is that if you do not specify a key, you can&lt;br /&gt;
	    only unlock this door with the 'pick' skill, 'unlock' spell or from&lt;br /&gt;
	    DIL with UnSet();&lt;br /&gt;
		&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
;EX_PICK_PROOF&lt;br /&gt;
: Using this flag renders the 'pick' skill and 'unlock' spell un useable on the lock of this exit.&lt;br /&gt;
;EX_HIDDEN&lt;br /&gt;
: If this bit is set, the exit is hidden until the mobile has successfully searched for it, using the 'search'-command.&lt;br /&gt;
&lt;br /&gt;
Now that we have all the information we need we can close the door&lt;br /&gt;
	after the reset time expires.  For our two rooms the door reset would&lt;br /&gt;
	look like this.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	door hallway EAST {EX_OPEN_CLOSE, EX_CLOSED}&lt;br /&gt;
	door office WEST {EX_OPEN_CLOSE, EX_CLOSED}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background-color: #E8E8E8; font-style: italic; &amp;quot;&amp;gt;As you can see from the example it is very important to close both sides of the door.  If you do not close both sides you will get very weird and undefined errors when players are trying to open and close them&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
	Another thing that you can do with the door reset command is&lt;br /&gt;
	change the doors status.  In our previous example we reset the door to&lt;br /&gt;
	its status that it has when it first is loaded into the game.  If&lt;br /&gt;
	however we wanted to change the door to a locked door we could do that&lt;br /&gt;
	by adding the locked flag like this.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	door hallway EAST {EX_OPEN_CLOSE, EX_CLOSED,EX_LOCKED}&lt;br /&gt;
	door office WEST {EX_OPEN_CLOSE, EX_CLOSED,EX_LOCKED}&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>Nove</name></author>
		
	</entry>
</feed>