diff options
Diffstat (limited to 'doc/overview.htm')
-rw-r--r-- | doc/overview.htm | 881 |
1 files changed, 881 insertions, 0 deletions
diff --git a/doc/overview.htm b/doc/overview.htm new file mode 100644 index 0000000..4e682a8 --- /dev/null +++ b/doc/overview.htm @@ -0,0 +1,881 @@ +<html> + +<head> +<meta http-equiv="Content-Type" +content="text/html; charset=iso-8859-1"> +<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0"> +<title>viDOOM - Free Software DOOM editor</title> +</head> + +<body> + +<h1 align="center">viDOOM Overview</h1> + +<ul> + <li><a href="#INTRODUCTION">Introduction</a></li> + <li><a href="#WHY_BOTHER">Why bother?</a></li> + <li><a href="#SUPPORTED_SYSTEMS">Supported systems</a></li> + <li>Configuration<ul> + <li><a href="#ENVIRONMENT">Environment</a></li> + <li><a href="#VIDOOM_INI">VIDOOM.INI</a></li> + <li><a href="#CONFIG_FILE">Config file</a></li> + </ul> + </li> +</ul> + +<hr> + +<h2><a name="INTRODUCTION"></a>Introduction</h2> + +<p>viDOOM is a Free Software DOOM editor. It supports the +following <a href="http://www.idsoftware.com">id</a> produced +games: </p> + +<ul> + <li>Doom</li> + <li>The Ultimate Doom</li> + <li>Doom 2 - Hell On Earth</li> + <li>Final Doom</li> +</ul> + +<p>Note that in accordance with id software's wishes you are only +allowed to generate edited levels for the game if you have a +full, registered version of the game.</p> + +<p>viDOOM is fully configurable through config files, so it can +be expanded to accommodate the BOOM and ZDOOM extensions. Well, +once I've found out the slight difference in format of WAD file +that seems to accompany them too.</p> + +<hr> + +<h2><a name="WHY_BOTHER"></a>Why bother?</h2> + +<p>Good question. Anyone who has ever used them will know there +are a number of very good DOOM editors available (links to lots +of them can be found at <a href="http://www.doomworld.com">Doomworld</a> +and all good FTP servers). </p> + +<p>However, I always felt a bit clumsy using them, and in true +hacker fashion I decided writing one I could use would be easier +then reading the instructions for the others. Hence viDOOM.</p> + +<p>I reasonably like the way viDOOM works, so I release it on the +off chance other people may too. </p> + +<hr> + +<h2><a name="SUPPORTED_SYSTEMS"></a>Supported systems</h2> + +<p>As with most Free Software viDOOM is primarily distributed as +source code. The source is fairly ANSI C compliant, and therefore +the core of viDOOM should compile on all operating systems. The +current distribution includes the hardware dependent routines for +the following platforms: </p> + +<ul> + <li>Protected-mode 32-bit MSDOS (Windows 9x / MSDOS + DPMI)</li> +</ul> + +<hr> + +<h2><a name="ENVIRONMENT"></a>Environment</h2> + +<p>If defined in the environment, the value of <strong><tt>VIDOOM_DIR</tt></strong> +will be made the current directory as soon as viDOOM starts. This +is important as the following initialisation files are expected +to be in the current directory when viDOOM starts.</p> + +<p><strong>Note:</strong><br> +How this environment is set will differ from system. Basically +viDOOM just calls the C library <tt>getenv()</tt> function. So,. +for instance in a Unix type system this could be:</p> + +<blockquote> + <p><tt>% setenv VIDOOM_DIR $HOME/viDOOM</tt><br> + or<br> + <tt>% export VIDOOM_DIR $HOME/viDOOM</tt></p> +</blockquote> + +<p>Whereas in DOS/DJGPP version this could be:</p> + +<blockquote> + <p><tt>C:\> set VIDOOM_DIR=C:\viDOOM</tt></p> +</blockquote> + +<hr> + +<h2><a name="VIDOOM_INI"></a>Initialisation File - VIDOOM.INI</h2> + +<p>On starting viDOOM will look for a file in the current +directory called <strong>vidoom.ini</strong>. This file tells +viDOOM what version of DOOM it is expected to be editing, the +configuration for that version of DOOM and the editor +configuration. The general format of the INI file is: </p> + +<p><tt>[Section]<br> +identifier=value<br> +</tt></p> + +<p>Blank lines and lines starting with a comment character (#) +are ignored. The following sections and identifiers are explained +below.</p> + +<ul> + <li><a href="#GAME"><tt>[Game]</tt></a></li> + <li><a href="#EDITOR"><tt>[Editor]</tt></a></li> + <li><a href="#viDOOM"><tt>[viDOOM]</tt></a></li> + <li><a href="#CHECK_LINEDEF"><tt>[Check Linedef]</tt></a></li> + <li><a href="#NODE_BUILDER"><tt>[Node Builder]</tt></a></li> + <li><a href="#GUI"><tt>[GUI]</tt></a></li> + <li><a href="#GAME_NAME"><tt>[</tt><em><tt>Game Name</tt></em><tt>]</tt></a></li> +</ul> + +<p>After reading VIDOOM.INI, then a defined <a +href="#CONFIG_FILE">config file</a> is also read.</p> + +<hr size="1"> + +<h3><a name="GAME"></a>[Game]</h3> + +<p>Controls for the version of DOOM</p> + +<table border="1" cellpadding="3"> + <tr> + <td valign="top" nowrap><a name="GAME_TYPE"></a><b><tt>game</tt></b></td> + <td valign="top">Use this to say which version of DOOM + you will be editing. The following values are allowed: <ul> + <li><strong>Doom</strong></li> + <li><strong>Ultimate Doom</strong></li> + <li><strong>Doom 2</strong></li> + <li><strong>TNT: Evilution</strong></li> + <li><strong>Plutonia Experiment</strong></li> + <li><strong>ZDoom</strong></li> + </ul> + </td> + </tr> + <tr> + <td><a name="GAME_ASK"></a><strong>ask</strong></td> + <td>If set to <strong>yes</strong> then on starting + viDOOM will ask for the game type to edit.</td> + </tr> +</table> + +<hr size="1"> + +<h3><a name="EDITOR"></a>[Editor]</h3> + +<p>Global editor configuration</p> + +<table border="1" cellpadding="3"> + <tr> + <td valign="top" nowrap><a name="ASK_MIDDLE_ON_2SIDED"></a><b><tt>ask_middle_on_2sided</tt></b></td> + <td valign="top">When creating a new sector and the + sector has a two-sided boundary asks whether a middle + texture should be asked for. Allowable values <strong>yes</strong> + and <strong>no</strong></td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>auto_block_linedefs</tt></b></td> + <td valign="top">When linedef flags are altered and this + is set to <strong>yes</strong>, linedefs that were + 2-sided and are now 1-sided have the impassible flags + automatically set.<br> + Likewise linedefs that were 1-sided and are now 2-sided + have the impassible flag automatically cleared.<br> + If set to <i>no</i> no action is taken when these events + happen. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>bright</tt></b></td> + <td valign="top">Describes a gamma value applied to any + textures, flats and sprites read in from the DOOM WAD + files. Allowable values are any floating point number.</td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>clear_on_menu</tt></b></td> + <td valign="top">If set to <strong>yes</strong> then once + the pop-up menu has been used to modify the selected + objects they are automatically unselected. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>clear_on_move</tt></b></td> + <td valign="top">If set to <strong>yes</strong> then once + the selected objects have been moved they are + automatically unselected. </td> + </tr> + <tr> + <td valign="top" nowrap><a + name="DEFAULT_SECTOR_LIGHT_ETC"></a><b><tt>default_light_level</tt></b><tt><br> + </tt><b><tt>default_floor_height</tt></b><tt><br> + </tt><b><tt>default_ceiling_height</tt></b></td> + <td valign="top">Describes the default light, floor and + ceiling height for created sectors. Note that if a sector + is created within another sector, the values for that + sector, rather than these defaults, are used.</td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>default_edit_mode</tt></strong></td> + <td valign="top">Defines the default edit mode when + loading a new map into the editor. Possible values are:<ul> + <li><a href="editing.htm#SECTOR_MODE"><strong>sector</strong></a></li> + <li><a href="editing.htm#LINEDEF_MODE"><strong>linedef</strong></a></li> + <li><a href="editing.htm#THING_MODE"><strong>thing</strong></a></li> + <li><a href="editing.htm#VERTEX_MODE"><strong>vertex</strong></a></li> + <li><a href="editing.htm#MULTI_MODE"><strong>multi</strong></a></li> + </ul> + </td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>default_scale</tt></strong></td> + <td valign="top">The starting scale used in the editor.</td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>grid</tt></b></td> + <td valign="top">Use this to say whether the grid will be + shown on screen while editing. Allowable values are <strong>yes</strong> + and <strong>no</strong>. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>grid_lock</tt></b></td> + <td valign="top">Use this to say whether inserted and + moved object in the editor will be snapped on a grid. + Allowable values are <strong>yes</strong> and <strong>no</strong>. + </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>grid_size</tt></b></td> + <td valign="top">Describes the size of the grid used by + the above items. Allowable values are integer values + greater than two.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="HOVER_SELECT"></a><b><tt>hover_select</tt></b></td> + <td valign="top">When editing object in a DOOM level this + alters the way that viDOOM works if the right mouse + button is used over an unselected object. The allowable + values, and their affects are: <ul> + <li><strong>none</strong> - nothing is done. The + right mouse button works as expected.</li> + <li><strong>add</strong> - the object the mouse is + over is added to the selected objects before + displaying the menu.</li> + <li><strong>single</strong> - the object the mouse is + over is made the sole selected object before + displaying the menu.</li> + </ul> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="INSERT_SELECT"></a><b><tt>insert_select</tt></b></td> + <td valign="top">When inserting new objects in a DOOM + level this alters the way that viDOOM selects the objects + after creation. The allowable values, and their affects + are: <ul> + <li><strong>none</strong> - nothing is done. The new + object is left unselected.</li> + <li><strong>add</strong> - the new object is added to + the selected objects.</li> + <li><strong>single</strong> - the new object is made + the sole selected object.</li> + </ul> + </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>linedef_select</tt></b></td> + <td valign="top">Defines who many pixels around a LINEDEF + the bounding box stretches when selecting a line.</td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>merge_linedef</tt></b></td> + <td valign="top">If you overlay vertexes on top of each + other you can merge vertexes. Once these vertexes are + merged checks are made to see whether linedefs share + these vertexes, and hence overlap. This option controls + what happens when these overlapping linedefs are found. + The possible values are: <ul> + <li><strong>always</strong> - always merge the + overlapping linedefs without any prompting.</li> + <li><strong>ask</strong> - confirms with the user + before merging linedefs or not as requested. </li> + <li><strong>never</strong> - never merge overlapping + linedefs. </li> + </ul> + </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>new_2sided_select</tt></b></td> + <td valign="top">When linedefs have there flags set so + that a new left sidedef is added to it controls how the + altered linedefs are selected. Possible values are: <ul> + <li><strong>select</strong> - clears the currently + selected linedefs (if any) and selects the + linedefs that have new double sides.</li> + <li><strong>ask</strong> - confirms with the user. If + the user opts to select the linedefs, the current + selection is cleared and the altered linedefs + selected.</li> + <li><strong>never</strong> - never select the altered + linedefs. Note that a notice is still displayed + so that you know new left sidedefs have been + created.</li> + </ul> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="SECTOR_MOVE"></a><b><tt>sector_move</tt></b></td> + <td valign="top">Defines which linedefs are actually + moved when moving a sector. Possible values are: <ul> + <li><strong>all</strong> - move all linedefs that + border the sector.</li> + <li><strong>right</strong> - move only linedefs that + have this sector to their right.</li> + <li><strong>left</strong> - move only linedefs that + have this sector to their left.</li> + </ul> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="SHOW_FULL_LINEDEF_INFO"></a><strong><tt>show_full_linedef_info</tt></strong></td> + <td valign="top">If set to <strong>yes</strong> then in + the <a href="editing.htm#LINEDEF_DISPLAY">linedef edit + display</a> the linedef type will be shown as the full + linedef name as defined in the <a href="#LINEDEF_TYPES">config + file</a>. If set to <strong>no</strong> then linedef type + will be displayed as a hex value and it's class.</td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>tag_highlight</tt></strong></td> + <td valign="top">If set to <strong>yes</strong> then the + tag highlighting mode is enabled by default in sector and + linedef modes.</td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>vertex_radius</tt></b></td> + <td valign="top">Describes the size of the box around a + VERTEX which is used to select the VERTEX while editing. + Recommended values are any integer greater than four.</td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>width</tt></b><tt><br> + </tt><b><tt>height</tt></b></td> + <td valign="top">Describes the size of the display used + by viDOOM. viDOOM expects a resolution of at least + 640x480.</td> + </tr> +</table> + +<hr size="1"> + +<h3><a href="#CONFIG_FILE" name="viDOOM"></a>[viDOOM]</h3> + +<p>Main menu configuration</p> + +<table border="1" cellpadding="3"> + <tr> + <td valign="top" nowrap><b><tt>initial_empty_map</tt></b></td> + <td valign="top">If set to <strong>yes</strong> then on + startup viDOOM will have an empty map, either MAP01 or + E1M1, ready for editing.</td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>load_flats</tt></b></td> + <td valign="top">If set to <b>yes</b> then the graphics + for the flats will be loaded so they can be selected + graphically. If set to <b>no</b> then flats are selected + just using their name. <br> + This is provided as the graphics reading is not very + efficient and can be slow on certain machines. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>load_textures</tt></b></td> + <td valign="top">If set to <b>yes</b> then the graphics + for the textures will be loaded so they can be selected + graphically. If set to <b>no</b> then textures are + selected just using their name. <br> + This is provided as the graphics reading is not very + efficient and can be slow on certain machines. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>load_sprites</tt></b></td> + <td valign="top">If set to <b>yes</b> then the graphics + for the things will be loaded so they can be selected + graphically. If set to <b>no</b> then things are selected + just using their name. <br> + This is provided as the graphics reading is not very + efficient and can be slow on certain machines. </td> + </tr> + <tr> + <td valign="top" nowrap><a name="MAP_CLEAR"></a><b><tt>map_clear_warning</tt></b></td> + <td valign="top">If set to <b>yes</b> then a warning is + displayed whenever an option is chosen that will replace + the currently edited map with another, if the editor has + been used since the level's loading/creation. </td> + </tr> + <tr> + <td valign="top" nowrap><a name="MAP_EXIT"></a><b><tt>map_exit_warning</tt></b></td> + <td valign="top">If set to <b>yes</b> then a warning is + displayed if exit is chosen and the editor option has + been used. </td> + </tr> + <tr> + <td valign="top" nowrap><a name="OVERWRITE_WARNING"></a><b><tt>overwrite_warning</tt></b></td> + <td valign="top">If set to <b>yes</b> then a warning is + displayed if you save a map over a file that already + exists. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>show_titlepic</tt></b></td> + <td valign="top">If set to <b>yes</b> then the title + picture for the version of DOOM you are editing will be + displayed on the main title screen. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>sort_flat_names</tt></b></td> + <td valign="top">If set to <b>yes</b> then when selecting + ceiling or floor flats they will be sorted into + alphabetical order. If set to <b>no</b> they are simply + in the order they appear in the IWAD file. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>sort_texture_names</tt></b></td> + <td valign="top">If set to <b>yes</b> then when selecting + wall textures they will be sorted into alphabetical + order. If set to <b>no</b> they are simply in the order + they appear in the IWAD file. </td> + </tr> +</table> + +<hr size="1"> + +<h3><a name="CHECK_LINEDEF"></a><strong>[Check LINEDEF]</strong></h3> + +<p>This defines how the <strong>Check LINEDEF</strong> function +in the editor (see <a href="editing.htm#LINEDEF_KEYS">editing</a> +for details) operates. Note that part of the configuration for +this command also occurs in the <a href="#LINEDEF_CHECK_DEFAULT">config +file</a>. This is required as texture names can be different in +different versions of DOOM. The following options are definable +within the INI file:</p> + +<table border="1" cellpadding="3"> + <tr> + <td valign="top" nowrap><strong><tt>assume_yes</tt></strong></td> + <td valign="top">If this is set to <strong>yes</strong> + then any time a question would be asked to see if it's OK + to remove a texture that viDOOM considers unnecessary + then it will be removed without asking. Likewise when + asking to add missing textures the texture picklist will + appear (with the linedef number and what is to be set in + the title) without any prompting.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="CHECK_LINE_1SIDE_LOWER"></a><strong><tt>check_1side_lower</tt></strong></td> + <td valign="top">If set to <strong>yes</strong> then when + a sidedef is attached to a one-sided linedef and there is + a lower texture defined viDOOM will ask if it's OK to + remove it.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="CHECK_LINE_1SIDE_MIDDLE"></a><strong><tt>check_1side_middle</tt></strong></td> + <td valign="top">If set to <strong>yes</strong> then when + a sidedef is attached to a one-sided linedef and there is + no middle texture defined viDOOM will ask if it's OK to + define it.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="CHECK_LINE_1SIDE_UPPER"></a><strong><tt>check_1side_upper</tt></strong></td> + <td valign="top">If set to <strong>yes</strong> then when + a sidedef is attached to a one-sided linedef and there is + an upper texture defined viDOOM will ask if it's OK to + remove it.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="CHECK_LINE_2SIDE_LOWER"></a><strong><tt>check_2side_lower</tt></strong></td> + <td valign="top">If set to <strong>yes</strong> then when + a sidedef is attached to a two-sided linedef which is + between two sectors with different floor heights and + there is no lower texture defined viDOOM will ask if it's + OK to define it.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="CHECK_LINE_2SIDE_MIDDLE"></a><strong><tt>check_2side_middle</tt></strong></td> + <td valign="top">If set to <strong>yes</strong> then when + a sidedef is attached to a two-sided linedef which is + between two sectors and there is a middle texture defined + viDOOM will ask if it's OK to remove it.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="CHECK_LINE_2SIDE_UPPER"></a><strong><tt>check_2side_upper</tt></strong></td> + <td valign="top">If set to <strong>yes</strong> then when + a sidedef is attached to a two-sided linedef which is + between two sectors with different ceiling heights and + there is no upper texture defined viDOOM will ask if it's + OK to define it.</td> + </tr> + <tr> + <td valign="top" nowrap><a + name="CHECK_LINE_2SIDE_SAME_SECTOR"></a><strong><tt>check_2side_same_sector</tt></strong></td> + <td valign="top">If set to <strong>yes</strong> then when + a sidedef is attached to a two-sided linedef which is + wholly within one sector and there are any textures + defined viDOOM will ask if it's OK to remove them.</td> + </tr> +</table> + +<hr size="1"> + +<h3><a name="NODE_BUILDER"></a>[Node Builder]</h3> + +<p>Node Builder configuration - used to build nodes for maps +automatically when saving.</p> + +<table border="1" cellpadding="3"> + <tr> + <td valign="top" nowrap><b><tt>always_view_output</tt></b></td> + <td valign="top">Normally viDOOM will only show the + output from the build command if it fails for some + reason. Setting this to <strong>yes</strong> means any + output from the node builder will be displayed + regardless.</td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>command</tt></b></td> + <td valign="top">Defines the command used to execute the + node builder. e.g.<p><tt>command=c:\bsp\bsp.exe</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>ignore</tt></strong></td> + <td valign="top">If set, then any saved filename that + includes this string will not be passed through the node + builder. This is useful so that structures for merging + into other maps (see <a href="editing.htm#MERGE_MAP">editing</a> + for details) need not be put through the node building + process. e.g. if set to<p><tt>ignore=str</tt></p> + <p>Then saving a map named <strong>MAP01.WAD</strong> + will be passed through the node builder, whereas <strong>WALL_STRUCT.WAD</strong> + would not be.</p> + <p>Another important use for this is to leave a back door + where you can save a WAD without it being passed through + the node builder if anything goes wrong with trying to + build the map.</p> + </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>infile</tt></b></td> + <td valign="top">Defines the format for the infile + parameter to the node builder. Any occurrence of the '%' + character will be replaced with the full path of the map + being saved. e.g.<p><tt>infile=%</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>outfile</tt></b></td> + <td valign="top">Defines the format for the outfile + parameter to the node builder. Any occurrence of the '%' + character will be replaced with the full path of the map + being saved. e.g.<p><tt>outfile=-o %</tt></p> + <p>Note that if your node builder does not allow the + input and output file to be the same then it is + permissible to put extra characters <strong>after</strong> + the % that will get tacked onto the end of the name, e.g.</p> + <p><tt>outfile=-o %_NEW</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>in_before_out</tt></b></td> + <td valign="top">Defines the order of the the arguments + to the node builder. If set to <strong>yes</strong> then + the node builder is invoked as:<p><tt>command infile + outfile</tt></p> + <p>If set to <strong>no</strong> then the command is + built as:</p> + <p><tt>command outfile infile</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>use</tt></b></td> + <td valign="top">If set to <strong>yes</strong> then the + node builder described above is used on any maps being + saved. If set to <strong>no</strong> then the map is + saved and the nodes must be built outside of viDOOM.</td> + </tr> +</table> + +<hr size="1"> + +<h3><a name="GUI"></a>[GUI]</h3> + +<p>GUI configuration. All the values in this section are an RGB +triplet defined as an hex number, i.e. <tt>0xRRGGBB</tt>. The +following values can be set from the INI file.</p> + +<table border="1" cellpadding="3"> + <tr> + <td valign="top" nowrap><strong><tt>gui_hi</tt></strong></td> + <td valign="top">The brightest colour used to draw the 3D + looking interface.</td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>gui_mid</tt></strong></td> + <td valign="top">The medium colour used to draw the 3D + looking interface.</td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>gui_lo</tt></strong></td> + <td valign="top">The darkest colour used to draw the 3D + looking interface.</td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>gui_text</tt></strong></td> + <td valign="top">The colour of text.</td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>gui_textshadow</tt></strong></td> + <td valign="top">The colour of the shadow behind text. + This is only really used by viDOOM's own portable GUI + routines. If set to the same value as <strong>text</strong> + then no shadows are drawn.</td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>gui_bold</tt></strong></td> + <td valign="top">The colour of bold text (used for + titles)</td> + </tr> +</table> + +<hr size="1"> + +<h3><a name="GAME_NAME"></a>[<i>Game name</i>]</h3> + +<p>One of these sections appears for each possible setting of the +game variable in the [Game] section. These are:</p> + +<ul> + <li><tt>[Doom]</tt></li> + <li><tt>[Ultimate Doom]</tt></li> + <li><tt>[Doom 2]</tt></li> + <li><tt>[TNT:Evilution]</tt></li> + <li><tt>[Plutonia Experiment]</tt></li> + <li><tt>[ZDoom]</tt></li> +</ul> + +<table border="1" cellpadding="3"> + <tr> + <td valign="top" nowrap><b><tt>iwad</tt></b></td> + <td valign="top">Defines the path to the IWAD for this + game. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>pwad_dir</tt></b></td> + <td valign="top">Defines the default load/save directory + for editing PWAD files. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>level_style</tt></b></td> + <td valign="top">Defines the level naming convention for + the game. Allowable values are: <ul> + <li><b>Doom</b> - allows level names E1M1 to E3M9</li> + <li><b>Ultimate Doom</b> - allows level names E1M1 to + E4M9</li> + <li><b>Doom 2</b> - allows level names MAP01 to MAP32</li> + </ul> + </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>preload</tt></b></td> + <td valign="top">Lists a number of PWAD files to preload + on startup. PWAD files are separated by ; and the full + path is expected. </td> + </tr> + <tr> + <td valign="top" nowrap><b><tt>vidoom_config</tt></b></td> + <td valign="top">Defines the <a href="#CONFIG_FILE">config + file</a> for this version of DOOM. This defines the + values used for defining things, linedefs, sectors and so + on. <br> + viDOOM is currently supplied with <b>doom.cfg</b> and <b>doom2.cfg</b>. + <br> + It is planned to soon include a <b>zdoom.cfg</b> so that + ZDOOM/BOOM special features can be added to levels.</td> + </tr> +</table> + +<hr> + +<h2><a name="CONFIG_FILE"></a>Config file</h2> + +<p>There is two config files supplied with viDOOM, <strong>doom.cfg</strong> +and <strong>doom2.cfg</strong>. Each file is comprised of +sections followed by the data expected in each section. Each +section is defined by a line like:</p> + +<p><tt>%SECTION_NAME</tt></p> + +<p>While the data lines are on individual lines with the pipe (|) +character used to separate fields, e.g.</p> + +<p><tt>Field 1|Field 2</tt></p> + +<p>Blank lines and lines starting with a comment character (#) +are ignored. The following sections are defined:</p> + +<table border="1" cellpadding="3"> + <tr> + <td valign="top" nowrap><strong><tt>%INCLUDE_FILES</tt></strong></td> + <td valign="top">Defines any other config files to + include before processing this one. Simply type the + filenames to be included on individual lines.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="THING_CLASSES"></a><strong><tt>%THING_CLASSES</tt></strong></td> + <td valign="top">Defines the classes to group THINGs into + in the editor picklists. Each line is in the form + "Class Name|Colour". Note that colour is + defined as an hexadecimal number with the most + significant byte for RED, the middle byte for BLUE and + the least significant byte for GREEN. e.g.<p><tt>Monster|0xff0000</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="LINEDEF_CLASSES"></a><strong><tt>%LINEDEF_CLASSES</tt></strong></td> + <td valign="top">Defines the classes to group LINEDEF + types into in the editor picklists. Each line is a class + name.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="SECTOR_CLASSES"></a><strong><tt>%SECTOR_CLASSES</tt></strong></td> + <td valign="top">Defines the classes to group SECTOR + types into in the editor picklists. Each line is a class + name.</td> + </tr> + <tr> + <td valign="top" nowrap><a name="THING_TYPES"></a><strong><tt>%THING_TYPES</tt></strong></td> + <td valign="top">Defines the names and IDs of the THINGs + supported by DOOM. Each line is in the form + "Class|Name|ID|Radius|Sprite Name". e.g.<p><tt>Monster|Former + Human|3004|20|POSSA1</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="THING_FLAGS"></a><strong><tt>%THING_FLAGS</tt></strong></td> + <td valign="top">Defines the flags used when defining + THINGs. Each line is in the form "Bit + Number|Name|Shorthand Name". e.g.<p><tt>0|Skill 1 + and 2|Sk 1/2</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="LINEDEF_TYPES"></a><strong><tt>%LINEDEF_TYPES</tt></strong></td> + <td valign="top">Defines the names and IDs of the LINEDEF + types supported by DOOM. Each line is in the form + "Class|ID|Name", e.g.<p><tt>Special|48|Scrolling + wall </tt></p> + <p><strong>Note:</strong> Please note that the text for + the LINEDEF types in the supplied config files is taken + directly from the Unofficial Doom Specs (see the <a + href="thanks.htm#DOOMSPEC">thanks</a> page for details).</p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="LINEDEF_FLAGS"></a><strong><tt>%LINEDEF_FLAGS</tt></strong></td> + <td valign="top">Defines the flags used when defining + LINEDEFs. Each line is in the form "Bit + Number|Name|Shorthand Character". e.g.<p><tt>0|Impassible|I</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><strong><tt>%LINEDEF_FLAGS_EXTRA</tt></strong></td> + <td valign="top">Configuration so that viDOOM knows which + bits control certain functions. If more that one line + appears in this section then the last one is used. The + form of the line is "Bit number controlling + 2-sided|Bit controlling Impassible|Bit controlling lower + unpegged|Bit controlling upper unpegged". e.g.<p><tt>2|0|3|4</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="LINEDEF_DEFAULTS"></a><strong><tt>%LINEDEF_DEFAULTS</tt></strong></td> + <td valign="top">This section must not appear before + %LINEDEF_FLAGS_EXTRA and defines the bit patterns for + various linedef styles. These are used in the editor so + that defining a type of LINEDEF can be quickly done when + creating them. The format of each line is + "Name|Flags value", e.g.<p><tt>2-sided + wall|0x47</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="SECTOR_TYPES"></a><strong><tt>%SECTOR_TYPES</tt></strong></td> + <td valign="top">Defines the names and IDs for the + different sector types. Each line is in the form + "Class|ID|Long name|Short name". e.g.<p><tt>Damage/Lights|4|Lose + -10/20% health & blink lights 0.5 sec|-10/20% & + 0.5 blink</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="SECTOR_STYLES"></a><strong><tt>%SECTOR_STYLES</tt></strong></td> + <td valign="top">Defines styles for painting sectors + quickly. The form of each line is + "Mode|Name|Upper|Middle|Lower|Floor|Ceiling". + e.g.<p><tt>0x19|Quarry|SP_ROCK1|SP_ROCK1|SP_ROCK1|RROCK09|F_SKY1</tt></p> + <p>The mode is a bit significant number where the bits + have the following meaning:</p> + <ul> + <li>Bit 0 - Paint textures on the sidedefs facing + into this sector</li> + <li>Bit 1 - Paint textures on the sidedefs facing out + of this sector</li> + <li>Bit 2 - Leave current lower/upper settings</li> + <li>Bit 3 - Set upper unpegged if an upper texture is + painted</li> + <li>Bit 4 - Set lower unpegged if a lower texture is + painted</li> + </ul> + <p>If neither bits 2, 3 or 4 are set it is assumed that + lower/upper unpegged will be cleared on painting those + textures.</p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="EMPTY_TEXTURE_NAME"></a><strong><tt>%EMPTY_TEXTURE_NAME</tt></strong></td> + <td valign="top">Simply defines the empty texture name + used by DOOM. This will generally just be the - + character, e.g.<p><tt>%EMPTY_TEXTURE_NAME<br> + -</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="NORMAL_TYPES"></a><strong><tt>%NORMAL_TYPES</tt></strong></td> + <td valign="top">Defines the values that define the + normal linedefs and sectors. The form of the single line + of data is "Id for normal linedef|Id for normal + sector". In all current versions of Doom this is + zero, e.g.<p><tt>%NORMAL_TYPES<br> + 0|0</tt></p> + </td> + </tr> + <tr> + <td valign="top" nowrap><a name="LINEDEF_CHECK_DEFAULT"></a><strong><tt>%LINEDEF_CHECK_DEFAULT</tt></strong></td> + <td valign="top">Provides an optional default texture to + use when a texture is requested when checking linedefs. + If this value is defined to be the same as + EMPTY_TEXTURE_NAME then the user is prompted for a + texture to use, otherwise this texture is used instead, + e.g.<p><tt>%LINEDEF_CHECK_DEFAULT<br> + ASHWALL</tt></p> + <p>See <a href="editing.htm#LINEDEF_KEYS">editing</a> for + details on the check linedef operation.</p> + </td> + </tr> +</table> + +<hr> + +<p><a href="index.htm">Back to index</a></p> + +<p><tt>$Id: overview.htm,v 1.9 2000/08/13 00:35:59 dosuser Exp dosuser $ </tt></p> +</body> +</html> |