Text File
DOOM.DOC
(c) Reini Urban, Graz 95
rurban@sbox.tu-graz.ac.at
should be somewhere at:
ftp://flinux.tu-graz.ac.at/pub/idsoftware/wad_edit/acaddoom.zip
A simple DOOM Editor within AutoCAD to export geometries to a WAD.
WADOUT writes a WAD directly without NODES
Writing:
closed polylines to SECTORS
extra lines and polylines to LINEDEFS
extra points to VERTEXES
Merges 2 Sidedefs to 1 Line
Looks at each line in all next sectors for opposite line (2nd sidedef)
ignores same lines - if it works :)
You can draw your geometry in DOOM pixel units, meter or centimeter.
The 2D coordinates and the heights are automatically converted to
DOOM pixel units.
Let's you choose objects, accepts a different UCS,
selects only points, lines, simple open 2D polylines,
closed polylines and thing-blocks.
Needs the DOOM.EXP (with no restriction) or URBAN.EXP (shareware version)
for binary file output functions. (AutoLISP cannot write a binary 0)
Installation:
-------------
required:
DOOM.LSP - Programs } or DOOM.BI4
DOOMUTIL.LSP - utility functions }
DOOM.HLP - this Helpfile
DOOM.EXP - required for WADOUT (binary output functions)
(or URBAN.EXP as part of the URBAN Utilities
Shareware Tools)
AutoCAD R12-13 DOS
useful Files:
DOOM.DCL - Dialogbox definitions
THINGS.LST - Thing type definitions
LINTYPES.LST - Linetype definitions
SECTYPES.LST - Sector type definitions
TEXTURES.LST - Texture definitions
WAD_DWD.EXE - converts a WAD to a DWD File (V1.0 or V1.1)
IDBSP.EXE - builds a WAD out of a DWD (with NODES)
(crashes often), V1.1 needed
(those two files are often included with EDMAP)
any useful DOOM Editor to correct the TEXTURES errors,
and convert overlapping lines to 2-sided lines.
(eg: DCK, DEEP, DEU, HEU, DOOMED, DOOMCAD, EDMAP, RGDOOMED,
DMAPEDIT, WADED, ...)
You need
You need DOOM.LSP and DOOMUTIL.LSP,
or just DOOM.BI4 if you use the ACADL.EXP, (=ACADLC.EXP) which
interprets compiled Lisp code (known as (BD4A)-functions)
Load
-----
(load "DOOM")
or
(load "DOOM.BI4")
or with the APPLOAD command
Start
-----
WADOUT
DWDOUT
------
AutoCAD Interface to ID's Nodebuilder IDBSP.EXE
-----------------------------------------------
Format:
Sectors/Linedef's as lines or closed polylines:
whit
<flag>
<type>
<tag>
<xoff> ( <yoff> : <topT> / <botT> / <midT> )
<floorH> : <floorT> <ceilH> : <ceilT> <light> <type> <tag>
get lines from lines with EED and closed polylines
store line-info in lines, textures in txt, sectordef's in sec
EED of Texture:
("DOOM"
((1002 "{")
(1070 flag)(1070 typ) (1070 tag) (1070 xoff) (1070 yoff)
(1000 topT) (1000 botT) (1000 midT)
(1002 "}")))
EED of Sector:
("DOOMSECTOR"
((1002 . "{")
(1040 floorH) (1000 floorT) (1040 ceilH) (1000 ceilT)
(1070 light) (1070 type) (1070 tag)
(1002 . "}")))
Things:
things as blocks with the attributes TYPE and WHEN
<when> = color (def: 7, skill 1-4)
<type> = blockname, THNG1 - THNG3006
Format of the DWD File, accepted by IDBSP.EXE
---------------------------------------------
WorldServer version 4
level:<direntry> #eg: E1M1
lines:<number>
(<x0>,<y0>) to (<x1>,<y1>) : <flags> : <type> : <tag>
<xoff> ( <yoff> : <topT> / <botT> / <midT> )
<floorH> : <floorT> <ceilH> : <ceilT> <light> <type> <tag>
things:<count>
(<x>, <y>, <angle>) :<type>, <when>
---------------------------------------
Description:
Lines and sectors:
------------------
A Linedef consists of a line as follows:
(<x0>,<y0>) to (<x1>,<y1>) : <flags> : <type> : <tag>
where <x0>, <y0>, <x1>, <y1> are the numeric X and Y coordinates,
respectively, of the line's start and end points, <flags> is the
numeric flags value, <type> is the numeric line type, and <tag>
is the Sector/Trigger Tag or 0 if none. (See the Unofficial
Specs for an explanation of these fields.)
Each Sidedef consists of 2 lines as follows:
<xoff> ( <yoff> : <topT> / <botT> / <midT> )
where <xoff> and <yoff> are the numeric X and Y offsets, respec-
tively, of the textures applied to this side, <topT>, <botT>, and
<midT> are the (string) names of the textures to apply to top,
bottom, and middle (or normal) surfaces of this side.
and a Sectordef:
<floorH> : <floorT> <ceilH> : <ceilT> <light> <type> <tag>
where <floorH> and <ceilH> (numeric) and <floorT> and <ceilT>
(string) are the floor and ceiling heights and texture names,
respectively, <light> is the numeric light level, <type>
(numeric) is the sector type, and <tag> (numeric) is the Linedef
(Trigger) tag, or 0 if none. For definitions of these terms, see
the Unofficial DOOM Specs.
Lines within the the same sector have the same Sectordef line.
Example:
(2840,1476) to (669,0) : 4 : 0 : 0
0 (0 : - / - / GRAY1 )
128 : FLOOR0_3 256 : FLAT18 255 0 0
0 (0 : / / )
128 : FLOOR0_3 256 : FLAT18 255 0 0
(283,3072) to (850,2979) : 1 : 0 : 0
0 (0 : - / - / GRAY1 )
128 : FLOOR0_3 256 : FLAT18 255 0 0
Things:
-------
where <count> is the number of Thingdefs following. Then comes
<count> many Thingdefs, each of which has the format
(<x>, <y>, <angle>) :<type>, <when>
where <x> and <y> are the numeric coordinates of the thing's
location, <angle> is the direction it faces (0 to 359), <type> is
the number (1-????) of the type of Thing at that location, and
<when> is a numeric bitmask of which degrees of difficulty the
object appears in, plus other bits for "deaf" etc.
Example:
(1056,-3616, 90) :1, 7 # player 1 start, 7 means at all levels
--------------------------------------------------------------
Thanks to the authors of the following programs and documents:
Editors:
DCK, DEEP, DEU, DOOMED, DOOMCAD,
EDMAP, RGDOOMED, DMAPEDIT, WADED
Utils:
DEUTEX, DEUSF, IDBSP, WAD_DWD, BSP, ZAMBONY
Docs:
METRICS, LINTYP10, UDS (former DMSPECS), DMFAQ..., TEXPATCH
TEXTURES, DESIGN...FAQ, DMAPEDIT Docs, DTEXMAN3
Of course:
ID Software for DOOM, DOOM2, HERETIC and the -file parameter
The best HELP available for beginners is:
DCADTUTR.HLP and DOOMCAD.HLP (Windows Format)
The .TXT files from DMAPEDIT
The best HELP available for advanced is:
UCS, the docs with DCK 2.0, the Deutex Manual
I'm trying to use DOOM and ZAMBONY as a AutoCAD previewer, but
the algorithms to convert 3d-space of AutoCAD,
to the limited 2d-space of the DOOM engine are quite complicated.
Waiting for Quake.
Or writing a SOLPROF similar command, which scans the geometry and
creates automatically for each different height a different sector.
Ceilings would be Solids, PMESH or 3DFACE objects, not elevated
polylines. So the see-trough character in Acad would stay to be able
to use Acad based 3D previewers.
(Impossible with the actual type of geometry, since 2-sided lines are
not see-through, eg. try SPEA 3d-World or the Matrox Previewer)
I hope, that with the end of this year 3D nodebuilders for a
full BSP tree will become available (QUAKE!) to allow a real-time
walkthrough for any geometry. And I read about fast texture mapping
for faces, not just vertical and horizontal.
I already wrote real-time viewers for 3D BSP trees in C++,
but I cannot create the BSP. I try'd it in LISP :)
Viewing is simple but creating!!
Source code in a older CT, very simple.
$Id: DOOM.HLP 1.1 1995/05/30 13:07:39 Reini Exp $
look also for:
--------------
URBAN.ZIP - AutoCAD Shareware Utilities R12-DOS (V2.9beta till 30.06.95)
at ftp://ftp.flinux.tu-graz.ac.at/pub/msdos/???/urban.zip
MSG.ZIP - Freeware maintance utility for different language versions
within the same source code (Lisp,C,Pascal,...)
(with sources)
at ftp://ftp.flinux.tu-graz.ac.at/pub/msdos/???/msg.zip
Reini Urban, Graz-Austria, March-April 95