<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://3dfxdev.net/edgewiki/index.php?action=history&amp;feed=atom&amp;title=UDS_Errata</id>
		<title>UDS Errata - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://3dfxdev.net/edgewiki/index.php?action=history&amp;feed=atom&amp;title=UDS_Errata"/>
		<link rel="alternate" type="text/html" href="https://3dfxdev.net/edgewiki/index.php?title=UDS_Errata&amp;action=history"/>
		<updated>2026-06-06T16:30:10Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.27.0</generator>

	<entry>
		<id>https://3dfxdev.net/edgewiki/index.php?title=UDS_Errata&amp;diff=279&amp;oldid=prev</id>
		<title>Corbin: created UDS Errata</title>
		<link rel="alternate" type="text/html" href="https://3dfxdev.net/edgewiki/index.php?title=UDS_Errata&amp;diff=279&amp;oldid=prev"/>
				<updated>2015-06-08T22:38:30Z</updated>
		
		<summary type="html">&lt;p&gt;created UDS Errata&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;div class=&amp;quot;content&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Errata for Unofficial Doom Specs ==&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
 Preliminary Draft of UDS 1.666 Errors.                    r0.02, 20.08.1995&lt;br /&gt;
 &lt;br /&gt;
 ===========================================================================&lt;br /&gt;
 UDS errors:&lt;br /&gt;
 &lt;br /&gt;
 ---------------------------------------------------------------------------&lt;br /&gt;
 From Robert Fenske, Jr. (rfenske@swri.edu), 1995:&lt;br /&gt;
 &lt;br /&gt;
 - line types 105 and 111 descriptions are switched&lt;br /&gt;
 &lt;br /&gt;
 - only the cycling crushing line types lock out further sector actions&lt;br /&gt;
 	(just mentioned by Steve Benner)&lt;br /&gt;
 &lt;br /&gt;
 - creatures will not attack through 2-sided lines that do not have&lt;br /&gt;
 	the 2S bit set; they did in v1.2 but do not in v1.666 or higher&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 ----------------------------------------------------------------------------&lt;br /&gt;
 From S.Benner@lancaster.ac.uk (Steve Benner), 1995:&lt;br /&gt;
 &lt;br /&gt;
 - Linetype 4 (W1: Door open &amp;amp;amp; close) can be activated by monsters&lt;br /&gt;
   as well as players;&lt;br /&gt;
 &lt;br /&gt;
 - Linetype 46 (GR: Door open) DOES require tagging: it can be used&lt;br /&gt;
   on any line, as remote from the door sector as you like. Only&lt;br /&gt;
   fist, chainsaw, bullets and shotgun shells activate this trigger;&lt;br /&gt;
   plasma and rockets have no effect. Bullets and shot from monsters&lt;br /&gt;
   will activate it, so this is a kinda monster-activated trigger;&lt;br /&gt;
 &lt;br /&gt;
 - The CLUNK sound attributed to certain linetypes in the UDS is not&lt;br /&gt;
   a function of the linetype in use. It only occurs if a SW_ texture is&lt;br /&gt;
   in use on an Sx active linetype and sounds in addition to the&lt;br /&gt;
   sound of the linetype action;&lt;br /&gt;
 &lt;br /&gt;
 - Linetype 141 is termed a silent crusher in the UDS. This crusher travels&lt;br /&gt;
   silently but makes a CLUNK at each end of its travel;&lt;br /&gt;
 &lt;br /&gt;
 - All self-building stairs have the crush characteristic,&lt;br /&gt;
   not just 8-unit ones;&lt;br /&gt;
 &lt;br /&gt;
 - Linetypes 56, 94, 55 &amp;amp;amp; 65 (Floor up to LIC-8, CRUSH) do not lock out&lt;br /&gt;
   further actions, unless something gets caught in them *and* does not get&lt;br /&gt;
   killed. Only lesser monsters are killed by this crusher, so if anything&lt;br /&gt;
   above a Demon gets caught in them, it will be held forever. I suspect&lt;br /&gt;
   this is a bug: if you activate a release trigger, you can hear DOOM moving&lt;br /&gt;
   the floor forever!&lt;br /&gt;
 &lt;br /&gt;
 - Linetypes that move floors up by Short textures seem to move the floors&lt;br /&gt;
   by 96 (or is it 78?) units if there is no short texture in use. Can anyone&lt;br /&gt;
   confirm the way these work?&lt;br /&gt;
 &lt;br /&gt;
 ----------------------------------------------------------------------------&lt;br /&gt;
 NEW  From S.Benner@lancaster.ac.uk (Steve Benner), Aug 15 1995:&lt;br /&gt;
 &lt;br /&gt;
 - LINETYPE 49 in v1.2 this line was S1: lower ceiling to floor 8, no crush;&lt;br /&gt;
   its function changed in v1.666 (and above) to S1: start/resume slow crusher&lt;br /&gt;
 &lt;br /&gt;
 - LINETYPE 78 &amp;amp;amp; 85 : No operation.&lt;br /&gt;
   I can't get these to do anything under any circumstances. Which is odd,&lt;br /&gt;
   'cos I'm sure I once did. If anyone has any *different* info on these&lt;br /&gt;
   (from EXPERIENCE, that is, not just from reading it somewhere) can they&lt;br /&gt;
   let me (S.Benner@lancaster.ac.uk)  know urgently please.  Thanks.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 ============================================================================&lt;br /&gt;
 UDS lacks:&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 ----------------------------------------------------------------------------&lt;br /&gt;
 From S.Benner@lancaster.ac.uk (Steve Benner), 1995:&lt;br /&gt;
 &lt;br /&gt;
 Different linetype actions behave differently in multi-sector groupings.&lt;br /&gt;
 Mostly multi-sector groupings behave independently of any grouping. Grouped&lt;br /&gt;
 floor movements, for example, will all calculate their movement end points&lt;br /&gt;
 irrespective of any other movements that will occur at the same time. There&lt;br /&gt;
 are two exceptions to this rule of independance:-&lt;br /&gt;
 &lt;br /&gt;
 1. Lighting level changes.&lt;br /&gt;
   The linetypes that switch lights to &amp;quot;brightest adjacent&amp;quot; or &amp;quot;dimmest&lt;br /&gt;
 adjacent&amp;quot; are sensitive to sector groupings. If you tag more than one&lt;br /&gt;
 sector to such a trigger, DOOM will look to find the *lowest numbered&lt;br /&gt;
 sector* of the group. It is this sector's neighbours that will be examined&lt;br /&gt;
 to determine the light level to switch *all* of the tagged sectors to. This&lt;br /&gt;
 explainns why sometimes this action appears to have no effect.&lt;br /&gt;
 &lt;br /&gt;
 2. Slow crushers&lt;br /&gt;
   Slow crushers calculate their travel independantly if any other crusher&lt;br /&gt;
 in a crusher chain, but their downward speed of movement can be affected by&lt;br /&gt;
 anything which gets caught in them. Any slowing of one crusher in a chain&lt;br /&gt;
 (where by &amp;quot;chain&amp;quot; I mean any crushers moving together operating from one&lt;br /&gt;
 trigger) can be passed to any other crusher engaged in downward travel at&lt;br /&gt;
 that time. This effect seems to occur at random (unpredicatably, anyway: I&lt;br /&gt;
 suspect that nothing is random in DOOM, otherwise LMPs wouldn't work).&lt;br /&gt;
 NOTE: I have not checked to see whether this effect only happens amongst&lt;br /&gt;
 crushers which are truly linked through their tag numbers, or whether it&lt;br /&gt;
 applies to all crushers in motion at any instance: any takers to check that&lt;br /&gt;
 out?&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 -------------------------------------------------------------------------&lt;br /&gt;
 From a13231@mindlink.bc.ca (drake o'brien), 1995:&lt;br /&gt;
 &lt;br /&gt;
 Well, I don't know anything that doesn't come straight out of the UDS by&lt;br /&gt;
 Matt Fell.  The procedure in the UDS is a bit hard to follow if you go at&lt;br /&gt;
 it linedef by linedef, sector by sector, finding the lowest-numbered&lt;br /&gt;
 2-sided linedef whose right side faces each succeeding sector.&lt;br /&gt;
 AAAUUUGGGHH.  But you should be able to make rising steps of any shape if&lt;br /&gt;
 you follow these rules:&lt;br /&gt;
 &lt;br /&gt;
 1.  Make sure all stair sectors have same floor texture.&lt;br /&gt;
 2.  Flip all perimeter linedefs so the 1st sidedef (right sidedef) faces&lt;br /&gt;
 OUT (except when perimeter linedef is 1-sided, of course).&lt;br /&gt;
 3.  The remaining linedefs separate the rising stairs.  Flip all these so&lt;br /&gt;
 the 2nd sidedefs face in the direction you want the stairs to rise.&lt;br /&gt;
 &lt;br /&gt;
 Simple as that.&lt;br /&gt;
 If you follow these rules then you follow the rules of the UDS.  Well, I&lt;br /&gt;
 don't pretend to be exhaustive, I might have missed an item meantioned in&lt;br /&gt;
 the UDS.  But rules 2 &amp;amp;amp; 3 cover the UDS on the 'lowest right-sided&lt;br /&gt;
 linedef' issue by a simple process of eliminating other possibilities.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 -------------------------------------------------------------------------&lt;br /&gt;
 From a13231@mindlink.bc.ca (drake o'brien), 1995:&lt;br /&gt;
 &lt;br /&gt;
 My tests have shown that necessary &amp;amp;amp; sufficient conditions for medusa &amp;amp;amp;&lt;br /&gt;
 doom-error free textures on a visible normal sidedef of a 2-sided linedef&lt;br /&gt;
 are:&lt;br /&gt;
 1.  no void columns&lt;br /&gt;
 2.  no 2 patches can share a line segment on the x-axis.&lt;br /&gt;
 &lt;br /&gt;
 I threw in condition 1 because it has to hold for any texture to be&lt;br /&gt;
 doom-error free, because otherwise we get &amp;quot;generate lookup, column&lt;br /&gt;
 without a patch&amp;quot; ugliness at startup.  So I would call any texture for&lt;br /&gt;
 which these conditions hold 'transparent'.  Condition 2 must necessarily&lt;br /&gt;
 hold, even when one of the patches in question is nothing but 100% pure&lt;br /&gt;
 cyan.&lt;br /&gt;
 &lt;br /&gt;
 I have found that in defining a transparent texture, whatever y-offset we&lt;br /&gt;
 might set the pointer to a patch at in deutex's texture1.txt file, doom&lt;br /&gt;
 will ignore  that value and play the patch as if we had defined the&lt;br /&gt;
 y-offset to be 0.  (note:  here I'm talking about the co-ordinates of the&lt;br /&gt;
 patch in the texture definition, *not* about the y-offset given the&lt;br /&gt;
 texture itself when applied using a level editor)&lt;br /&gt;
 &lt;br /&gt;
 I have found that when playing a transparent texture on a 2-sided linedef&lt;br /&gt;
 doom will tile the texture once and once only.  When no flag is set doom&lt;br /&gt;
 will tile each patch in the texture down once from the ceiling.  When the&lt;br /&gt;
 below unpegged flag is set doom will tile each *patch* in the texture&lt;br /&gt;
 down once from the height given the texture in texture1.txt.  For&lt;br /&gt;
 example,&lt;br /&gt;
 &lt;br /&gt;
 TRANSP    256     128&lt;br /&gt;
 *      PATCH1    0      0&lt;br /&gt;
 *      PATCH2    64     32&lt;br /&gt;
 *      PATCH3    196    64&lt;br /&gt;
 &lt;br /&gt;
 where patch1.bmp is 64x42, patch2.bmp is 128x32, patch3.bmp is 64x8,&lt;br /&gt;
 satisfies the conditions for a transparent texture.  If applied with&lt;br /&gt;
 y-offset for the texture set at default 0 and with the lower unpegged&lt;br /&gt;
 flag set then all three patches will tile down once and once only from&lt;br /&gt;
 128 pixels above the floor.&lt;br /&gt;
 &lt;br /&gt;
 Now suppose there's no cyan in the bitmaps.  Applied to the normal wall&lt;br /&gt;
 of a 1-sided linedef something quite different occurs.  I expected a lot&lt;br /&gt;
 of tutti-frutti since there are huge void spaces in the texture&lt;br /&gt;
 definition.  But in fact I found that in this case doom tiled each patch&lt;br /&gt;
 down from the top of the texture and kept tiling until it hit bottom, and&lt;br /&gt;
 of course on a 1-sided linedef doom tiles from ceiling to floor however&lt;br /&gt;
 large the space to be filled is.  The tiling over the voids wasn't&lt;br /&gt;
 perfect.  There was a 1 pixel line of tutti-frutti between the tiles.&lt;br /&gt;
 &lt;br /&gt;
 -------------------------------------------------------------------------&lt;br /&gt;
 NEW From: Raphael Quinet, 14 Jun 95&lt;br /&gt;
 (a couple of news postings from Rapahel Quinet, Frans P. de Vries,&lt;br /&gt;
 and Deagol (smclean2@warp10.smartlink.net), which I merged w/o keeping&lt;br /&gt;
 track of who said what).&lt;br /&gt;
 &lt;br /&gt;
 Found an interesting 'cheat' code for heretic.. its really a sound&lt;br /&gt;
 debugger, but Its interesting nonetheless.. type 'noise' and a&lt;br /&gt;
 sound debugger will come on the screen.&lt;br /&gt;
 &lt;br /&gt;
 The table header is:  NAME   MO.T   MO.X   MO.Y   ID   PRI   DIST&lt;br /&gt;
 &lt;br /&gt;
 *NAME = the name of the sound effect, one from 'gldhit' through 'amb11'&lt;br /&gt;
         contained near the end of the .exe, 141 effects in all (anyone care&lt;br /&gt;
         to make an annotated list? :)&lt;br /&gt;
 *ID   = identifying number &amp;amp;lt;duh&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Each sound has a number associated to it, like in Doom.  These&lt;br /&gt;
 numbers are also used by the sndserver in UNIX ports of Doom.  Doing a&lt;br /&gt;
 &amp;quot;strings&amp;quot; or &amp;quot;od -s6&amp;quot; on the sndserver shows the list of sounds.&lt;br /&gt;
 &lt;br /&gt;
 *PRI  = priority.  Given that only a limited number of sound effects can&lt;br /&gt;
 be played simultaneously (usually 3 or 4), there has to be a priority&lt;br /&gt;
 associated to them so that only the important ones are played when the&lt;br /&gt;
 a sound channels are full.&lt;br /&gt;
 &lt;br /&gt;
 The ambient sounds (wind, laughter, steps,...) have a low priority (1 to 80)&lt;br /&gt;
 and the &amp;quot;attack&amp;quot; sounds have a high priority (320).  Thinking of it, I&lt;br /&gt;
 suspect that the sound priority was the last unknown field in the sndserver&lt;br /&gt;
 commands (see the articles that I posted here two weeks ago).&lt;br /&gt;
 &lt;br /&gt;
 *DIST = distance (obviously), 0 is at the players position&lt;br /&gt;
 &lt;br /&gt;
 You will notice that the ambient sounds are always played at the&lt;br /&gt;
 player's position (distance = 0, coordinates = player's coordinates).&lt;br /&gt;
 This is interesting, because the sounds are actually activated by&lt;br /&gt;
 special &amp;quot;sound things&amp;quot; that can be far away from the player.&lt;br /&gt;
 &lt;br /&gt;
 *MO.T, MO.X, MO.Y = MO.X and MO.Y show the coordinates of the source of the sound.&lt;br /&gt;
 These are the coordinates of the Thing which created the sound, with two exceptions:&lt;br /&gt;
 &lt;br /&gt;
 - the ambient sounds, as explained above (always at the player's position)&lt;br /&gt;
 - the doors and lifts.  In that case, the coordinates are the ones of the&lt;br /&gt;
   center of the sector which was activated.  It's interesting to see how&lt;br /&gt;
   the center is computed: create a WAD with doors of various shapes and&lt;br /&gt;
   sizes (even with more than two sides) and see what you get.&lt;br /&gt;
 &lt;br /&gt;
 MO.T represents the type of the Thing which created the sound (0 for doors).&lt;br /&gt;
 But I'm not sure about the mapping to the Thing numbers in the WAD file.&lt;br /&gt;
 Here are a few examples:&lt;br /&gt;
 &lt;br /&gt;
 Name                   Thing Type  (WAD file)    MO.T (sound debug)&lt;br /&gt;
 Player 1                     1                        97&lt;br /&gt;
 Player main arrow            ?                        91&lt;br /&gt;
 Player secondary arrows      ?                        93&lt;br /&gt;
 Phoenix rod shot             ?                        86&lt;br /&gt;
 Morph ovum (pick up)       (30)                       10&lt;br /&gt;
 Time bomb (pick up)        (34)                       14&lt;br /&gt;
 Time bomb explosion          ?                        15&lt;br /&gt;
 Golem                       68                       102&lt;br /&gt;
 Golem ghost                 69                       104&lt;br /&gt;
 Golem leader                45                       103&lt;br /&gt;
 Golem leader projectile      ?                       107&lt;br /&gt;
 Flying gargoyle             66                       124&lt;br /&gt;
 Flying gargoyle leader       5                       125&lt;br /&gt;
 Sabreclaw                   90                       121&lt;br /&gt;
 Ophidian                    92                       113&lt;br /&gt;
 Maulotor                     9                       140&lt;br /&gt;
 Maulotor shots               ?                       141&lt;br /&gt;
 Maulotor fire trail          ?                       142&lt;br /&gt;
 Doors                        -                         0&lt;br /&gt;
 &lt;br /&gt;
 Note: the numbers in the table are related to the thing which produces them,&lt;br /&gt;
 not to the sound effect itself.  For example, look at what happens when you&lt;br /&gt;
 shoot with the ethereal crossbow:&lt;br /&gt;
 - shooting sound: bowsht (id = 18), mo.t = 91 (main arrow)&lt;br /&gt;
 - main arrow hitting a wall: hrnhit (id = 14), mo.t = 91 (main arrow)&lt;br /&gt;
 - other arrows hitting a wall: hrnhit (id = 14), mo.t = 93 (secondary arrows)&lt;br /&gt;
 &lt;br /&gt;
 There are some &amp;quot;?&amp;quot; in the table above because these things cannot be&lt;br /&gt;
 put in a WAD file, and thus their number is unknown.  For example, you&lt;br /&gt;
 cannot put a flying projectile in a WAD.&lt;br /&gt;
 &lt;br /&gt;
 When you get an artifact, usually MO.T is 97 (player).  But some of them&lt;br /&gt;
 have a different value (10 for the Morph Ovum, 15 for the Time Bomb).  I&lt;br /&gt;
 think this is because there is a special light effect when you pick up&lt;br /&gt;
 these objects.&lt;br /&gt;
 &lt;br /&gt;
 Maybe I should take a look at the exe with HHE or another tool.  The MO.T&lt;br /&gt;
 numbers can certainly be found somewhere...&lt;br /&gt;
 &lt;br /&gt;
 I discovered a few other interesting things:&lt;br /&gt;
 &lt;br /&gt;
 - Doors opening and closing have a high priority (400).  This ensures that&lt;br /&gt;
   you hear the doors even if lots of monsters are shooting at you (pri = 320).&lt;br /&gt;
   The teleport sound has a high priority too (pri = 500).&lt;br /&gt;
 &lt;br /&gt;
 - When you press a switch, the sound is associated with the player (mo.t = 97)&lt;br /&gt;
   but the moving floor or doors have their own sound, coming from the center&lt;br /&gt;
   of the sector (and mo.t = 0).&lt;br /&gt;
 &lt;br /&gt;
 - When the Maulotor sees the player for the first time, the &amp;quot;wake up&amp;quot; sound&lt;br /&gt;
   is associated with the player (mo.t = 97, dist = 0) and not the Maulotor&lt;br /&gt;
   (mo.t = 140).  The same happens for D'Sparil: the first sound (sbtsit)&lt;br /&gt;
   and the sounds played when he resurrects (sorrise and sorsit) are coming&lt;br /&gt;
   from the player.  This explains why you hear them so well.&lt;br /&gt;
 &lt;br /&gt;
 - The sounds with the highest priority (2000) are the sound of D'Sparil&lt;br /&gt;
   summoning his disciples (soract) and D'Sparil dying.  They are also&lt;br /&gt;
   associated with the player.&lt;br /&gt;
 &lt;br /&gt;
 - Most ambiant sounds are played from the player's position (mo.t = 97 and&lt;br /&gt;
   dist = 0).  However, this is not the case for wind (mo.t = 197, id = 130)&lt;br /&gt;
   and waterfalls (mo.t = 160, id = 129).&lt;br /&gt;
 &lt;br /&gt;
 &amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;/div&gt;</summary>
		<author><name>Corbin</name></author>	</entry>

	</feed>