<?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%2FZone_Source_File</id>
	<title>Manual:Zone Manual/Zone Source File - 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%2FZone_Source_File"/>
	<link rel="alternate" type="text/html" href="https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/Zone_Source_File&amp;action=history"/>
	<updated>2026-06-24T10:33:39Z</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/Zone_Source_File&amp;diff=188&amp;oldid=prev</id>
		<title>Nove at 11:24, 26 May 2020</title>
		<link rel="alternate" type="text/html" href="https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/Zone_Source_File&amp;diff=188&amp;oldid=prev"/>
		<updated>2020-05-26T11:24:14Z</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:24, 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-l115&quot; &gt;Line 115:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 115:&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;		fields which will both be defined more later because they can be used&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;		fields which will both be defined more later because they can be used&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;		differently depending on what you are using them for.&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;		differently depending on what you are using them for.&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/General_Compiler_Information/The_VMC_pre-processor|Previous: The VMC pre-processor]]&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/Zone_Source_File/Zone_information_section|Next: Zone information section]]&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/Zone_Source_File&amp;diff=104&amp;oldid=prev</id>
		<title>Nove: Created page with &quot;== Zone source file ==  		In this chapter we will define all the sections of a zone file 		and go in-depth on the zone info section.  Once complete with this 		chapter you sho...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.dikumud.com/index.php?title=Manual:Zone_Manual/Zone_Source_File&amp;diff=104&amp;oldid=prev"/>
		<updated>2020-05-25T14:08:26Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Zone source file ==  		In this chapter we will define all the sections of a zone file 		and go in-depth on the zone info section.  Once complete with this 		chapter you sho...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Zone source file ==&lt;br /&gt;
&lt;br /&gt;
		In this chapter we will define all the sections of a zone file&lt;br /&gt;
		and go in-depth on the zone info section.  Once complete with this&lt;br /&gt;
		chapter you should be able to create an empty yet compilable zone.&lt;br /&gt;
&lt;br /&gt;
		A zone source file is split up into 6 sections.  A&lt;br /&gt;
		zone-declaration section, a mobile (NPC) section, an object&lt;br /&gt;
		section, a room section, a reset section, and the DIL&lt;br /&gt;
		section.  The zone section is the only section that  has to be in the file, and&lt;br /&gt;
		they may appear in any order.&lt;br /&gt;
&lt;br /&gt;
		Each section is preceded by a section header. These are the  six&lt;br /&gt;
		possible headers:&lt;br /&gt;
* %zone&lt;br /&gt;
* %rooms&lt;br /&gt;
* %mobiles&lt;br /&gt;
* %objects&lt;br /&gt;
* %reset&lt;br /&gt;
* %DIL&lt;br /&gt;
The  first  four sections may be considered lists of definitions.&lt;br /&gt;
	The reset section can be considered a program in a simple  programming&lt;br /&gt;
	language. And the DIL section is a bit special - it&lt;br /&gt;
	includes the zone templates (DIL functions that can be used from any&lt;br /&gt;
	zone, on anything, as opposed to &amp;quot;specialized&amp;quot; DIL functions placed&lt;br /&gt;
	inside a unit's&lt;br /&gt;
	definitions).  After all sections you are using are defined you&lt;br /&gt;
	must tell the compiler you are done the special symbol '%end'&lt;br /&gt;
	must be placed at the end of the zone for this reason.&lt;br /&gt;
=== Definition types ===&lt;br /&gt;
&lt;br /&gt;
		When creating your zone there are six main building blocks.&lt;br /&gt;
		We call these definition types.  Each type represents some kind of&lt;br /&gt;
		data you want the compiler to be able to recognize.  These data&lt;br /&gt;
		definitions take the basic form:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	field value&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
Where field is the name of a data field, and value is some value.&lt;br /&gt;
		Values are of one of 6 types:&lt;br /&gt;
&lt;br /&gt;
;integer&lt;br /&gt;
: A whole number or if you are in practice of using Hex you can use the C style hex numbers in either upper or lower case (i.e 0X0f3 0x0f3)&lt;br /&gt;
;string&lt;br /&gt;
: Text enclosed in Double Quotes.  The string can span more than one line as it would in a description.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	title &amp;quot;The dark dragon altar&amp;quot;&lt;br /&gt;
	descr&lt;br /&gt;
	&amp;quot;There are many things you can see and there are many things that&lt;br /&gt;
	can't be seen but this is still a description none the less.&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
;stringlist&lt;br /&gt;
: A set of strings, it can be a single string or multiple depending on your needs.&lt;br /&gt;
		These are used in names, extras, creators, and special keywords all to be&lt;br /&gt;
		defined later in their respective places.  These are defined in the following&lt;br /&gt;
		manor.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	&amp;amp;lt;fieldname&amp;amp;gt;    {&amp;quot;string1&amp;quot;,&amp;quot;string2&amp;quot;,&amp;quot;string3&amp;quot;, ...}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
;intlist&lt;br /&gt;
: A list of numbers which can be used with an extra.  This type works like the stringlist but doesn't need the quotes.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	extra {&amp;quot;mynumberlist&amp;quot;} {1,2,3,4,5,6,7,...}&lt;br /&gt;
	&amp;quot;This is a number list attached to an extra&amp;quot;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
;flags&lt;br /&gt;
: Like the Intlist the flag is defined with a list of numbers.  The list of numbers is not taken literally however it is combined to create one number by binary ORing the number list together.  If that confuses you don't worry, it takes some getting used to.  These types are used for Manipulation, flags, and positions.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	flags {2,8}&lt;br /&gt;
	manipulate {8}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
In the previous example the 'flags' value after this zone compiles&lt;br /&gt;
		would be 10 because binary oring the two flags together is a lot&lt;br /&gt;
		like adding.  The two numbers probably make no sense so most flags&lt;br /&gt;
		you use will have defines if I used the defines found in&lt;br /&gt;
		''vme.h'' the previous example would look like this:&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	flags {UNIT_FL_INVISIBILE,UNIT_FL_BURIED}&lt;br /&gt;
	manipulate {WEAR_BODY}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
We will cover this more in-depth later but it was necessary to give&lt;br /&gt;
		a good overview so you understand this field type enough to recognize&lt;br /&gt;
		what it is when you see it.&lt;br /&gt;
;symbol&lt;br /&gt;
: A label you reference from other parts in your zones.  Every unit (room,object,room) and even the zone itself has a unique label that can be referenced.  It is important to make symbol names that are clear so the Administrators of the mud know what each item is when using the online administration commands.&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
	dark_sword /*good symbol*/&lt;br /&gt;
	rm_5892 /*Bad symbol*/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
When loading items online the zone symbol and the item symbol are&lt;br /&gt;
		combined to create a reference to the item.  For example if our zone&lt;br /&gt;
		name was 'dragon' and our item was 'dark_sword' the symbolic name for&lt;br /&gt;
		this item would be 'dark_sword@dragon'.  Using symbols will be&lt;br /&gt;
		covered more in the DIL manual and in the administration manuals for&lt;br /&gt;
		loading objects online.  For now it is enough to understand&lt;br /&gt;
		symbols must follow the following rules when being defined.&lt;br /&gt;
* The first letter of the&lt;br /&gt;
		symbol must be a letter of the alphabet or a '_' character&lt;br /&gt;
* Characters following the first can be numbers, alphabet&lt;br /&gt;
		letters, and '_' characters&lt;br /&gt;
* The name can be no longer than&lt;br /&gt;
		15 characters&lt;br /&gt;
* No reserved keywords can be used as a name&lt;br /&gt;
		(Link to app-b)&lt;br /&gt;
&amp;lt;blockquote style=&amp;quot;background-color: #E8E8E8; font-style: italic; &amp;quot;&amp;gt;the end tag that ends all unit definitions is also considered a symbol it is just a symbol that must be included&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are two other field types that can not be defined as a&lt;br /&gt;
		regular field type.  These are the function reference and the&lt;br /&gt;
		Structure.  The function reference can be either a reference to a&lt;br /&gt;
		DIL function or a special function called from the&lt;br /&gt;
		base code.&lt;br /&gt;
&lt;br /&gt;
		 &amp;lt;blockquote style=&amp;quot;background-color: #E8E8E8; font-style: italic; &amp;quot;&amp;gt;Special functions are being replaced with DIL for better performance and should only be used when no DIL functions exist to replace them&amp;lt;/blockquote&amp;gt;&lt;br /&gt;
&lt;br /&gt;
		The Structure field types are  a combination of other field types&lt;br /&gt;
		to make a special field type for the unit being defined.  A good example&lt;br /&gt;
		of this is a 'exit' for a room.  The exit has everything from flag,&lt;br /&gt;
		string, stringlist, and even description fields.  The exit field will be&lt;br /&gt;
		defined much more in-depth in the chapter on rooms but it is important&lt;br /&gt;
		to know some fields are considered Structure fields because they can have&lt;br /&gt;
		many values.  The only two Structure fields are the exit and extra&lt;br /&gt;
		fields which will both be defined more later because they can be used&lt;br /&gt;
		differently depending on what you are using them for.&lt;/div&gt;</summary>
		<author><name>Nove</name></author>
		
	</entry>
</feed>