____________ __________________________ \ \ \ / / | _______ \ \_______ ________/ / | |\_____\ \ \______\ / \______\/ | | | | |\ | | / | | | | || __________ ____ ____ | | | __________ _____ ____ | | | | || \ _____/ / \ / \ \ / \ | | | \ _____/ /| \ / \ / \ | | | | || | |\___\/ | |/ | |/ | | | | |\___\/ \ \ \ / / / | | | _/ || | |_|____ | || | || | | | | |_|___ \ \ \/ / / | | |_/ __/ | | ____/ / | || | || | | | | ___/ / \/ \/ | |/ __/ __/ | |\__\/ | || | || | | | | |\_\/ / /\ \ \ / __/ | |_|_____ | \|__/ || | | | | |_|_____ / / |\ \ \ / _/ /______/ / /_______/| /___| | /______/ / /__/ /\ \__\ \ / / \______\/ \________/ \____\| \______\/ \__\/ \|__| \/ / \/ **********************************************/ ------------------------------------->/ *************************************************/ ------------------------->/ *****************************************************/ ------------------------------------------->/ *******************************************************/ ------------------------------>/ **********************************************************/ ______________________________________________________________/ DEUTEX/DEUSF 3.4 March 1995 WAD composition tool for DOOM Copyright (c) Olivier Montanuy 1994/95 (montanuy@dmi.ens.fr) Manual Edited by Kevin McGrail (74107.1254@compuserve.com) ------------------------ Data Utility License ------------------------- DOOM(tm) is a trademark of Id Software, Inc. The DOOM characters and the Id Software logo are trademarks of Id Software, Inc. DOOM Copyright (c) 1993. Id Software Inc. All rights reserved. This utility product is not a product of Id Software, Inc. and has not been approved by Id Software, Inc. Id Software will not provide technical support for this product. The purchaser of this utility product may not distribute for money or other consideration any software data created and/or modified by the use of this utility product. ----------------------------------------------------------------------- ***************************** DISCLAIMER ***************************** I will not accept liability for damages resulting from the use of this program. DeuTex and DeuSF are programmed in a very secure way, to limit the risk of bugs. They have as few tricky optimisations as possible. DeuTex and DeuSF use only basic level commands, and don't contain any Logical bomb or other tricks. They should work on all platforms, but this can never be 100% certain. The source code is available on request (for serious people only). Legalese: Read the license information at the end of this manual. DeuTex/DeuSF are freeware and Copyright (c) O.Montanuy 1994,1995. Distribution: DeuSF can be freely distributed. DeuTex cannot be distributed for *any* commercial purpose, with the sole exception of Compuserve download charges. ************************** CONVIVIALITY ****************************** DeuTex and DeuSF have no human interface. If you can't do without, get WinTex, the Windows Shell for DeuTex DeuTex is meant to be run from a batch creation file (e.g. make.bat). DeuSF should be run from a batch installation file (e.g. install.bat). *********************************************************************** + *NEW* - Lines begining with a '+' indicate information added since + the manual for DeuTex v3.1 came out. + DeuTex 3.4 is mainly compatible with version 3.1 but not with + versions 2.9 and below. Changes are minor (format of text files, and + behaviour of some merge functions) but could be annoying. + Sorry for the nuisance, but as stuff became real to dirty, I had + to take some radical decisions. As of version 3.4, DeuTex/DeuSF can be considered as finished. Almost all the features a normal human would require are there I only need to add something to build/modify a WAD fast, in order to facilitate the building of preview PWADs. Normally, the join commands should make this useless, but you never know... The sources will be released as soon as they are clean enough for other people to read, understand and reuse. I hope this last step will simplify the creation of editors for future cool games. page i ************************** Table of Contents *************************** Data Utility License i Disclaimer i Conviviality i Table of Contents ii Features v What's New? vi ---------------------------- *** [PART ONE] GETTING STARTED *** 1 ---------------------------- Chapter 1 OVERVIEW 1 A) What is DeuTex? 2 B) Installation 2 C) Directories and DeuTex 4 D) What do I need? 4 E) What do I do? 4 F) What is DeuSF for? 5 G) What are the Palettes For? 5 Chapter 2 TEST-ME or What's inside TRINITY.WAD? 7 A) About Test-Me 7 B) Listing the Directory 7 C) Decomposing TRINITY.WAD 7 D) Recomposing TRINITY.WAD as TRINIDAD.WAD 8 E) Customizing TRINITY.WAD 8 Chapter 3 WORKING WITH WADS 9 INTRODUCTION 9 A) How to Decompose a PWAD 9 B) How to Create a PWAD with new TEXTURES 10 C) How to Create a PWAD with new SPRITES and FLATS 11 1) Sprite and Flat Replacement 11 2) Changing the Number of Sprite Viewpoints 12 D) How to Create a PWAD with new SOUNDS 14 Chapter 4 WinTex 15 page ii ********************** Table of Contents (cont) ************************ ----------------------------- *** [PART TWO] DETAILS, DETAILS *** 16 ----------------------------- Chapter 5 DIRECTORY STRUCTURE 16 A) \Levels 17 B) \Lumps 18 C) \Textures 19 D) \Sounds 20 E \Graphics 20 F) \Sprites 21 G) \Flats 21 H) \Patches 22 Chapter 6 DEUTEX COMMANDS 23 A) Complete Command Reference 23 B) Help Commands 23 C) Optional Commands 23 D) Commands to Compose or Decompose WADS 25 E) Commands for merging PWADS into the Main IWAD 26 Chapter 7 DEUSF COMMANDS 28 A) Overview 28 B) Complete Command Reference 29 C) Help Commands 29 D) Optional Commands 30 E) Mandatory Commands 30 Chapter 8 FORMATS 31 A) The WAD Creation Directive (WADINFO.TXT) 31 1) Overview 31 2) WADINFO.TXT format 32 3) An example WADINFO.TXT Listing 36 B) The Texture Definition File (TEXTURE1.TXT) 39 1) Overview 39 2) An Example TEXTURE1.TXT Listing 41 page iii ********************** Table of Contents (cont) ************************ --------------------------- *** [PART THREE] ALL THE REST *** 43 --------------------------- Chapter 9 NECESSARY STUFF 43 A) License Agreement 43 B) Legal Stuff 44 C) Where to get DeuTex/DeuSF 45 D) Version Information 46 E) Known Problems 47 F) Thanx 48 G) Final Words 50 APPENDICES I) Switch Textures in DOOM.WAD 51 II) Animated Wall Textures in DOOM.WAD 56 III) Sound Names for DOOM 58 A) Sounds found in BOTH DOOM I and DOOM II 58 B) Sounds found ONLY in DOOM II 60 C) Converting DMAUD Sounds for DeuTex 62 IV) DeuTex and DeuSF Command Summaries 64 A) DeuTex Commands 64 B) DeuSF Commands 65 page iv ****************************** FEATURES ******************************* ------------ DeuTex ------------ DeuTex stands stands for DEU's Texture Companion, because it used to deal only with DOOM textures. Now it can do much more! DEU is a DOOM level editor by Brendon Wyber and Raphael Quinet, and DeuTex was originally derived from the code of DEU 5.21. DeuTex uses various contributions for particular file formats. DEUTEX Features: - Ported on all DOOM environement (DOS,OS/2,Linux,SGIx,Unix) - Reverse engineer existing PWADs. - Compose your own wall Textures, by reusing existing DOOM Patches or adding your own Patches as .BMP or .GIF files. - Load Sounds as .WAV, .AU or .VOC files. - Load PC Speaker Sounds as a serial of number (in text). - Load music entries as .MUS files. (from MIDItoMUS) - Add your own floors. - Add your own Sprites. - Simple WAD creation directives from a text file. - Simple directory structure for the resources. - Work in batch mode, like a compiler. - A Windows shell can be used to make your life easier. - Compatible with Level editors (like DEU,WinDEU). - Merge a PWAD into the main IWAD, recreating the WAD directory, so that ANY or ALL kinds of Sprites and/or Flats can be defined, while distributing only the changed ones in the PWAD. - Extract Graphics, Bitmaps and Lumps out of your favorite PWAD, for contemplation or reuse. (WITH WAD AUTHOR AGREEMENT ONLY!) - Check your PWAD for errors in Texture definitions. - Create animated walls with (almost) any sequence of pictures. - Create a non repeating sky Texture. ------------- DEUSF ------------- DeuSF stands for DEU Sprite and Flats. It is mainly used to compensate a bug in DOOM Sprite and Flats handling. DeuSF was inspired by DMADDS by Bernd Kreimeier, but is more powerful and much cleaner. Like DMADDS, DeuSF compensates for a bug in DOOM concerning the treatment of external Sprite and Flat PWADS. It will enables you to distribute PWADS containing only the Sprites and/or Flats that you wish to replace. There are some caveats here, so read the manual! DeuSF can read DMADDS files, but its' preferred PWAD composer is of course DeuTex, since PWADS composed for DMADDS are very dirty inside. DEUSF Features: - Recreate a complete Sprite and/or Flat PWAD from a partial Sprite and/or Flat PWAD and the main WAD of DOOM. WARNING: The Sprite names VILE[, VILE\ and VILE] are not valid DOS file names, so DeuTex replaces them with VILE$, VILE@ and VILE# when extracting them to files. Use these names for your files, too. page v ***************************** WHAT'S NEW? ***************************** + New in DeuTex 3.4 + + - Many many corrections of small bugs (and compiler errors, dammit!) + - function -usedtex to find the texture use in all levels + - Overwrite switch (-o) to replace data (when you really want it). + - A fully working merge and join function (I hope) + - Improved support for WinTex + New in DeuTex 3.3 + + - Added a -get function to retrieve a single WAD entry + (sound of picture) + - Improvements to -merge so that it can be used with Heretic + NOTE: HERETIC V1.0 CAN'T USE EXTERNAL SPRITE WAD. + THIS IS A BUG INHERETIC, NOT DEUTEX, DEUSF OR NWT + - Sound formats corrected (at least) but compression not supported. + - Now -merge and -app, -join preserve the file time, not only the + contents so that you can still patch your IWAD after -merge. + - A _DEUTEX_ entry is added in the WAD directory, for -merge + and -app and -join so that even if you use some pervert tool + on your WAD, -restore should be able to restore it provided + your tools don't modify bytes before the directory. + This is for ease of use with NWT. + NOTE: DON'T USE DMGRAPH ANYMORE. IF YOU WANT TO MERGE ENTRIES + INTO A WAD, MAKE A SPECIAL WAD OF THESE ENTRIES AND USE + DEUSF -join TO MERGE THAT NEW WAD INTO THE DESIRED WAD + - New [MUSICS] section and MUSICS subdirectory. Yes, I suddenly had + enough of mixing sounds and music. Should have done that before + - Small patch to prevent DCK from bugging at modified IWADs + - DeuTex can now read duplicate sections in Wadinfo.txt + when extracting new data, if wadinfo.txt exist , it appended SUPPORTED DOOM registered 1.1 to 1.8 and above DOOM2 1.6 to 1.8 and above + HERETIC registered 1.0 and (probably) above NOT SUPPORTED (by request of IDsoftware) DOOM shareware + HERETIC shareware It is possible for a hacker to modify DeuTex/DeuSF and make it compatible with DOOM or HERETIC shareware. If you're *that* short of money that you're ready to hack a prog to save 40$ and the pleasure to be supporting one of the very best game company, please don't distribute your version of DeuTex/DeuSF, because I'm have no time to spend answering to questions about a hacked DeuTex that could possibly fail very differently than the original. page vi ---------------------------- *** [PART ONE] GETTING STARTED *** ---------------------------- CHAPTER 1 ****************************** OVERVIEW ******************************* DeuTex is a GREAT program! (preceding claim inserted over the objections of Olivier Montanuy) ;-) *********************** A Note About This Manual *********************** There is a lot of redundancy in the manual. This is intentional. The manual is intended to be used as a reference. When you have a question on a particular aspect of DeuTex, look up a likely entry in the Table of Contents, and read that entry. It should have the information you need. This is to prevent you from having to jump around from page to page to figure out a procedure in DeuTex. This doesn't mean that sections are identical. Each section attacks a problem from a different viewpoint. If one section doesn't help you, maybe a different 'angle' will. ************************************************************************ This manual has a lot of trees in it. This chapter will give you a view of the forest. DeuTex and DeuSF are powerful programs that will let you do almost anything you can imagine in composing or manipulating PWADS. Notice the word composing. Deutex is an Orchestra Conductor. It can perform whatever music you write for it brilliantly, but you must supply the musicians. A PWAD consists of many parts. DeuTex coordinates those parts to give you the PWAD you desire, but it doesn't create them. With DeuTex you have access to all the resources in the DOOM1 or DOOM2 IWADS. Since it does so many things, it might seem a little confusing at first glance. Don't worry. If you are familiar with DOOM (read Matt Fell's DOOM specs and Hank Leukart's DOOMFAQ), then all you need to learn about DeuTex is it's organization. There are so many resources in DOOM that it isn't reasonable to put them all in one directory. DeuTex uses a subdirectory for each entry type. Using these subdirectories is easy once they're explained. Deutex makes it possible to use a simple, straightforward method for working with custom graphics (and sounds). The approach is as follows: 1) Put your resource files in subdirectories such as FLATS, SPRITES, etc., further discussed below. 2) Use a `Wadinfo' file called something like `goodies.txt' to tell Deutex how to assemble the resources into a PWAD. 3) Run `deutex -make goodies.txt goodies.wad' to make the PWAD. Now you can play your level with the resources, without any fuss (unless, of course, something has gone wrong along the way). page 1 This method works for any resource. You can make sound-only wads that will play with any version of DOOM. You can include Level maps in a multi-level PWAD. DeuTex will put the Levels where you want them, regardless of the internal ExMy OR MAPxx of the Level. If the finished PWAD doesn't contain new Sprites or Flats, it can be played as is. Otherwise, it can be rendered playable with DeuSF, which can be freely distributed with your PWADS. The DeuTex Visual Basic shell let's you use the Windows environment to distribute those entries in the right directory, and then execute the -make command. It doesn't change the way DeuTex works, it only makes your life easier. --------------- A) WHAT IS DEUTEX? --------------- DeuTex is a PWAD compiler. It allows you to organize ALL the resources you modify, and group them into your PWAD in a single step. This eliminates the need for running a different program for each type of editing you want to do (DMAUD, DMGRAPH, DMADDS, etc). DeuTex is NOT a: map editor, (use DEU, DoomCAD, WadEdit...) nodes builder, (use DEU, BSP, IDBSP,...) reject map builder (use RMB or REJECT) DOOM.EXE editor (use DEHACKED) Your Level map with nodes, reject and blockmap already calculated is just another resource to DeuTex. If you don't want to redefine or create Textures, Flats, Sounds, etc. in your PWAD, you don't need DeuTex. On the other hand, if you redefine LOTS of stuff, you'll wonder how you ever got along without it. If you've worked with wads before, you know how many times you have to go in and change something! With DeuTex, you just edit the resource you want to change, throw it back in it's subdirectory, and run a batch file to put everything together again. ------------ B) INSTALLATION ------------ DeuTex comes in zipped format. Naturally, you need a copy of PKUNZIP (v2.04G) to unzip it. If you don't have one, go get it! It's probably available the same place you got DeuTex. PKUNZIP also exist for Unix. The file name is DEUTEX34.ZIP or something like it. This manual is valid for DeuTex versions 3.4 and above. Some information is not applicable to previous versions, and may cause you problems. Be forewarned! Installing DeuTex: DeuTex and DeuSF should be put somewhere in your path, e.g. under C:\DOS in DOS, ~/bin under Linux/Unix, etc. This is not ABSOLUTELY necessary, as you can put a copy in your working directory each time or specify path names in all the commands, but, believe me, it makes life much simpler. page 2 You should enable DeuTex/DeuSF to locate your DOOM or DOOM2 files by creating an environmental variable DOOMWADDIR that points to your DOOM path like this: For DOS, put the line 'SET DOOMWADDIR=C:\GAMES\DOOM' in AUTOEXEC.BAT. For Linux/Unix, use 'setenv DOOMWADDIR ~/games/doom' in .tcshrc. This is more important for the Linux/Unix version, since with DOS the command DeuTex -doom will achieve the same result. In DOS, it's possible to get an 'out of environment space' error if you have too many variables defined in autoexec.bat (including path, etc). If this occurs, use DOS Help for the SHELL command to find out how to increase your environment space. Of course, DeuTex will only work if the REGISTERED version DOOM.WAD or DOOM2.WAD is available. Should you be in dire need of disk space, or should you wish to use DeuTex on a machine that can't run DOOM, you can use DeuTex to build a fake DOOM.WAD or DOOM2.WAD, keeping only the structure of the directory and the entries PLAYPAL, TEXTURE1, TEXTURE2 and PNAMES. Of course, to do this, you first need a complete registered DOOM.WAD or DOOM2.WAD, and even then it's a real pain. Beware to keep that file for yourself ONLY. The zip file for DeuTex 3.0 contains the following files. For illustration purposes, the diagram assumes you put DTEX30.ZIP in the root directory (C:\). Directory information is embedded in the zip file, so use the PKUNZIP -d option: PKUNZIP -d DTEX30.ZIP will produce: C:\dtex30.zip |_ \DEUTEX\ deusf.exe - DeuSF program. | deutex.exe - DeuTex program. | | dtexman.txt - This manual. | file_id.diz - For BBS use. | midi2mus.exe - MIDI to .MUS converter. | readme.txt - Short descrition of DeuTex/DeuSF. |_ | \PALETTE\ doompal.pal - DOOM, PaintShop Pro format. | doompal.ppm - DOOM, PPMQUANT format. | palette.txt - Short description of the palettes. | heretic.pal - HERETIC, PaintShop Pro format. |_ \TEST-ME\ test-me.txt - Directions for the TRINITY example. trinity.bat - DOS batch file for TRINITY example. trinity.cmd - OS/2 file for TRINITY example. You may end up moving the palettes if you want them in their native application's directory, but leave DEUTEX\TEST-ME alone. When you do the demo, you'll want it to be in its own directory. WinTex, the Visual Basic shell for DeuTex, has gone so huge and powerfull that it's now a tool of it's own. It is available separately, as WINTEX34.ZIP. page 3 ---------------------- C) DIRECTORIES AND DeuTex ---------------------- Chapter 5 tells you all about the directories DeuTex uses, but this section will give you the general picture. I'm going to use an imaginary cakemaking machine to explain DeuTex's directories (I know, I know, it's stupid! ). To make cake with this machine, you put your flour in one, container, raisins in another, sugar another, milk, icing, walnuts, chocolate, eggs, etc. All your best stuff, each in it's own place. Then you flip the switch, and the machine thumps and smokes, and voila! Cake! DeuTex works in the same way . You put your Map in one box, Sounds in another, Textures, Patches, Graphics, Lumps, Sprites and Flats all in their own boxes. If you don't want raisins today, leave the Sprites box empty. When all is in place, flip the switch (DeuTex -make, in a batch file preferably), DeuTex thumps and smokes for a little while, and voila! PWAD! --------------- D) WHAT DO I NEED? --------------- ************************** User Requirements ************************* ATTENTION: DeuTex is not completely trivial to use. It requires a fully functional processing unit, with a least 10000 meg of available neurons, some basic DOS and DOOM specs dynamic libraries and at least 1 or 2 hours of spare processing time at a minimum 80% attention rate. You have been warned. SUGGESTION: If you use DeuTex, try New Wad Tool, too. The two tools combine very well together under DOS. (NWT is not available for other O/S). ************************ Hardware Requirements *********************** This program is an ordinary DOS executable, compiled in a HUGE memory model, with 386 instructions. It does not make use of a math copro- cessor. It should run with about 500k of free base memory, or less. It might not run under a 286. It was tested on a Compaq LITE 4/33c and an IBM Thinkpad 755c. Unix, Linux, OS/2, SGiX and Alpha versions are also available. ------------- E) WHAT DO I DO? ------------- Please read this Manual before asking questions. I know it's boring, but this IS freeware, and I have limited time to support it. Bug reports ARE appreciated IF they come with the files you were using when the bug occurred, and a full description of it. Read and be familiar with all the DOOM literature you can, especially the 'unofficial' DOOM SPECS 1.6 by Matt Fell. You don't need to read the file formats, but you need to understand what the different entries are for, and the tricks and limitations of DOOM. page 4 DeuTex makes some checks on your PWAD, but I don't have time to program for all possible errors. Become familiar with the various editors you need to create the resources used in this program. DeuTex does not edit things. It puts the things YOU edit together. For editing, use the best Sound or Graphic editor you can afford. When the foregoing is done, you take all your cool stuff. You put it in DeuTex's boxes. You give DeuTex the directions on what to DO with your stuff. You run DeuTex. That's All, Folks. ------------------ F) WHAT IS DEUSF FOR? ------------------ DeuSF is a program to help overcome some of DOOM's limitations, and still be able to distribute a reasonable sized PWAD. With Sprites and Flats, you have to replace EVERYTHING in order for DOOM to work right. This makes for a big PWAD (3 to 5 megs), and it's illegal to take iD's Sprites or Flats from DOOM, put them in your PWAD, and then distribute them. DeuSF allows you to replace as few Sprites and Flats as you desire, and distribute ONLY THOSE with your PWAD. With the appropriate batch file, it will change things at the USER's site to enable your PWAD to play, without stepping on toes, or asking people to download multi- megabyte single Level PWADS! Another advantage of DeuSF is that it makes Sprite PWADs playable with either DOOM or DOOM2 using the same install.bat file. Isn't that great? -------------------------- G) WHAT ARE THE PALETTES FOR? -------------------------- doompal.pal (JASC palette, for Paintshop PRO shareware program) doompal.ppm (Portable Pix Map, for PBMPLUS freeware package) These are the color palettes used by DOOM. If you edit or create any graphics (Patches, Sprites, etc.) in your favorite graphics program, the colors will most likely be different from the ones used in DOOM. When they are inserted in a PWAD, they need to be 'quantized', which is a fancy word for color-matched. Although this sounds simple, it can actually be quite involved. DeuTex can quantize colors, but it's not optimised for that, so quantization might be slow and quite poor. page 5 What should you do before inserting a picture with DeuTex? * AVOID regular patterns, like squares/stripes. These patterns are prone to create ugly aliasing when scaled by DOOM. * SMOOTH it! I mean, apply a low pass filter so that it appears blurred. This will also hide some of the aliasing effects of scaling. * QUANTIZE your colors with one of the supplied DOOM palettes. DeuTex is optimised for the original DOOM palette. If you use another palette, it will be slower. DeuTex will quantize your colors to the DOOM colors using a strange alchemy. No dithering. * TRANSPARENT areas should be made of A UNIQUE COLOR, preferably CYAN (r=0,g=255,b=255, but you can specify another color to DeuTex.) WARNING: Some lame programs don't support full 0-255 range. CYAN could be r=0, g=252, b=252. Experiment first. The enclosed palettes are in the format of two good graphics programs. Use them to quantize your pictures before you feed them to DeuTex. doompal.pal is in the format used by PAINTSHOP PRO v2, a popular shareware graphics program with excellent color conversion capabilities. To convert with doompal.pal in PAINT SHOP PRO: - Load the file you want to convert. - Select *Colors* from the menu bar. - Select *Load Palette* from the drop-down menu. - Browse to find doompal.pal and select it. - In the 'apply palette to image using' box, select *error diffusion*. - Select *OK*. PaintShop Pro will then quantize your image to the DOOM palette. - Select *File* from the menu bar. - Select *Save As* from the drop-down menu. - Select *BMP - OS/2 or Windows Bitmap* from 'List files of type'. - Select *Windows RGB Encoded* from 'File Sub-format'. - Select *OK*. DOOM will now display your Graphic pretty much as you expect. If you want to make a .PBM (portable bitmap), use ppmquant on your picture, with doompal.ppm as the reference for colors. + Alternatively, if you extract a DOOM Graphic with DeuTex, it will + contain the DOOM palette. You can then feed it to your favorite + program, and let it extract the palette for later reuse. + + WARNING: + Experiment with this first, as your program might not do what you + expect it to. For example ZSoft's PC Paintbrush will load the DOOM + Graphic correctly and allow you to save the palette. However, if you + take a 24 bit image and load the palette, nothing will happen. You can + let PC Paintbrush convert the image to 256 colors (which it will do + poorly), and then apply the palette. The results will be grotesque, + because it doesn't quantize when applying a palette. A DOOM palette + saved in this program would be useful only for Graphics you want to + hand-draw from scratch. The moral is, if you don't know what you're + doing, experiment first before using a Graphic you don't want to lose. page 6 CHAPTER 2 *************** TEST-ME or What's inside TRINITY.WAD? ***************** ------------- A) About TEST-ME ------------- TRINITY.BAT let's you have a quick overview of some of the cap- abilities of DeuTex so you can decide if it's worth the trouble. TRINITY.BAT does the following: It lists the contents of TRINITY.WAD (with identifications). It decomposes TRINITY.WAD and builds TRINIDAD.WAD. All this in only 3 trivial DeuTex commands. Requirements: - You must have TRINITY.WAD, the great PWAD by Steve McCrea. (available on infant2.sphs.edu as TRINITY2.ZIP and in the Compuserve GAMERS FORUM LIB 8 as TRINTY.ZIP) - Doom must be in the \DOOM directory (\DOOM2 could work too) - TRINITY.WAD must be in the current directory. - You must have *some* room left on your disk :-) - You must be running DOS 5.0 or higher. - You must NOT reuse any part TRINITY.WAD without crediting Steve. Description of the file, TRINITY.BAT: ---------------------- B) Listing the directory ---------------------- rem ***DeuTex*** deutex -doom \doom -wadir TRINITY.WAD ^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^ (a) (b) (a)---> This tells DeuTex that DOOM.WAD and DOOM.EXE are in the \DOOM directory. OPTIONAL. (b)---> This tells DeuTex to list the directory of TRINITY.WAD reporting the entry types. Types *could* be wrong, but not with Trinity. ------------------------ C) Decomposing TRINITY.WAD: ------------------------ rem ***DeuTex*** deutex -doom \DOOM -dir . -xtract TRINITY.WAD ^^^^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^ (a) (b) (c) (a)---> The same as before. (b)---> This tells DeuTex that it must store the result in '.' (which is the current directory). You could skip (b), since '.' is the default, or you could specify another directory, like -dir TEST. (c)---> This tells DeuTex to extract all entries from TRINITY.WAD. page 7 ---------------------------------------- D) Recomposing TRINITY.WAD as TRINIDAD.WAD: ---------------------------------------- rem ***DeuTex**** deutex -doom \doom -dir . -make WADINFO.TXT TRINIDAD.WAD ^^^^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^ (a) (b) (c) (d) (a)---> The same as before. (b)---> The same as before. (c)---> This tells DeuTex to create a new PWAD, from the creation directives contained in WADINFO.TXT. (d)---> This is the name of the created PWAD. ------------------------ E) Customizing TRINITY.WAD: ------------------------ You can edit WADINFO.TXT, the format is pretty simple to guess. (see Chapter 8 - FORMATS for a precise definition.) - A line that begins with a ';' or '#' is a comment. DeuTex ignores it. - Don't touch any lines with [xxxx] (they are section delimiters). + Lets look at the [MUSICS] section: + [MUSICS] D_E1M1 + This tells DeuTex to go into the \MUSICS subdirectory and get a file called D_E1M1.MUS, which is the music of TRINITY.WAD. You might wish to delete this D_E1M1 if your soundcard crashes while playing trinity. You can add your own music, for Episode 1 Mission 2 by editing: + [MUSICS] D_E1M1 D_E1M2 Of course, the file D_E1M2.MUS must exist... You can generate it from D_E1M2.MID (MIDI format) by using MIDI2MUS. BEWARE: DeuTex is NOT fool proof yet. It should not crash your computer, but the generated PWAD may crash DOOM if you make mistakes. I'm very sorry for this, but I have more urgent optimizations to do than foolproofing. However, the PWAD generated here should not crash DOOM, if you use the real TRINITY.WAD as a basis. page 8 CHAPTER 3 ************************** WORKING WITH WADS ************************** ------------ A) INTRODUCTION ------------ Read the DOOM SPECS: Sorry. This is still unavoidable, because of the various tricks and limits of DOOM. If you have a problem, there is a VERY GOOD chance it's referred to somewhere in Matt Fell's SPECS. NOTE: In the following discussion, avoid these common mistakes: Hall of Mirrors with new Textures: First, create your Level. Then, build the nodes and reject. Then add the new Textures. Why? We don't know. leonardc@halcyon.com reported he saw a hall of mirrors with old versions of DeuTex that didn't first load the old DOOM Textures. It seems to be a problem with the node builders. Tutti Frutti and Medusa Effect: See the DOOM specs, and Chapter 8 - FORMATS. If DOOM attempts to display part of a Texture not covered by a Patch, you'll see some ugly garbage (usually has pinks and greens, thus 'Tutti Frutti'). The same thing happens if you use more than one Patch on a Texture with transparent areas, or walls with see-thru portions on upper or lower Textures. If the area is big enough, it will slow the display to a crawl ('Medusa Effect' - Looks like snakes and turns you to stone). Doom reports a void column and exits: One of your Textures has a column with no Patches. Use DeuTex -check on a PWAD before running DOOM. It reports Textures that have void columns. Other bugs: Mail me a description of the bug, together with any configuration files. Don't expect a quick answer, though. ----------------------- B) How to decompose a PWAD ----------------------- First check that all the entries are identified correctly: DEUTEX -wadir NEWBIE.WAD This will list the directory. Then try: DEUTEX -unused NEWBIE.WAD This will tell you if there is any wasted data in the PWAD. It's always funny to see how DMGRAPH and DMAUD waste *some* data. This won't tell you about any data wasted by incorrect entry formats, though. page 9 To extract all the entries: DEUTEX -xtract NEWBIE.WAD The whole directory structure is extracted to subdirectories. WADINFO.TXT is created in the working directory. TEXTURE1.TXT is created in the \TEXTURES subdirectory. To extract only a part of the directory; Sounds, for instance: DEUTEX -sound -xtract NEWBIE.WAD Only the Sounds are extracted and placed in the \SOUNDS subdirectory, which is created if it doesn't exist. NOTE: Some PWAD creators declare Patches, Flats and Sprites outside of the normal boundaries. In that case, DeuTex may not identify them correctly. They'll end up in either the \LUMPS subdirectory in raw (.LMP) format, or the \GRAPHICS subdirectory (.BMP). Care has been taken to handle the most common situations, and this almost never happens in fact, but there is no general solution. You may have to check that all entries have been properly identified. Once you have decomposed a PWAD, you can rebuild it with: DEUTEX -make WADINFO.TXT NEWBIE.WAD WADINFO.TXT already exists, because it was automatically created during the extraction of NEWBIE.WAD (cool, no?). Make sure you delete or move the previous version of NEWBIE.WAD before you remake it, because DeuTex will not overwrite your files (you might not like it :-]). NOTE: DEUTEX puts a signature in the first few bytes of a created PWAD, to identify which version of DEUTEX was used. -------------------------------------- C) How to create a PWAD with new Textures -------------------------------------- First list DOOM's Textures, as a reference: DEUTEX -dmtexture This will extract all the Textures from the main IWAD. They will be written to OLDTEX1.TXT (and OLDTEX2.TXT for DOOM1 only). These text files will be placed in the subdirectory \TEXTURES, which will be created if it doesn't exist. These files make it easy for you to redefine existing Textures by cutting them out and pasting them into YOUR Texture definition file. For DeuTex 3.1 and above, they serve no other purpose. You can delete what's left of them when you're finished. To create a new Texture, define it in a Texture file you create (e.g. TEXTURE1.TXT). TEXTUR1.TXT can have any name but TEXTURE1.TXT is prefered. You can use as many Texture files as you like, as long as they're declared in WADINFO.TXT. Place your file(s) in the \TEXTURES subdirectory. To redefine an existing Texture, just cut the desired Texture out of OLDTEX1.TXT or OLDTEX2.TXT (DOOM1 only). Paste them into TEXTURE1.TXT. Then edit them as you please. You can delete OLDTEX1.TXT and OLDTEX2.TXT when you're finished. page 10 NOTE: For DOOM1/HERETIC only, use one file for redefined Textures from OLDTEX1.TXT, and another file for redefined Textures from OLDTEX2.TXT. In DeuTex v3.3, WADINFO.TXT uses a second Texture section called [TEXTURE2] for redefined OLDTEX2 files. DeuTex 3.3 doesn't care if OLDTEX1.TXT or OLDTEX2.TXT exist. DeuTex 2.x used to require that all the old textures be present, but now DeuTex 3.3 first read the internal DOOM texture definitions, then reads the file you tell it to read, for new definitions. If you mistakenly define the same Texture in multiple files, only the last declared version will be used. Of course, that means that if you redefine a DOOM texture your version will be used. Declare TEXTURE1 in the [TEXTURE1] section of WADINFO.TXT. Then build your PWAD: DEUTEX -make WADINFO.TXT NEWBIE.WAD At this point, it would be a good idea to check your new PWAD for Texture errors: DEUTEX -check NEWBIE.WAD ----------------------------------------------- D) How to create a PWAD with new Sprites and Flats ----------------------------------------------- ******** 1) Sprite and Flat REPLACEMENT BEWARE: Sprite replacement is tricky. If some needed sprites are missing DOOM will lock up. Check your work often. Put your Sprite files in \SPRITES in .GIF or .BMP format. Put your Flat files in \FLATS in .GIF or .BMP format. Declare your Sprite NAMES in the [SPRITES] section of WADINFO.TXT. Declare your Flat NAMES in the [FLATS] section of WADINFO.TXT. Use only the NAME in WADINFO.TXT, without the .GIF or .BMP extension. Since DeuTex 3.1: The '=' label lets your Sprites keep the names YOU have given them. It tells WADINFO.TXT what DOOM Sprite you mean to replace. This enables you to name your sprite files as you damn wish. If you want to replace *ALL* of the Sprites and Flats in DOOM (crazy): DEUTEX -iwad -make WADINFO.TXT NEWBIE.WAD NEWBIE.WAD will be directly usable by DOOM. Remember: replacing only part of the Sprites and Flats mean you'll need DeuSF to install your PWAD, but it will be compatible with ALL versions of DOOM and DOOM2. Redefining all the Sprites is not a good idea unless you really mean it. page 11 To replace *SOME* of the Sprites and/or Flats in DOOM (better): DEUTEX -make WADINFO.TXT NEWBIE.WAD This NEWBIE.WAD will be much smaller and easier to distribute. BUT: This NEWBIE.WAD will cause DOOM to lock up when it starts!(bad) So, if you want to replace only *SOME* of the Sprites and Flats in DOOM, you have 3 choices: DEUTEX -merge NEWBIE.WAD Modifies DOOM.WAD or DOOM2.WAD. (Safe, fast, and small) DEUSF -append NEWBIE.WAD Modifies NEWBIE.WAD. (Safer, still fast, wastes some space) DEUSF -add NEWBIE.WAD NEWBIE2.WAD Creates NEWBIE2.WAD. (Safest, not slow, more space wasted) + + NEW! To merge two PWADS that both redefine Sprites and/or Flats: + + DEUSF -join FIRST.WAD SECOND.WAD (FIRST.WAD now contains both wads) NOTE: The steps above are performed at the end users' site, preferably from a batch file supplied with your PWAD. This means the user must have DeuSF, which can be distributed freely with your PWAD, or DeuTex, which has some restrictions on distribution. See the License Agreement at the end of this manual for the restrictions on distributing DeuTex. The -sprite command is used to add only Sprites, ignoring the Flats: DEUSF -sprite -app NEWBIE.WAD The -flat command is used to add only Flats, without the Sprites: DEUSF -flat -add NEWBIE.WAD NEWBIE2.WAD + ******** 2) HOW to ADD or REMOVE SPRITE VIEWPOINTS + + DeuTex allows you to alter the number of viewpoints a Sprite displays + in your PWAD. DOOM.EXE predetermines the 'behavior' of a given sprite + name, but it doesn't predetermine the number of viewpoints. A sprite + MUST, however, always have either ONE viewpoint or EIGHT viewpoints. + Viewpoints are numbered as follows: + + Front + + 1 + 2 | 8 + \____|____/ + | | + 3 -- | SPRITE | -- 7 + |_________| + / | \ + 4 | 6 + 5 page 12 + The FULL NAME of the Sprite determines the viewpoint of that Sprite: + + BAR1A2.bmp + \ /| \________________ + \/ | \ + ________________/ | The last number is the viewpoint. A + / | zero here means the Sprite has only + The first four letters are the | one viewpoint. If not zero, there + Sprite Name as recognized by | MUST be 8 files for each 'frame' of + DOOM.EXE. They are the same for | the Sprite. + all entries of a given Sprite. | + | + This is the 'frame' number of the Sprite. Animated + Sprites will have consecutive letters here for each + frame (A is frame one, B is frame two, etc.). DOOM.EXE + predetermines how many frames a Sprite uses, so you can + not animate an electrical column, for instance. + + Sometimes, you will see a Sprite entry that has 2 viewpoints in one + Sprite, like BOSSA2A8. This means that the same Graphic is used for + viewpoints A2 and A8 (front-left and front-right). When DOOM sees + this, it uses the Graphic as is for A2, and mirrors it for A8. + + In the above example BAR1 is the Barrel Sprite. DOOM does a 2 frame + animation on barrels (the slime flickers), so the whole entry is: + + BAR1A0 + BAR1B0 + + This disregards the explosion (BEXP) Sprite + that is used when you shoot a Barrel. + + If you want to change the Barrel Sprite to an 8 viewpoint + Sprite, you will need to create 16 Graphics: + + BAR1A1 + BAR1B1 + BAR1A2 + BAR1B2 + BAR1A3 + BAR1B3 + BAR1A4 + BAR1B4 + BAR1A5 + BAR1B5 + BAR1A6 + BAR1B6 + BAR1A7 + BAR1B7 + BAR1A8 + BAR1B8 + + This gives you 8 viewpoints for EACH frame of the animation. If you + only replaced BAR1A1 thru 8, you would see your new Graphic flash to a + barrel a couple of times a second, because you didn't replace the 2nd + frame. If you add a 3rd frame (BAR1C1 etc.), it will be ignored by + DOOM because DOOM.EXE already knows a barrel has only 2 frames. page 13 + Alternatively, you could take an Imp and give it only 1 viewpoint by + taking only one of the views for each animation frame and naming it + TROOA0.bmp (with the correct letter for the frame you're using). The + Sprite will look kind of funny moving around, since it will only face + one direction the whole time. ---------------------------------- E) How to create PWAD with new Sounds ---------------------------------- First put your Sound files in the .\SOUNDS directory. Then, declare the Sound NAMES in the [SOUNDS] section of WADINFO.TXT. See APPENDIX IV for a listing of the Sound names recognized by DOOM. Then build your PWAD: DEUTEX -make WADINFO.TXT NEWBIE.WAD Easy enough? Sound effects: [DSxxxxxx.WAV or DSxxxxxx.AU] Must be in WAV or AUDIO format (SUN). Make sure the format is *not* compressed and does *not* contain comments. My code is pretty basic, because I never had the specs of those formats. All is hacked. PC speaker Sounds: [DPxxxxxx.TXT] Text files containing a list of numbers from 1-255. Music: [D_xxxxxx.MUS] Must be in MUS format. Convert MIDI files to MUS files by using the enclosed MIDI2MUS.EXE (thanks to -dtt-> of ID software). Since DeuTex 3.1: The '=' label lets your Sounds keep the names YOU have given them. It tells WADINFO.TXT what DOOM Sound you mean to replace. This will make your life easier. page 14 CHAPTER 4 ************************** Visual Basic Shell ************************** ------------------------------------- WinTex.exe This is the windows shell for DeuTex. version 3.4 ------------------------------------- Visual Basic is slow, and Windows is very difficult to program (not really complex, but real bug ridden) but anyway I've managed to build quite a cool shell for my DeuTex. I beleive so, because I had some good review of it lately, and some people volunteered to help me write the help, and provide suggestions. Let's just say that this tool is much better that whatever could exist by march 95, even the great NWT tool for DOS. It is better because not only Visual Basic allows to add plenty of feature (well, maybe too many) in a short time, but also because it can make use of external tools (what a DOS based program has more troubles to do). With WinTex, you can use your own level editor, sound editor, music editor, picture editor, text editor, nodebuilder, reject builder, and rely on good old DeuTex to make the tedious job of wad composition and wad merging. The windows part is only here for the presentation, not for the real work, because windows is too unsafe for that! WinTex is the best way to come to DeuTex, if you have Windows 3.1 (it is a 16-bit application, to spare you compatibility troubles) You need VBRUN300.DLL in your windows/system directory, of course, as this is a Visual Basic application. page 15 ----------------------------- *** [PART TWO] DETAILS, DETAILS *** ----------------------------- CHAPTER 5 ************************* DIRECTORY STRUCTURE ************************* DeuTex uses the following directory structure to store DOOM entries. First create a directory (call it MYWADIR or whatever) for your PWAD. Make sure DeuTex is on your path, or put a copy of it in MYWADIR. Put a copy of the PWAD you are working on (MYWAD.WAD) in MYWADIR. Type: DeuTex -xtract mywad.wad DeuTex will automatically create the appropriate subdirectories and put all the WAD's entries in the proper place. It will also create a file named WADINFO.TXT in MYWADIR. If your PWAD is a bare map Level with no additions yet, you should get something like: \MYWADIR\--------mywad.wad | wadinfo.txt | DeuTex.exe (optional, if not on your path) |_ \LEVELS\------ExMx.wad Note that DeuTex will not OVERWRITE any existing files. In the example above, if you type DeuTex -xtract AGAIN, you will get an error message telling you the files already exist. You have to delete wadinfo.txt and ExMx.wad (or move them somewhere else) for xtract to work again. If you lose something you wanted to keep, don't blame DeuTex, it's innocent! Now type : DeuTex <-doom doom directory> -dmtextures DeuTex will read the Textures from DOOM.WAD or DOOM2.WAD, list them in a file called OLDTEX1.TXT (and OLDTEX2.TXT for DOOM 1) and store them in a directory called \TEXTURES, which it will create if it doesn't exist. NOTE: The <-doom doom directory> command is optional. Take a look at Chapter 6 - DEUTEX COMMANDS for a more complete description of when you should use it. Your working directory should now look like this: \MYWADIR\-----mywad.wad | wadinfo.txt | DeuTex (optional) |_ | \LEVELS\----ExMx.wad |_ \TEXTURES\---oldtex1.txt oldtex2.txt If your PWAD had any other resources (Sprites, Flats, Sounds, etc.) in it and you used DeuTex -xtract, it would extract those resources, too. Then it would create the proper directory and store them in it. page 16 If you want to add something to your PWAD, put it in the proper subdirectory (create it if it's not there), and tell wadinfo.txt about it. Chapter 8 - FORMATS describes wadinfo.txt in detail. Then type: DeuTex -make wadinfo.txt mywad.wad DeuTex will read wadinfo.txt and go get all the resources it asks for from the directories. Then it will create mywad.wad from them. Note that if you create a PWAD from the above example, it won't be any different than what you started out with! You need to put some ingredients into the mix before you see any results. THAT's what the other directories are for. Again note that DeuTex won't overwrite mywad.wad if it exists. Since most of the stuff you'll do with DeuTex will be from a batch file, have it handle your housekeeping whatever way you like. Something like the following works pretty well: del mywad.wad DeuTex -make wadinfo.txt mywad.wad copy C:\DOOM\WADS\mywad.wad mywad.bak copy mywad.wad C:\DOOM\WADS\mywad.wad This way, if you find out you've really screwed things up when you test your PWAD, there's always a copy of the previous version to use. DEUTEX SUBDIRECTORIES: -------- A) \LEVELS -------- 'Bare' PWADS go here! A bare PWAD is one that you have edited and constructed the nodes, reject, and blockmap. The PWAD will then contain only the following 11 entries in IT'S directory: ExMx(MAPxx), THINGS, LINEDEFS, SIDEDEFS, VERTEXES, SEGS, SSECTORS, NODES, SECTORS, REJECT, and BLOCKMAP. BEWARE: BLOCKMAP REJECT SSECTOR SEGS are not optional! they must have been generated by your Level editor (along with BSP, IDBSP, REJECT, RMB, whatever). THE FILES PUT HERE MUST BE DECLARED IN THE [LEVELS] SECTION OF WADINFO.TXT. ALL FILES MUST BE IN THE FORM ExMx.WAD OR MAPxx.WAD OR EQUATED TO ExMx or MAPxx in WADINFO.TXT. Suppose you have edited two Levels named PLAGUE.WAD and E3M4.WAD. You want the combined PWAD to replace E1M2 and E3M4 in DOOM.WAD. You would edit the [LEVELS] section of WADINFO.TXT to read: [LEVELS] E1M2 =PLAGUE E3M4 This tells DeuTex to look in the LEVELS\ subdirectory for PLAGUE.WAD and E3M4.WAD and to combine them in the final PWAD as E1M2 and E3M4. page 17 ------- B) \LUMPS ------- Lumps are raw data for DOOM with the extension .LMP. If you have edited or created any of them for your PWAD, put them here. The following files are the LMPs used by DOOM. You can insert something else if you like, and DOOM will ignore it. It's a mystery why anyone would do this, but WAD builders are a mysterious bunch! *********************** Lumps recognized by DOOM ********************** PLAYPAL.LMP Color PALETTES (14 of them consisting of 256 RGB triplets each - 768 bytes/palette). The first one contains the normal DOOM colors. The others temporarily 'tint' the screen colors for different events in DOOM. (Item pickup, Hurt and Berserk Reds, Radsuit Green etc...) COLORMAP.LMP Color MAPS. There are 34 of these,consisting of 256 bytes each. These are NOT RGB triplets. They map whatever PLAYPAL currently being displayed by DOOM to darker colors corresponding to the light level in a sector. These mapped colors are what you see on the screen. The first map (map 0) corresponds to a light level of 247-255, and doesn't change the display at all. The 32nd map (map 31) corresponds to a light level of 0-7 and maps almost all colors to the darkest one in the presently use PLAYPAL. Map 32 makes everything black and white for 'invulnerability'. Map 33 is all zeros. ENDDOOM.LMP Text displayed when leaving DOOM. Use A program like TED or ENDOOMER to edit this text. (DO NOT REMOVE THE ID COPYRIGHT!) DEMO1.LMP / Demos recorded by DOOM. DEMO2.LMP < e.g. DOOM -record DEMO2 -file MYWAD.WAD DEMO3.LMP \ Then move DEMO2.LMP here, and that's all! DMXGUS.LMP (DOOM1) / Text file remapping MIDI instruments DMXGUSC.LMP (DOOM2) \ for the Gravis Ultra Sound card. GENMIDI Instrument mapping for GENMIDI compatible cards. *********************************************************************** Suppose you have edited ENDOOM.LMP and recorded a new DEMO1.LMP for your PWAD. Just put copies of them here, and declare them in the [LUMPS] section of WADINFO.TXT like this: [LUMPS] ENDOOM DEMO1 This tells DeuTex to look here for ENDOOM.LMP and DEMO1.LMP *********************************************************************** + To replace heretic TITLE screen, put a 320x200 picture in the LUMPS + subdirectory and declare it as you would declare a TITLE lump. + DeuTex will know that it must convert it to the special RAW format. page 18 ---------- C) \TEXTURES ---------- NOTE: DOOM1/HERETIC contains 2 Texture entries, TEXTURE1 and TEXTURE2. this is because of differences between the shareware and registered versions. If you are using DeuTex with DOOM2, just ignore any references to TEXTURE2. It doesn't exist in DOOM2.WAD. This subdirectory contains a text file(s) describing the Texture changes you want in your PWAD (Chapter 8 describes Texture definition files). Your file can be given any name you want (prefer TEXTURE1.TXT or TEXTURE2.TXT). This name (without extension) is then entered in the [TEXTURE1] section of WADINFO.TXT. FILES PUT HERE HAVE THE EXTENSION (.TXT). THE TITLE OF ANY FILE PUT HERE MUST BE DECLARED IN THE [TEXTURE1] SECTION OF WADINFO.TXT. The file names OLDTEX1.TXT and OLDTEX2.TXT are reserved. Due to an amazing bug (in DOOM?), if DOOM's Texture list contains any new or redefined Textures before all the UNCHANGED Textures are listed, it produces HOM (Hall of Mirrors) errors. Previous versions of DeuTex dealt with this problem by requiring a copy of TEXTURE1.TXT (with any redefined Textures deleted) here in the \TEXTURES subdirectory. This is no longer necessary with version 3.3. DeuTex now reads the original TEXTURE1 from the main IWAD while creating your PWAD. It then reads your new Textures and automatically sorts , deletes, and combines all entries. Olivier's too good to you guys >;-] EXAMPLES: If you want to add ONLY new Textures: - Put your definition file here (e.g. TEXTURE1.TXT), and declare TEXTURE1 in the [TEXTURE1] section of (WADINFO.TXT). If you want to redefine Textures in TEXTURE1: - Run DeuTex -dmtextures to get the Textures. - Cut the Textures to be redefined from OLDTEX1.TXT and paste them into TEXTURE1.TXT. Edit them or change them as you wish. - You can delete OLDTEX2.TXT and OLDTEX1.TXT now if you want. - Declare TEXTURE1 in the [TEXTURE1] section of WADINFO.TXT. If you want to redefine Textures in TEXTURE2: - Run DeuTex -dmtextures to get the Textures. - Cut the Textures to redefine out of OLDTEX2.TXT and put them in TEXTURE2.TXT. Edit and change them as you wish. - You can delete OLDTEX1.TXT and OLDTEX2.TXT now if you want. - Declare TEXTURE2 in the [TEXTURE2] section of WADINFO.TXT. APPENDICES I and II contain lists of the animated and switch Textures from DOOM.WAD (Not the new ones from DOOM2, sorry. Use DeuTex to make your own list). Copy the portion you want to edit into TEXTURE1.TXT. It's a little easier than hunting through the entire OLDTEX1.TXT files. Beware: some textures change a lot, between DOOM and DOOM2. page 19 -------------------- D) \SOUNDS and \MUSICS -------------------- + Put your new Sound files here in the correct format. They must have + the same name as the Sound you want to replace (Appendix IV lists the + Sound names used in DOOM1 and DOOM2. It also lists the Sound names for + each DMAUD Sound number). Put the Sound NAME (no extension) in the + [SOUNDS] section of WADINFO.TXT. DeuTex uses the following formats for DOOM Sound files: MUSIC: (D_xxxxxx.MUS) for DOOM/DOOM2 (MUS_xxxx.MUS) for HERETIC MUS format (RAW format, which can be created from MIDI files with MIDI2MUS.EXE, provided by ddt). SOUNDCARD SOUND EFFECTS: (DSxxxxxx.WAV) for DOOM/DOOM2 (xxxxxxx.wav) for HERETIC Windows WAVE file (.WAV). Use a converter if you prefer .AU. Preferably use 11025 sample/second for your recording. VOC format is supported only for 11025 sample/s (DeuTex can't convert). PC-SPEAKER: (DPxxxxxx.TXT) only for DOOM Text files (.TXT) with numbers 0-255 WARNING: DeuTex assumes that any file name beginning with: 'D_' or 'MUS_' is music. 'DS' is soundcard sound effect. 'DP' is PC speaker sound effect. + Suppose you've created new music for Level E1M5 called D_E1M5.MUS. You + also want to replace DSSHOTGN with a your file called PTOOEY.WAV. You + would put the files here and edit your WADINFO.TXT as follows: + + [MUSICS] + D_E1M5 + [SOUNDS] + DSSHOTGN =PTOOEY + + This tells DeuTex to look here for D_E1M5.MUS and PTOOEY.WAV. + It will replace the Sound DSSHOTGN with PTOOEY.WAV ---------- E) \GRAPHICS ---------- For DOOM pictures other than Sprites, Flats or Textures. Put the changed Graphic FILE here in .BMP or .GIF format, and enter the NAME (without extension) in the [GRAPHICS] section of WADINFO.TXT. Suppose you have created a new TITLEPIC.BMP, and want SURRENDR.BMP to replace VICTORY2. Just put the files here and declare them in the [GRAPHICS] part of WADINFO.TXT, like: + + [GRAPHICS] + TITLEPIC + VICTORY2 = SURRENDR + + DeuTex will look here for TITLEPIC.BMP and SURRENDR.BMP (or .GIF). + It will use SURRENDR.BMP for VICTORY2. page 20 ************ Some examples of Graphic entries in DOOM.WAD ************* HELP1 The HELP screen for DOOM 1.666. HELP2 Second HELP screen for DOOM 1.666. HELP The HELP screen for DOOM 2. TITLEPIC The title pic for Doom (320 x 200). CREDIT The credits for DOOM (Don't touch!). VICTORY2 The background of the victory scenes. STCFNxx The fonts for DOOM. STxxxxx Description of the status bar. M_xxxxx Description of the menus. You can read Matt Fell's DOOMSPEC for other entries, or extract them for yourself with DeuTex -graphic -xtract DOOM.WAD. --------- F) \SPRITES --------- Put your new Sprites here in (.BMP) or (.GIF) format. WARNING: DOOM WILL LOCK UP IF YOU ATTEMPT TO REPLACE ONLY SOME OF THE EXISTING SPRITES! Either replace all the Sprites with DEUTEX -iwad -make or replace only some of the Sprites and use DEUSF -add, DEUSF -append or DEUTEX -merge. Suppose you want to redefine SPOSA1 and TROOB2. You want to replace them with SPOSA1.GIF and LIZARD.BMP. Put the files here, and then declare them in the [SPRITES] section of WADINFO.TXT, like: [SPRITES] SPOSA1 TROOB2 =LIZARD DeuTex will look here for SPOSA1.BMP (or .GIF) and LIZARD.BMP. ------- G) \FLATS ------- For new floors and ceilings as 64x64 (.BMP) or (.GIF) files. WARNING: TO USE YOUR NEW FLATS, YOU MUST MERGE YOUR PWAD WITH THE MAIN IWAD, OR USE DEUSF TO PUT ALL THE IWAD FLATS INTO YOUR PWAD. Sorry, but this is a limitation of DOOM, not of DeuTex. Flats inserted here will not crash DOOM when the PWAD is run because I don't use the regular F_START F_END delimiters that confuse DOOM. Your PWAD *WILL* fail when it references those Flats, so heed the warning above. Suppose you want MUDDY.BMP as a new Flat, and HATCH.GIF to replace FLOOR1_7. Put the FILES here, and declare them in WADINFO.TXT, like: [FLATS] MUDDY FLOOR1_7 =HATCH DeuTex will look here for MUDDY.BMP and HATCH.BMP (Then HATCH.GIF), and replace FLOOR1_7 with HATCH.GIF. BUT, SEE WARNING ABOVE! page 21 --------- H) \PATCHES --------- Put new Patches here as (.BMP) or (.GIF). DeuTex will load ANY Patches that have the same name as an existing Patch. They don't have to be mentioned in MYTEXT.TXT. If you want the man in the danger symbol to be a woman, edit the Patch, and throw it in here (use the same name). You don't need to redefine all the Textures that contain it. WADINFO.TXT contains NO [PATCHES] section. The Texture definition file in \TEXTURES describes what Patches go in your new Textures. When DeuTex reads WADINFO.TXT, it finds the name of your Texture definition file in the [TEXTURE1] section (e.g. TEXTURE1). It finds the file TEXTURE1.TXT in \TEXTURES and looks here for any Patches mentioned. Then it looks in \PATCHES for pictures defining the patches. If you declare a NEW or MODIFIED Patch in TEXTURE1.TXT, there MUST be a corresponding .BMP or .GIF file in \PATCHES EXAMPLE: Suppose you want to create a new Texture called MYDOOR, which contains two new Patches called WOODEN0 and KNOB0, and a modified WARNA0 Patch. The new Texture also contains the existing EXIT1 Patch. FIRST: Put WOODEN0.BMP, KNOB0.GIF, and WARNA0.BMP here. THEN: Define your new Texture in TEXTURE1.TXT as shown below: MYDOOR 256 128 ; a 256x128 wall with ... * WOODEN0 0 0 ; a 256x128 background * KNOB0 64 100 ; and a small knob at (64,100) * WARNA0 128 12 ; a lite at top/center * EXIT1 128 32 ; the word exit in the center THEN: Put TEXTURE1.TXT in the \TEXTURES subdirectory. THEN: Tell WADINFO.TXT that TEXTURE1.TXT is the file containing new or modified Textures by declaring it in the [TEXTURE1] section: [TEXTURE1] TEXTURE1 DeuTex will read TEXTURE1.TXT from \TEXTURES. TEXTURE1.TXT tells DeuTex that a new texure called MYDOOR is 256 pixels wide, and 128 pixels high. The asterisks tell DeuTex to look here for the Patches WOODEN0.BMP, KNOB0.BMP, WARNA0.BMP and EXIT1.BMP. The numbers tell it where the Patches go on MYDOOR. Note that WOODEN0 had better be 256x128 or bigger, or there will be at least one void column, and DOOM will complain and stop. If an existing Patch is called for, and no entry by that name exists here, the old Patch will be used. NOTE: DeuTex automatically looks here for ALL Patches mentioned in the generated TEXTURE entry. Normally it will check \PATCHES for all kind of patches, new patches or patches redefining DOOM patches. However, should DeuTex fail to recognise your modifed DOOM patches, put this unrecognised patch in \GRAPHICS and declare it explicitly in the [GRAPHICS] section of WADINFO.TXT.(The new version of DeuTex never demonstrated such a bug, but you never knows, with DOS.) page 22 CHAPTER 6 *************************** DeuTex Commands *************************** -------------------------- A) COMPLETE COMMAND REFERENCE -------------------------- Actually it's not complete, but those commands not mentioned here are for the Visual Basic Shell, and you'll never use them. Commands with an '*' are not implemented in the VB version. I forgot them. All optional commands must appear before non-optional ones or else they will be ignored. The Command Line Format is: DEUTEX <-optional cmd.> ,..., <-non-optional cmd.>,...,etc. ------------- B) HELP COMMANDS ------------- -help* This one won't help you a lot, but it will give you the parameters. -syntax* Prints a short listing of the format of WAD creation directives (wadinfo.txt). See the FORMATS Chapter in this manual for a more complete explanation. ----------------- C) OPTIONAL COMMANDS ----------------- -doom Use this command to indicate the directory containing DOOM.WAD and DOOM.EXE or DOOM2.WAD and DOOM2.EXE. If this command is not used, DeuTex looks first in the current directory for DOOM. Then it looks in the current directory for DOOM2. Then it looks in the root directory of the current drive for a directory called DOOM, and finally looks in the root directory of the current drive for a directory called DOOM2. The first DOOM it finds is used. EXAMPLE: DEUTEX -doom C:\GAMES\DOOM -dir DEFAULT IS: CURRENT DIRECTORY. This defines the working directory, into which you or DeuTex will put the WAD creation directives (WADINFO.TXT). All subdirectories containing PWAD parts will branch from here. The completely assembled PWAD will also reside here. -deu* Use this if you want DeuTex to add 64K of junk at the end of your PWAD. Why? To compensate for a bug in DEU 5.21, that makes it sometimes crash when viewing pictures. That bug is corrected in DEU 5.3. page 23 -rgb Let's you pick what *exact* color DeuTex will use for DOOM's transparent color. The default is CYAN(R=0, G=255, B=255). EXPLANATION: DOOM allows transparent areas in textures. Although there are 256 colors in the DOOM palette, only 255 of them act as colors. Color number 247 (CYAN R=0 G=255 B=255) is used by DOOM as a 'switch' to make that pixel invisible. When DeuTex imports your new graphics into a PWAD, it must assign each pixel one of the DOOM colors. For most of the 16 million colors possible in an RGB format such as .BMP and .GIF, it is just a matter of finding the most appro- priate colors in the DOOM palette to map to your graphic. However, CYAN is more of a 'switch' than a color.It wouldn't be appropriate for DeuTex to say "anything CLOSE to CYAN is transparent". That would be like saying "anything close to LINEDEF type 39 is a teleport". Transparency is a switch, and has to be exact. Some graphics programs may not be able to meet this re- quirement. For example, some programs limit you to 64 (0-63) increments each in Red, Green and Blue. They multiply the result by 4 to get the true RGB value. This is fine for most purposes, but not for DOOM. In any such program, the closest you can get to CYAN is, 0 for Red, 63 for Blue and 63 for Green. When multiplied to get a true RGB value, this becomes R=0, G=252,B=252. You couldn't tell the difference by looking, but DeuTex can. It will take this value and say "Hmmm... Light Blue". Your graphic will be disappointing when you see it in DOOM :-< -rgb 0 252 252 will make you smile again :-) Another example of when you might want to use this command is if you use a raytracer to create your graphics. Most of these programs render the background as black. If you use the option -rgb 0 0 0, things will be much easier. -bmp File format to use when EXTRACTING pictures. DeuTex will -gif recognize either one when STORING pictures in a PWAD. The -ppm DOS version defaults to .BMP; the UNIX version defaults to .GIF. Avoid the 24bit BMP format! Use 8bit (256 color) and have the color quantization done by a serious program. Mine works if you need it, but it's lame. See "What are the Palettes For?" in Chapter 1. -wave File format to use when EXTRACTING Sounds (DeuTex will -au recognize either one when INSERTING Sounds). The DOS -voc version defaults to .WAV; the UNIX version defaults to .AU. -fullsnd* If the real size of the Sound entry is larger than the declared Sound length, -fullsnd enables you to extract the complete Sound entry. It's almost never needed. page 24 -level These tell DeuTex to select Sprites, Patches, Sounds, etc. -lump when composing/decomposing/merging PWADS. These commands -texture can be combined. By default, all entries are selected. -sound -graphic -sprite -patch -flat -iwad To be used with -make, this command makes an IWAD instead of a PWAD. This is necessary if you are building a PWAD which contains all the Sprites and/or all the Flats. This enables you to rebuild the DOOM.WAD if really needed. -------------------------------------- D) COMMANDS TO COMPOSE OR DECOMPOSE PWADS -------------------------------------- -wadir Directory list, with entry identification. Exact entry identification is sometimes impossible in a PWAD. In that case, Sprites, Flats or Patches might be reported as Graphics. -xtract -extract Will extract Lumps, Graphics, Flats, Patches, Sprites, Sounds and Levels from a WAD and put them into a sub- directory having the same name (all .LMPs in \LUMPS, etc). Also lists any Texture entries of the WAD in a file called TEXTURE1.TXT, which it puts in a subdirectory called \TEXTURES. If you are extracting the main DOOM1 WAD, a second Texture file, TEXTURE2.TXT will be extracted. DOOM2 does not have a TEXTURE2 entry. If a given subdirectory does not exist, it will be created. Also creates the file WADINFO.TXT in the working directory. The working directory is the directory the command is entered from unless -dir is used to specify one. See the Chapter 8 - FORMATS for a description of WADINFO.TXT, TEXTURE1.TXT and TEXTURE2.TXT. This command will not overwrite already existing entries. It will complain and stop instead. + -get + + Will retrieve the entry called as picture, sound or + lump, from . if is unspecified + this default to the main WAD. + This is no more than an emulation of DMGRAPH/DMAUD. + -usedtex + + This command will scan the level files in the PWAD, and report + all the texture names that are affectively used. + Use this when you convert PWADs from DOOM to DOOM2 or HERETIC + so as to know which texture you really need. page 25 page 25 -make -build -create Reads WADINFO.TXT and uses it to compose MYOWN.WAD from the files in the subdirectories. See FORMATS for a description of WADINFO.TXT. MYOWN.WAD will be created in the current directory. If it already exists, it WON'T be overwritten, so it must be deleted or moved to create a new version. This command replaces DMGRAPH, DMMUS, DMTEX and DMAUD. (DMAUD recognises more formats than .WAV and .AU, but it doesn't work with DOOM v1.666 or DOOM2). -check Will look for any Textures defined in MYOWN.WAD which contain void columns that would crash DOOM. Use this after modifying Textures (Similar to the way you use checks in DEU). -unused Checks for unused bytes in a PWAD. Reports all the unused zones, total number of byte wasted, and the repartition depending on size of wasted areas. --------------------------------------------- E) COMMANDS FOR MERGING PWADs INTO THE MAIN IWAD --------------------------------------------- -merge Will put the entries of MYOWN.WAD into the main DOOM.WAD file, thereby removing all restrictions DOOM puts on PWADS. This is much safer and much cleaner than inserting or restoring entries with DMGRAPH or such, but your IWAD IS modified. Usually used for Sprites and Flats. -restore Will restore DOOM.WAD and the merged MYOWN.WAD. To be used after the -merge command, to undo the job. Files are reconstructed using information stored in the IWAD at the time the -merge is done. + -join These DeuSF commands are also available for DeuTex + -app -join merges two PWADs, -app appends Sprite and Flats + -add and -add does the same, but in a new PWAD NOTE ON SAFETY: - ONLY 8 BYTES of DOOM.WAD are modified - If all else fails, you can restore your IWAD by hand. - Only about 32k of additional disk space are needed. - MYOWN.WAD is put INTACT into DOOM.WAD. It can then be deleted since -restore recreates it. This is barely a modification at all! page 26 How does it work? - Restoration information is added at the end of the IWAD. - Then the PWAD is pasted intact at the end of the IWAD. - The IWAD directory is rebuilt (about 32K) and appended. - The pointer to the DOOM directory is modified (8 bytes). After all that mess, a directory entry called _DEUTEX_ is added. it is of no use for DOOM/HERETIC, and is just ignored. But if you modify your WAD with some other tool, this entry will still point to the restoration information, enabling DeuTex to salvage the WAD. I did my best to make this command the safest possible. I have tested this command thoroughly and believe it can be trusted. Be aware, however, that the resulting IWAD might not work with DOOM if the included PWAD does not respect some conventions about Sprites and Flats. If this happens, the files are still safe, just -restore them. The conventions a PWAD must follow are: -There must be F_START or FF_START before the first Flat. -There must be S_START or SS_START before the first Sprite. Sorry, but there is NO OTHER WAY if we want to be able to add new Sprites and Flats that are unreferenced in DOOM.WAD. It would be vain to compare the sprites names with those of the IWAD, because it's DOOM.EXE that determines which sprites are which, not the IWAD. And as DOOM.EXE can be hacked, and sprites vary with versions of DOOM, there is really no other choice. page 27 CHAPTER 7 *************************** DeuSF Commands **************************** -------- A) OVERVIEW -------- DeuSF is an improved replacement for DMADDS. It adapts to all versions of DOOM, requires a less perverted PWAD structure, and can append to a PWAD rather than generating a new PWAD (thereby saving space). DeuSF works with PWADs composed for DMADDS, and should work for ones composed for DMADDF. Of course, the PREFERRED PWAD composer for DeuSF is DeuTex! The code for DeuSF is 80% the same as that of DeuTex. The DeuSF -app command is just a modified version of the amazing DeuTex -merge command (the ONLY command that removes ALL PWAD limitations :->) DeuSF need only be applied to PWADS that contain: -some Sprites to replace those of DOOM.WAD. -some Flats to replace those of DOOM.WAD. DeuSF need NOT be used if: - the PWAD contains *all* the Sprites of DOOM.WAD - the PWAD contains *all* the Flats of DOOM.WAD - the PWAD contains Sprites which are not referenced in DOOM.EXE. (a DeHacked patch is needed to have them work) DeuSF can only be used on PWADs that respect a precise format: - Sprites are identified only if comprised between: S_START or SS_START and S_END or SS_END -Flats (floor/ceilings) are identified only if they occur between: F_START or FF_START and F_END or FF_END If this format is NOT respected, DeuSF fails to identify entries correctly. This is because in IWAD and PWAD entries there is nothing internal to a Sprite or Flat that identifies it as such. This format is generated by DeuTex automatically, and is compatible with DMADDS. DeuSF is meant to be distributed with your PWAD, so it has no restrictions on distribution (Unlike DeuTex, see License Section). This lets you send DeuSF with your PWAD, along with a batch file like the one in the following example. Your PWAD contains new Sprites and Flats, but not all of them. Your batch file might read: DeuSF -app mywad.wad DOOM -file mywad.wad -warp x x DeuSF -res mywad.wad First, DeuSF appends the Sprites and Flats from DOOM.WAD to mywad.wad. Then the PWAD is played. The last command deletes the appended Sprites and Flats from mywad.wad, restoring it to it's original condition. This kind of PWAD should PREFERABLY be built with DeuTex. page 28 An example of DeuSF usage on ALIENDOOM 2.2: DeuSF -doom c:\doom -sprite -add ALIENGFX.WAD ALINGRFX.WAD DeuSF reads ALIENGFX.WAD to find what Sprites are missing. It then extracts them from DOOM.WAD and creates a new PWAD, ALINGRFX.WAD from the original PWAD and the extracted Sprites. DOOM.WAD and the original ALIENGFX.WAD are unchanged. Even better: DeuSF -doom c:\doom -sprite -app ALIENGFX.WAD > aliengfx.log DeuSF reads ALIENGFX.WAD to find what Sprites are missing. It then extracts them from DOOM.WAD and appends them to ALIENGFX.WAD. DOOM.WAD is unchanged. If -res doesn't work for any reason, ALIENGFX.WAD can be restored by hand from the information in aliengfx.log You *should* take the time to evaluate this tool even if you're not convinced at all. Trust that this time won't be wasted. DeuSF -join, -merge, -app, -res commands are incredibly more powerfull than those of DMADDS. NWT -as and -af duplicate some of the features of DeuSF, but isn't par to DeuSF yet. Great care involved in designing those DeuSF functions, and DeuSF in not only the most powerfull, it's also the only one ported to other O/S. Let me insist that you should use DeuSF to install your WADs. -------------------------- B) COMPLETE COMMAND REFERENCE -------------------------- All optional commands must appear before all non-optional ones. Otherwise, they are ignored. Command Line Format: DeuSF ,...,,...,etc. ******** 1) HELP COMMANDS -help Lists these parameters. -format Displays a summary of the format conventions a PWAD must follow so that DeuSF can recognize Sprites and Flats properly. -wadir Scrolls the entries in the PWAD directory down the screen, along with what type DeuSF thinks each entry is (Sprite, Flat, Graphic, etc.). For a PWAD with many entries, you may want to pipe this command (i.e. DeuSF -wadir | more) to ease readability. Used to check if DeuSF recognises all the entries correctly, for instance when there is a problem with -app or -add. page 29 ******** 2) OPTIONAL COMMANDS -doom Use this command to indicate the directory containing the DOOM.WAD and DOOM.EXE you want to use. See the description in the DeuTex command reference for default information. For example: DeuSF -doom C:\GAMES\DOOM -sprite Use with -add or -app, to add only Sprites or only Flats. If -flat neither of these commands is present, DeuSF will add both. ******** 3) MANDATORY COMMANDS (one of these will always be used) -add Will create a new file, ALLSF.WAD, containing all the Sprites and/or Flats of DOOM.WAD together with those contained in MYOWN.WAD. This is exactly like DMADDS ...but cleaner. -app Will append to MYOWN.WAD only those Sprites and/or Flats of DOOM which are not redefined. This saves disk space, compared to -add command. + -join + + Will append to THIS.WAD all the Sprites and Flats contained in + THAT.WAD. This function enables you to merge two Sprite and/or + Flats PWADS obtained from different sources. I added this + command so that I could play CHOOK and BARNEY together. + TEXTURES and PNAMES entries of both THIS.WAD and THAT.WAD. + If entries are conflicting, thoses of THAT.WAD have priority. + Avoid conflicts! -join is not really clever. + + NOTE: After using -join on PWADS, you still have to + use -app on the combined PWAD to append the + remaining Sprites and Flats from DOOM. + + -res + + Restores a PWAD which had been modified with -app command. + Quite safe. Performs the same function as -restore in DeuTex. + If a PWAD was merged inside another one (using -join), then + that PWAD regenerated also. Now *that's* real cool! page 30 CHAPTER 8 ******************************* FORMATS ******************************* ---------------------------- A) The WAD Creation Directive WADINFO.TXT ---------------------------- ******** 1) OVERVIEW The creation directive file is used by the DeuTex -make command to compile a PWAD containing all of the desired enhancements. It is automatically generated by the -xtract command and placed in the working directory (e.g. MYWAD\). You can rename this file whatever you like, and reference it when you use the -make or -merge commands. + The file lists most of the entries which will be present in the PWAD + file (with the exception of PATCHES and PNAMES, see note below). It is + structured similarly to a Windows .ini file with sections headed by + names enclosed in brackets.It contains up to 7 sections: [LEVELS], + [LUMPS], [TEXTURE1], [SOUNDS], [GRAPHICS], [SPRITES] and [FLATS]. + For DOOM1, there can be an eighth section called [TEXTURE2]. + + All sections are optional. Starting with DeuTex version 3.0, the order + of the sections is not critical. The name of the section IS critical, + and must be spelled correctly. NOTE: There is no [PATCHES] section. Patch loading is automatic. If a new Patch is referenced in a Texture, DeuTex will look for it in \PATCHES. If there is a Patch in \PATCHES with the same name as an existing Patch, DeuTex will automatically find it and load it. There is no need to reference a redefined Patch in a Texture definition, unless it is part of a new or redefined Texture. There is also no need to define PNAMES. PNAMES creation is automatic. The names TEXTURE1 and TEXTURE2 refer to the OLDTEX1.TXT and OLDTEX2.TXT files as extracted from DOOM. Unlike previous versions, DeuTex doesn't need these files. They exist only for you. They are useful in examining the makeup of textures in the WAD. They also make redefining existing Textures easier by allowing you to cut and paste instead of typing the redefined Texture from scratch. DeuTex 3.3 takes all the information on existing Textures directly from the main WAD while building your PWAD. Any new definitions supplied by you will override those in DOOM. A warning will be given to inform you of this. This is a great improvement and makes DeuTex even easier than before! Previous versions of this manual also generated confusion over where, how, and if you need to use OLDTEX2.TXT (then named TEXTURE2.TXT) The short answer from now on is: NOWHERE, NOHOW and NO! Since DeuTex 3.1, [TEXTURE1] and [TEXTURE2] are separate sections. There is ONLY ONE case where you will use [TEXTURE2]. This is when you are using DOOM1 and you redefine a TEXTURE2 Texture. OLDTEX2.TXT does NOT need to be present, even in this situation. Use it for your edits. If your PWAD is for DOOM2, or is for DOOM1 and doesn't change any TEXTURE2 Textures, IGNORE all references to TEXTURE2 in this document! page 31 ******** 2) EXACT FORMAT for WADINFO.TXT The following pages show the exact format for all the entries in a PWAD Creation Directive File (i.e. WADINFO.TXT or YOURNAME.TXT). All main sections are optional. Order of sections is unimportant. The Symbols used in the Format Listing are as follows: SYMBOL DEFINITION _______________________________________________________________________ | | | | x and y | Numbers for offsets, levels, etc. | |________________________|____________________________________________| | | | | aaaa, bbbb and cccc | YOUR name for a given item (8 char max). | |________________________|____________________________________________| | | | | qqqq, rrrr and ssss | VARIABLE parts of a DOOM name. | |________________________|____________________________________________| | | | | CAPITAL LETTERS | MANDATORY parts of an entry. | |________________________|____________________________________________| | | | | DOOM name '=' aaaa | DeuTex will insert 'aaaa' as 'DOOM name'. | |________________________|____________________________________________| | | | | brackets [ ] | Define main sections in the file. | |________________________|____________________________________________| | | | | parentheses ( ) | These entries are optional. | |________________________|____________________________________________| | | | | asterisk '*' | Reuse the resource from the previous line. | |________________________|____________________________________________| | | | | dot+comma ';' | 'Comment' follows. (Windoze standard) | | pound sign '#' | 'Comment' follows. Rest of line ignored. | |________________________|____________________________________________| | | | | 'white space' (spaces) | Ignored by DeuTex. | |________________________|____________________________________________| page 32 Listing of the Format for WADINFO.TXT: ; ; DeuTex by Olivier Montanuy (montanuy@lannion.cnet.fr) ; ; PWAD creation directives ; ; [LEVELS] ; Section to define the Level of your map(s). ; MAPxx (=aaaa) ; If '=aaaa' and '=bbbb' are used, looks in \LEVELS for ExMy (=bbbb) ; aaaa.WAD and bbbb.WAD. If '=aaaa' and '=bbbb' are not ; used, looks in \LEVELS for MAPxx.WAD and ExMy.WAD. ; Combines them into one PWAD containing MAPxx and ExMy ; ; DeuTex does not care about the internal Level of ; aaaa.WAD or MAPxx.WAD. It will output the PWAD as ; whatever MAPxx or ExMy is put here. Easy conversion. ; ; ExMy can be E1M1 thru E3M9. ; MAPxx can be MAP01 thru MAP35. ; MAPS 33, 34 and 35 will play, but can only be entered ; by IDCLEV. An EXIT LEVEL switch on 33, 34 and 35 will ; just return you to DOS. ; ; If ExMy and MAPxx are entered in the same PWAD, ExMy ; will play from DOOM1 and MAPxx will play from DOOM2, ; IF there are no Texture additions to the PWAD. It is ; still possible with Textures, but is a can of worms, ; and you'd better know what you're doing. ; ; Thus, it is possible to make a 62 Level PWAD with ; DeuTex, although some imagination would be needed to ; overcome the limitations of Levels 33, 34 and 35 in ; DOOM2, and only about half the wad would be available ; to each DOOM engine. This may be useless, but since ; it's possible, it is included here. ; ; [LUMPS] ; Section to define any .LMP data you want to add. ; Chapter 5, Section B) describes Lumps. ; qqqq (=aaaa) ; If '= aaaa' is used, looks in \LUMPS for aaaa.LMP. If ; '= aaaa' is not used, looks for qqqq.LMP. Installs the ; .LMP data in the PWAD to replace qqqq in DOOM. ; rrrr (*) ; If '*' is used, .LMP from the previous entry is used ; for this entry as well. When you play the PWAD, qqqq ; will be used for both qqqq AND rrrr. ; ; page 33 [TEXTURE1] ; Section for declaring what Texture definition files you ; want to use when compiling your PWAD. ; aaaa ; First loads TEXTURE1 from the main DOOM or DOOM2 WAD. (bbbb) ; Then looks in \TEXTURES for aaaa.TXT. Compiles your PWAD (cccc) ; Texture directory by: TEXTURE1 - (redefined Textures in ; aaaa.TXT)+(ALL textures in aaaa.TXT) = TEXTURE1 in PWAD. ; ; If 'bbbb' and 'cccc' are used, DeuTex searches for ; bbbb.TXT in \TEXTURES, RE-edits the TEXTURE1 entry using ; it, then gets cccc.TXT and repeats the process. This ; means that if any duplicate Texture names exist in aaaa, ; bbbb and cccc, only the entry from the last file listed ; will be present in the final PWAD. ; [TEXTURE2] ; Used only for DOOM1. Shows what Texture definition aaaa ; file(s) to use for TEXTURE2. Similar to above. ; ; [SOUNDS] ; Section to define your modified Sound entries. ; DSqqqq (=aaaa) ; If '=aaaa' is used, looks in \SOUNDS for aaaa.WAV ; (Sound effect). If '= aaaa' isn't used, looks for ; DSqqqq.WAV. Uses file to replace DOOM sound DSqqqq. ; DPqqqq (=aaaa) ; If '=aaaa' is used, looks in \SOUNDS for aaaa.TXT ; (PC Speaker Sound). If '= aaaa' is not used, looks ; in \SOUNDS for DPqqqq.TXT. Uses file to replace ; DOOM PC Speaker Sound DPqqqq. ; D_qqqq (=aaaa) ; If '=aaaa' is used, looks in \SOUNDS for aaaa.MUS ; (Music file in DOOM's .MUS format). If '=aaaa' is ; not used, looks for D_qqqq.MUS. Uses file to replace ; DOOM Music D_qqqq. ; D_rrrr (*) ; If '*' is used, the Sound from the previous entry is ; used for this entry as well. In this example, when ; you play your PWAD, D_qqqq will be used for both ; D_qqqq AND D_rrrr. ; ; [GRAPHICS] ; Section used to declare Graphics other than ; Sprites, Flats, or Textures. See Chapter 5, ; Section E) or Matt Fell's DOOM SPECs for a ; description of Graphic entries in DOOM. ; qqqq (xx)(yy) (=aaaa) ; If '=aaaa' is used, looks in \GRAPHICS for ; aaaa.BMP. If not found, looks for aaaa.GIF. ; If '=aaaa' is not used, looks for qqqq.BMP ; or .GIF. Inserts the file in PWAD for entry ; qqqq. xx and yy are the horizontal and ; vertical offsets used when inserting the ; Graphic into it's defined area. The defined ; defined area is predetermined by DOOM.EXE ; from the Graphic name. ; page 34 ; For example, all Graphics beginning with STF ; are placed in a box 31 x35 pixels big at the ; center of the Status Bar. This is where the ; player's face shows up. The xx and yy values ; move the Graphic around in this box. Pos- ; itive values move it left (xx) and up (yy). ; rrrr (*) ; If '*' is used, will re-use the Graphic from ; the previous line for rrrr too. ; ; [SPRITES] ; Section used to declare Sprites. Consult the ; following for more information on modifying ; Sprites in DOOM: ; Chapter 3 - Section C) ; Chapter 5 - Section F) ; Chapter 6 - Section E) ; Chapter 7 - All Sections ; qqqq (xx)(yy) (=aaaa) ; If '=aaaa' is used, looks for aaaa.BMP or ; .GIF in \SPRITES. If '=aaaa' is not used, ; looks for qqqq.BMP or GIF. Inserts the file ; into the PWAD to replace the Sprite qqqq. ; rrrr (*) ; '*' tells DeuTex to use the previous entry ; (qqqq) for this Sprite as well. ; ; [FLATS] ; Section for declaring modified Flats. Limitations ; are similar to the ones for modifying Sprites. See ; [SPRITES] section above for places to find info. ; qqqq (=aaaa) ; If '=aaaa' is used, looks for aaaa.BMP or .GIF in ; \FLATS. If '=aaaa' is not used, looks for qqqq.BMP or ; .GIF. Inserts file into PWAD as replacement for qqqq. ; ; There are no insertion points for Flats, since they ; all MUST be 64x64. ; ; ; End File. page 35 ******** 3) An EXAMPLE LISTING of WADINFO.TXT The following is a commented example of PWAD creation directives, A space or any text after a ';' or '#' to the end of a line is ignored. Not all entries need be present, and order of [SECTIONS] is optional. ************************ WADINFO.TXT ***************************** ; ; The [LEVELS] section defines the DOOM1 Levels and DOOM2 maps. ; [LEVELS] E1M2 ;file loaded: LEVELS\E1M2.WAD MAP04 ;file loaded: LEVELS\MAP04.WAD E2M3 =TRINITY ;file loaded: LEVELS\TRINITY.WAD ;if more than one Level, E2M3 is read ; ; All .WADs referred to here must contain the 11 entries that ; define a Level, including NODES, BLOCKMAP and REJECT. Use ; IDBSP and RMB to build them. ; ; The [LUMPS] section defines the Lumps of raw data for DOOM. ; [LUMPS] ENDOOM ;file loaded: LUMPS\ENDOOM.LMP DEMO1 ;file loaded: LUMPS\DEMO1.LMP DEMO2 =KILLJOHN ;file loaded: LUMPS\KILLJOHN.LMP ; ; See Directory Structure - LUMPS\ for a precise description of all ; these entries. Apart from the DEMO or possibly ENDOOM, there is no ; real need to mess with them. DEMOs can be recorded by DOOM. ; ; The [TEXTURE1] section lists the names of the Texture definition files ; from \TEXTURES that are to be used for TEXTURE1. ; [TEXTURE1] ;DeuTex will first read TEXTURE1 in DOOM.WAD ; TEXTURE1 ;file read: \TEXTURES\TEXTURE1.TXT MYWALLS ;file read: \TEXTURES\MYWALLS.TXT MYSWITCH ;file read: \TEXTURES\MYSWITCH.TXT ; ; The new Textures found in these files are placed at the end of the ; Texture list. If they have the same name as an entry in OLDTEX1, ; (that is: the old DOOM texture) then that entry is deleted. ; ; The [TEXTURE2] entry is not needed for DOOM2 ; [TEXTURE2] ;DeuTex will first read TEXTURE2 in DOOM.WAD. ; TEXTURE2 ;file read: \TEXTURES\TEXTURE2.TXT ; ; The new Textures found in this file are placed at the end of the ; Texture list. If they have the same name as an entry in TEXTURE2, ; that entry is deleted. ; ; BEWARE: don't duplicate TEXTURE1 entries in TEXTURE2. ; DOOM Doesn't care, but it crashes some Level ; editors. ; page 36 ; The [MUSICS] section defines MUSIC ; D_E2M3 ;file loaded: SOUNDS\D_E2M3.MUS (doom1 music). D_RUNNIN ;file loaded: SOUNDS\D_RUNNIN.MUS (doom2 music). D_ROMERO * ;no file loaded! The '*' copies D_RUNNIN to D_ROMERO. ;now DOOM will think D_ROMERO=D_RUNNIN. D_SHAWN3 =KATEBUSH ;file loaded: SOUNDS\KATEBUSH.MUS. ;The music for SHAWN3 will be KATEBUSH. ; ; D_E2M3 is the music for Episode2 Mission 3 of DOOM. ; In DOOM2, it's a real mess. The Music name is not related ; to the Level name, but to the guy who made the Level. ; MUS format can be obtained from MIDI with MIDI2MUS, or ; converted back to MIDI by MUS2MIDI (by just_joe). ; These are separate utilities (too technical for DeuTex) ; ; The [SOUNDS] section defines PCSOUNDS and WAVE SOUNDS ; [SOUNDS] DSSLOP ;file loaded: SOUNDS\DSSLOP.WAV, .AU or .VOC DSPISTOL =BOIING ;file loaded: SOUNDS\BOIING.WAV, .AU or .VOC ;this is a WAV Sound, meant for sound cards. ; DPSLOP ;file loaded: SOUNDS\DPSLOP.TXT ;this is a PC speaker Sound. ; ; The WAV, AU and VOC format were hacked. ; DeuTex can't read compressed data. ; The format PC-speaker Sound is a list of integers ; (range 1-255). related to sound pitch... ; ; ; The [GRAPHICS] section defines all the fixed pictures. ; (Not Sprites, Patches, or Flats) ; [GRAPHICS] WIMAP1 ;file loaded: GRAPHICS\WIMAP1.BMP. STHURT1 23 45 ;file loaded: GRAPHICS\STHURT1.BMP. ;set the insertion point to 23,45. STHURT2 * ;DOOM will use STHURT1 for STHURT2. VICTORY2 0 12 =SULACCO ;file loaded: GRAPHICS\SULACCO.BMP ;set the insertion point to 0,12. ;SULACCO.BMP will now replace VICTORY2. ; ; Fixed pictures include: opening screen, ; texts (!), menus, status bar, ending pictures ... ; You can only use names already defined in DOOM. ; Otherwise DOOM will ignore them. (you'll be warned :-) ; ; This section declares the Sprites. ; [SPRITES] BOSSB1 ;File loaded: SPRITES\BOSSB1.BMP or .GIF ;calculate insertion point by itself. BOSSA1 10 20 ;File loaded: SPRITES\BOSSA1.BMP or .GIF ;set the insertion point to 10,20. BOSSA2A8 * ;DeuTex will set BOSSA2A8 equal to BOSSA1 VILEA1 30 40 =BILLGATE ;File loaded: SPRITES\BILLGATE.BMP or .GIF ;VILEA1 will now be BILLGATE.BMP page 37 ; If you redefine ALL Sprites, use the -iwad option. ; Otherwise, you'll have to use DeuSF to rebuild a complete Sprite PWAD ; each time the WAD is played. This is because of a limitation of DOOM ; which still has not been removed (ask ID software about it). ; ; ; Don't declare your Patches. ; A Patch, say xxxx, will automatically be loaded into ; the PWAD from the file PATCHES\xxxx.BMP (or .GIF) if: ; ; 'xxxx' is referenced in one of the Texture files, as a Patch. ; or 'xxxx' exists as a Patch in the original DOOM. ; ; ; ; The [FLATS] section declares the Floors and Ceilings ; [FLATS] GRASS ;file loaded: FLATS\GRASS.BMP (or .GIF) HERBE * ;DOOM will think HERBE is the same as GRASS BLOOD1 = MUDDY ;file loaded: FLATS\MUDDY.BMP ; All these files must be 64x64 pixel pictures. ; ; You can define new Flat names, or redefine existing Flats, but unless ; you redefine the complete list of Flats, and use the -iwad option, you ; need to use DeuSF to rebuild the complete Flat list whenever you want ; to use the PWAD. ; ; ; WAD creation directives end here. ; page 38 ----------------------------------- B. The Texture Definitions Text File \TEXTURES\MYTEXT.TXT ----------------------------------- ******** 1) OVERVIEW Some Notes on Texture definitions: - READ the DOOM SPECS by Matt Fell. - You can create Textures for transparent walls (see DeuTex Commands -rgb), but make sure that they're composed of only one Patch. Otherwise, you'll get the Medusa Effect. - Avoid using a Texture less than 128 pixels high on a wall higher than the Texture (Tutti Frutti effect). - Texture widths should be rounded to the next power of 2. (8,16,64,128,256,512,1024 are usable) - Patches composing Textures can not be more than 320 pixels wide. - DOOM will ignore any portion of Textures higher than 128 pixels. - You can create a non repeating sky Texture: Define the SKY1 (or SKY2, SKY3, RSKY1, RSKY2, RSKY3) entry as a 1024x128 area cover it with Patches. Note that SKY Patches appear horizontally inverted. 0=east, 256=north, 512=west, 768=south. - Make sure all Textures are completely covered by Patches. Otherwise, DOOM will puke (void column error). - You can create animated walls with (almost) any sequence of pictures. No known limit in the number of frames (27 is OK!). The way to do this is: Edit the Textures of one of DOOM's existing animated walls (beginning and end). Use the original names for these entries. They are coded into DOOM.EXE. Add the other frames for your animation between these entries in your Texture list. - READ the DOOM SPE.... Well, you get the picture >;-{]> Once you have created a new PWAD, check it with the -check command. DeuTex will complain if: - Any Texture width is NOT a power of 2 (2,4,8,16,32,64,128,etc). (DOOM will round to the next lower power of 2) - Any Texture height is greater than 128. (DOOM ignores everything above 128) - Any Texture is not completely covered by Patches. (DOOM will exit with a void column error) - A Level tries to use of an undefined Texture. A Texture entry consists of: (Texture Name) (WIDTH) (HEIGHT) * (Patch1) (X offset)(Y offset) * (Patch2) (X offset)(Y offset) * (Patch3) (X offset)(Y offset) . . . . . . . . . . . . * (PatchN) (X offset)(Y offset) This format is supported by both New Wad Tool and the Visual Basic shell for DeuTex, so use the one you prefer, to build your Textures. page 39 Texture Names are 8 characters or less. Width and Height are in pixels. An asterisk '*' identifies the following word as a PNAME. Patch Names are 8 characters or less. X and Y offsets are pixel measurements. Offsets are measured from upper-left corner (0,0). X = positive. Offset Patch to the right. X = negative. Offset Patch to the left. Y = positive. Offset Patch down. Y = negative. Offset Patch up. The following figure is a feeble attempt to illustrate this: _______________________ | | ^ | PATCH 1 | | | Both x and y | Y | have negative | | | offsets. _______|_v_______________________________________ | | | ^ | ^ | | | | TEXTURE | | | | | | | | | | | Y | | | | | | | | |_______________|_______| | | H | __v_______________________ | E <----- X ----->| | | | I | | PATCH 2: | | G | | Both x and y have | | H |<------- X ------->| positive offsets. | | T | | | | | | | | | | | | | | | | |__________________________| | | | | | |_________________________________________________| v <-------------------- WIDTH ---------------------> TEXTURE DEFINITION SHOWING PATCH OFFSETS page 40 ******** 2) An EXAMPLE LISTING of MYTEXT.TXT Texture Definition File Example *************************** TEXTURE1.TXT ****************************** ; ; Anything following a ';' or ';' is ignored (comment). ; ; An asterisk '*' at the beginning of a line indicates a Patch. ; ; ASHWALL is a Texture 64 pixels wide, and 128 pixels high. ; It contains only one Patch, W104_1, with no offset. ; ASHWALL 64 128 * W104_1 0 0 ; ; BIGDOOR7 is a Texture of size 256x128 (X size, Y size) composed of two ; Patches, W105_1 and W105_1 placed at offset -4,-4 and offset 124, -4. ; BIGDOOR7 256 128 * W105_1 -4 -4 * W105_1 124 -4 ; ; FLOWER is a new Texture (didn't exist in DOOM.WAD). ; It is composed of an old Patch. ; FLOWER 32 128 * TP5_1 0 0 ; ; BLODGR2 redefines the old BLODGR2 Texture ; to be composed of the new Patch BIRDY ; BLODGR2 34 128 * BIRDY 0 0 ; ; A new Texture, HADDOCK, composed of new and old Patches. ; HADDOCK 64 128 * FISH1 0 0 * BIGFISH 23 44 * TP5_1 0 0 ; ; Example of wall animation. ; ; Start with the first entry of an existing animation (FIREBLU1). ; Insert additional entries as needed for your animation (ZZZ...). ; End with the closing entry of the existing animation (FIREBLU2). ; When FIREBLU1 is used in your PWAD, it will have your animation! ; Notice that the example uses Sprites as Patches. DOOM don't know ; and DOOM don't care! ; FIREBLU1 128 128 ;First frame is a redefined * WALL62_1 0 0 ;DOOM animated Texture. These * BOSSA1 83 47 ;are called in the DOOM.EXE. * GOR2A0 20 -70 ZZZA 128 128 ;Frame 2 inserted. * WALL62_1 0 0 * BOSSB1 75 47 * GOR2A0 20 -50 page 41 ZZZB 128 128 ;Frame 3 inserted. * WALL62_1 0 0 * BOSSC1 71 47 * GOR2A0 20 -35 ZZZC 128 128 ;Frame 4 inserted. * WALL62_1 0 0 * BOSSD1 61 47 * GOR2A0 20 -25 ZZZD 128 128 ;Frame 5 inserted. * WALL62_1 0 0 * BOSSF1 47 47 * GOR2A0 20 -20 ZZZE 128 128 ;Frame 6 inserted. * WALL62_1 0 0 * BOSSE8 54 47 * GOR2A0 20 -17 ZZZF 128 128 ;Frame 7 inserted. * WALL62_1 0 0 * BOSSE7 68 47 * GOR2A0 20 -16 ZZZG 128 128 ;Frame 8 inserted. * WALL62_1 0 0 * BOSSE6 64 47 * GOR2A0 20 -17 ZZZH 128 128 ;Frame 9 inserted. * WALL62_1 0 0 * BOSSF5 60 47 * GOR2A0 20 -20 ZZZI 128 128 ;Frame 10 inserted. * WALL62_1 0 0 * BOSSF4 63 47 * GOR2A0 20 -25 ZZZJ 128 128 ;Frame 11 inserted. * WALL62_1 0 0 * BOSSD2D8 64 47 * GOR2A0 20 35 ZZZK 128 128 ;Frame 12 inserted. * WALL62_1 0 0 * BOSSB1 68 47 * GOR2A0 20 -50 ZZZL 128 128 ;Frame 13 inserted. * WALL62_1 0 0 * BOSSC1 70 47 * GOR2A0 20 -70 FIREBLU2 128 128 ;Fourteenth Frame is an * WALL62_1 0 0 ;edited FIREBLU2, which is * BOSSB1 73 47 ;the last frame of the * GOR2A0 20 -64 ;DOOM animated Texture. ; ; End of example ; ; ; file ends here. bye! page 42 --------------------------- *** [PART THREE] ALL THE REST *** --------------------------- CHAPTER 9 *************************** NECESSARY STUFF *************************** ------------------------------ A) DeuTex/DeuSF License Agreement ------------------------------ DeuTex/DeuSF is copyright (c) Olivier Montanuy 1994. The GIF code was from a source (c) David Koblas. DeuTex code was originally derived from DEU5.21 by Brendon Wyber and Raphael Quinet. DeuSF is inspired from DMADDS by Bernd Kreimeier DeuTex/DeuSF is a Freeware set of tools. DeuTex is Freeware but NOT public domain. DeuSF can be freely distributed with PWADS as part of their install. Here are the restrictions on the usage of DeuTex: - You shall not use these tools to extract or insert copyrighted material in DOOM IWADs and PWADs. You are especially not allowed to use them to build any 'shareware' DOOM version. - You are not allowed to modify or reverse engineer these tools. (sources will be available to you if I feel you can be trusted) - You cannot distribute these tools commercially without my written consent. This includes all kind of non free distribution (shareware, charging for uploads, or selling it on any kind of media). *Compuserve is allowed to distribute DeuTex/DeuSF without restrictions* - Anything you build with this tool shall be free for everyone, unless you get written permission from me. - DeuTex must be distributed with all the files in this package, including DeuSF, the manual and this license. Only DeuSF can be distributed separately, for reasons mentioned above. - I will accept no liability for any damage resulting from the use of this program. Remember it is freeware. There is no evil intent anywhere in the source of this program, but I can't guess what the compilers might have hacked out of it, or how your system will feel about it. page 43 ----------- B) Legal Stuff ----------- *********************************************************************** * Please DON'T bother ID software, Raphael Quinet, Brendon Wyber, * * or any of the people mentioned in this manual, with questions * * related to DeuTex * *********************************************************************** If you need information, here are the only sources: Olivier Montanuy (DOS and Unix problems) Kevin McGrail (Manual and Explanations) Mark Mathews (OS/2 problems) Per Allansson (Linux problems) Why is DeuTex Copyrighted? It's so that I can make the following requirement, which would be impossible with Public Domain status: YOU ARE NOT ALLOWED TO MAKE ANY MODIFICATIONS TO THIS PROGRAM OR TO THE INCLUDED FILES. ALL THE FILES INCLUDED IN THIS PACKAGE SHALL BE RELEASED TOGETHER. If you want modifications, ask me, I'll do my best. Later on I'll release the source, when stabilized. USE AT YOUR OWN RISK. NO LIABILITY IS ACCEPTED. It runs under DOS, so behavior is unpredictable . YOU ARE NOT ALLOWED TO MAKE ANY KIND OF PERSONAL PROFIT BY SELLING, RENTING, LEASING, OR USING THIS PROGRAM, WITHOUT MY EXPLICIT WRITTEN CONSENT. If you are interested in distributing it on a CD or any other media, contact me first. I should accept, provided: - you keep the price low, for maximum availability. - you send me a free copy. SPECIAL EXCEPTION: CompuServe is allowed to charge normal upload fees to distribute this program, provided I receive (by e-mail) a monthly report of the total number of said uploads. * All right folks, it was a shame, but it had to be stated somewhere... page 44 ------------------------- C) Where to get DeuTex/DeuSF ------------------------- DeuTex and DeuSF are meant to be available by anonymous FTP on Internet sites: the same as of those of DEU: infant2.cdrom.com,ftp.luth.se,iglou.com,... /pub/doom/deu /pub/doom/wad_edit/misc DeuTex and DeuSF are available on Compuserve, by special request of Dr. Sleep: GAMERS FORUM LIB 8 ACTION GAME AIDS [CIS:GAMERS] PC WORLD FORUM LIB 22 The DOOM ROOM [CIS:PWOFORUM] DeuTex/DeuSF can be made available on any free of charge BBS. Though a freeware tool, DeuTex cannot be distributed by shareware vendors without my written agreement. DeuSF can be freely distributed, because it is meant to help install some PWADs, and thus is not subject to any restrictions. You might also want to try: NWT by Denis A good DOS Tool, easy to use. ideal for making small changes. Texture text format compatible with DeuTex. DOOMTEX by Steve McCrea A list of tools to generate Textures. It's not exactly user friendly, but successfully used for TRINITY.WAD. For hackers only :-) I *do* hope you'll find DeuTex a bit easier to use, but Steve was a pioneer in the area of Texture editing! WACKER by Keith Wilkins A Graphic Texture editor. I could not test it, but it should be good. It would be a good idea to use it in combination with DeuTex. page 45 --------------------- D) Version Information --------------------- New in version 3.3 - Sound formats are not hacked anymore. - Bug corrections and simplifications, for easier maintenance. - Loading of patch is still automatic. I have to do something... - Commands -merge, -app and -join have been improved and securized. -------------- E) Known Problems -------------- - Color quantization is faster, but optimised for the DOOM and HERETIC palettes supplied with DeuTex. Else, it's slower and a bit lossy. - Identification of entry types does not always work with PWADS made by programs other than DeuTex. There is no general solution to this problem, only my best effort. Sprites and Flats could be missed if certain conventions are not respected. Misidentified entries are stored as Lumps. - GIF format defaults to GIF87. - No MIDI support. MUS format is too complex to understand. No time. - DeuSF does NOT test that all REQUIRED Sprite viewpoints are available if you change the number of viewpoints. DOOM will lock up if you forget one of the Sprite viewpoints. - If the -app command is interrupted, the PWAD file becomes bigger due to appended waste data, but it is still operational. - DeuSF says stupid things if no command is given. - Source is not INCLUDED. It's available to you only if you want to port DeuTex to a new environement. When DeuTex is finished, the source will be released. *LIMITATIONS of DOOM - Sprites in PWADs only work if you don't reuse existing Sprites. Use DeuSF or DMADDS if you want to replace Sprites. Actually, DeuTex -merge will also work. (and better!) - Flats don't work in PWADs. Use DeuSF or DMADDS if you want to replace Flats. Deutex -merge will also work. (and better!) *LIMITATIONS of HERETIC - Sprites in PWAD don't work at all. use -merge. I don't know why... page 46 ------ F) THANKS ------ First, thanks to you for taking the time to evaluate DeuTex/DeuSF. I know my program is not trivial to use, and might be tricky to understand, but I really think it's worth the trouble. DeuTex/DeuSF would not have existed without the help of these people: Steve McCrea Author of TRINITY.WAD and DOOMTEX. Raphael Quinet Examples of GIF and DEU code. (quinet@montefiore.ulg.ac.be) Denis Moller Author of NWT. Securisation and (denis@doomsday.sh.de) compatibility of DeuTex and NWT. Elias Papavassilopoulos Doom technical information. (ep104@cus.cam.ac.uk) Matt Fell Doom specs version 1.666 (matt.burnet@acebbs.com) Keith Wilkins Author of Wacker, first Texture (spike@nectech.demon.co.uk) composer. Try it! Tom Neff Doom technical information. (tneff) Bern Kreismeier Author of DMADDS/DMADDF (bernd@nero.uni-bonn.de) Dewi Morgan Unashamed flattery that lead me to (D.Morgan@bradford.ac.uk) create DeuSF from DeuTex code. ID software For the DEUTEX/DeuSF test bench, also (help@idsoftware.com) known as 'DOOM', 'DOOM2' or 'HERETIC' Raven software For those cool graphics in HERETIC. (and for messing with color palettes) Special Thanx to: Mark Mathews DeuTex OS/2, DJGPP port. (mark.mathews@channel1.com) Improvements and suggestions. Per Allansson DeuTex Linux version. (c91peral@und.ida.liu.se) James Bonfield DeuTex DEC ALPHA port Chuck Rossi DeuTex SGIx port page 47 -------------- THANKS (cont.) -------------- Thanks to all of you who reported bugs and proposed corrections or generally supported my efforts: Leonard Czajka leonardc@halcyon.halcyon.com Herve.Benvel Herve.Benvel@inria.fr Paolo Hutchison paolo@netcom.com M. Kernaghan mkernagh@julian.uwo.ca Thierry Vermat vermat@evol10.univ-lyon1.fr Jeremy Blackman ranma@eskimo.com Jason Mezzacca 72510.3424@compuserve.com C. Gasparo cgasparo@cymbal.aix.calpoly.edu Avery Andrews andaling@durras.anu.edu.au (I'm maybe forgetting you!) Thanks to Justin Fisher for letting me use DeuTex and DeuSF on a new install for Alien-TC (despite all the small mistakesI made). Now comes the guy YOU all want to thank: HevKev, also known as Kevin McGrail, novice Manual Editor. 74107.1254@compuserve.com Before his contribution, I was the only one who knew how to use DeuTex. Now some of you might understand enough about DeuTex to use it in your great DOOM conversions project. page 48 ----------- G) FINAL WORDS (AT LAST) ----------- Thanx for trying DeuTex. I did my best to make it the easy to use, bug free, and portable. However, it's not entirely trivial to use. I can't spend my life on a freeware tool. If you can't understand this tool, chances are your contribution to DOOM fandom will be quite limited. Remember, I only worked to make your life as simple as it could be, so that even non-specialists could produce something cool for DOOM. But don't forget that it takes some time, some dedication, and some genius also, to make something as great as Aliens-TC. Olivier Montanuy, E-Mail: montanuy@lannion.cnet.fr Work time mailbox (avoid) montanuy@dmi.ens.fr Leisure time mailbox montanuy@idsoftware.com Dream time mailbox Address: Manoir de Keringant, St Quay Perros, 22700 Perros Guirec, FRANCE This is in Bretagne (Brittany), the westernmost part of France. Phone: +33 96482047 (time: UTC+1) modem: USR 14400 Worldport LITE Modem Fax. (I'm a real easy frag.) page 49 APPENDIX I Switch Textures in DOOM.WAD SW1BRCOM 128 128 * WALL62_1 0 0 * SW1S0 48 72 SW1BRN1 64 128 * WALL02_2 0 56 * WALL02_2 0 0 * SW3S0 16 75 SW1BRN2 64 128 * WALL02_2 0 56 * WALL02_2 0 0 * SW4S0 20 79 SW1BRNGN 64 128 * WALL62_2 0 0 * SW4S0 20 80 SW1BROWN 128 128 * WALL62_1 0 0 * SW3S1 48 72 SW1COMM 64 72 * W13_1 0 0 * SW1S0 15 18 SW1COMP 64 128 * COMP03_4 0 64 * COMP04_5 0 0 * COMP03_4 32 64 * SW2S0 16 72 SW1DIRT 64 128 * WALL00_7 32 0 * WALL00_6 16 0 * SW1S0 16 20 * WALL00_6 0 -16 * WALL00_7 48 0 SW1EXIT 32 72 * W32_4 0 0 * SW2S0 0 16 * W33_8 0 64 SW1GRAY 64 128 * W31_1 0 0 * W31_1 0 64 * SW2S0 16 70 SW1GRAY1 64 128 * W31_1 0 64 * W31_1 0 0 * SW4S0 19 79 SW1METAL 64 128 * WALL03_7 0 0 * WALL03_7 0 64 * SW4S0 20 68 SW1PIPE 128 128 * TP2_2 0 0 * SW3S0 48 76 page 50 SW1SLAD 64 128 * WLA128_1 0 0 * WARNB0 24 73 SW1STARG 128 128 * SW19_3 64 0 * SW19_4 0 0 * SW3S0 48 76 SW1STON1 64 128 * W28_8 0 64 * W28_8 0 0 * SW1S0 16 78 SW1STON2 64 128 * W28_5 0 0 * W28_8 0 64 * WARNB0 24 73 SW1STONE 64 128 * WALL01_1 0 0 * WALL01_2 16 0 * WALL01_3 32 0 * WALL01_4 48 0 * WALL01_1 0 72 * WALL01_2 16 72 * WALL01_3 32 72 * WALL01_4 48 72 * W33_8 0 64 * W33_8 0 120 * SW1S0 16 72 SW1STRTN 64 128 * SW12_4 0 0 * SW12_5 32 0 * SW1S0 16 72 SW2BRCOM 128 128 * WALL62_1 0 0 * SW1S1 48 72 SW2BRN1 64 128 * STEP07 32 72 * STEP07 0 72 * WALL02_2 0 56 * WALL02_2 0 0 * SW3S1 16 75 SW2BRN2 64 128 * WALL02_2 0 56 * WALL02_2 0 0 * SW4S1 20 79 SW2BRNGN 64 128 * WALL62_2 0 0 * SW4S1 20 80 SW2BROWN 128 128 * WALL62_1 0 0 * SW3S0 48 72 SW2COMM 64 72 * W13_1 0 0 * SW1S1 15 18 page 51 SW2COMP 64 128 * COMP03_4 0 64 * COMP04_5 0 0 * COMP03_4 32 64 * SW2S1 16 72 SW2DIRT 64 128 * WALL00_8 48 0 * WALL00_7 32 0 * WALL00_6 16 0 * WALL00_5 0 -1 * SW1S1 16 20 SW2EXIT 32 72 * W32_4 0 0 * SW2S1 0 16 * W33_8 0 64 SW2GRAY 64 128 * W31_1 0 0 * W31_1 0 64 * SW2S1 16 70 SW2GRAY1 64 128 * W31_1 0 64 * W31_1 0 0 * SW4S1 19 79 SW2METAL 64 128 * WALL03_7 0 0 * WALL03_7 0 64 * SW4S1 20 68 SW2PIPE 128 128 * TP2_2 0 0 * SW3S1 48 76 SW2SLAD 64 128 * WLA128_1 0 0 * WARNA0 24 73 SW2STARG 128 128 * SW19_3 64 0 * SW19_4 0 0 * SW3S1 48 76 SW2STON1 64 128 * W28_8 0 64 * W28_8 0 0 * SW1S1 16 78 SW2STON2 64 128 * W28_8 0 64 * WARNA0 24 73 * W28_5 0 0 SW2STONE 64 128 * WALL01_1 0 0 * WALL01_2 16 0 * WALL01_3 32 0 * WALL01_4 48 0 * WALL01_1 0 72 * WALL01_2 16 72 * WALL01_3 32 72 * WALL01_4 48 72 * W33_8 0 64 * W33_8 0 120 * SW1S1 16 72 page 52 SW2STRTN 64 128 * SW12_4 0 0 * SW12_5 32 0 * SW1S1 16 72 ; SW1BLUE 64 128 * COMP03_1 0 0 * COMP03_2 0 64 * SW2_7 14 66 SW1CMT 64 128 * WALL54_1 -42 0 * SW3S1 16 72 SW1GARG 64 128 * WALL47_2 0 0 * WALL42_6 12 62 SW1GSTON 64 128 * WALL48_2 0 0 * SW2_7 13 67 SW1HOT 64 128 * WALL49_1 0 0 * SW2_7 12 66 SW1LION 64 128 * WALL47_2 0 0 * WALL42_5 11 62 SW1SATYR 64 128 * WALL47_2 0 0 * WALL42_1 12 62 SW1SKIN 64 128 * HELL6_3 0 0 * SW2_5 0 59 SW1VINE 64 128 * WALL00_1 0 -16 * W106_1 0 0 * SW4S0 20 84 SW1WOOD 64 128 * WALL40_2 -64 0 * SW2_7 14 66 SW2BLUE 64 128 * COMP03_1 0 0 * COMP03_2 0 64 * SW2_8 14 66 SW2CMT 64 128 * WALL54_1 -42 0 * SW3S0 16 72 SW2GARG 64 128 * WALL47_2 0 0 * WALL47_5 12 62 SW2GSTON 64 128 * WALL48_2 0 0 * SW2_8 13 67 SW2HOT 64 128 * WALL49_1 0 0 * SW2_8 12 66 page 53 SW2LION 64 128 * WALL47_2 0 0 * WALL47_4 11 62 SW2SATYR 64 128 * WALL47_2 0 0 * WALL47_3 12 62 SW2SKIN 64 128 * HELL6_3 0 0 * SW2_6 0 59 SW2VINE 64 128 * WALL00_1 0 -16 * W106_1 0 0 * SW4S1 20 84 SW2WOOD 64 128 * WALL40_2 -64 0 * SW2_8 14 66 page 54 APPENDIX II Animated Wall Textures in DOOM.WAD SLADRIP1 64 128 * WALL57_2 0 0 SLADRIP2 64 128 * WALL57_3 0 0 SLADRIP3 64 128 * WALL57_4 0 0 SLADWALL 64 128 * WLA128_1 0 0 ; BLODGR1 32 128 * TP5_1 0 0 BLODGR2 32 128 * TP5_2 0 0 BLODGR3 32 128 * TP5_3 0 0 BLODGR4 32 128 * TP5_4 0 0 ; BLODRIP1 32 128 * RP2_1 0 0 BLODRIP2 32 128 * RP2_2 0 0 BLODRIP3 32 128 * RP2_3 0 0 BLODRIP4 32 128 * RP2_4 0 0 ; FIREBLU1 128 128 * W65B_1 0 0 FIREBLU2 128 128 * W65B_2 0 0 ; FIRELAV2 128 128 * W73A_2 0 0 FIRELAV3 128 128 * W73B_1 0 0 FIRELAVA 128 128 * W73A_1 0 0 ; FIREMAG1 128 128 * W74A_1 0 0 FIREMAG2 128 128 * W74A_2 0 0 FIREMAG3 128 128 * W74B_1 0 0 ; FIREWALA 128 112 * WALL23_1 0 0 FIREWALB 128 112 * WALL23_2 0 0 FIREWALL 128 112 * WALL22_1 0 0 page 55 GSTFONT1 64 128 * WALL58_1 0 0 GSTFONT2 64 128 * WALL58_2 0 0 GSTFONT3 64 128 * WALL58_3 0 0 ; ROCKRED1 128 128 * WALL64_2 0 0 ROCKRED2 128 128 * W64B_1 0 0 ROCKRED3 128 128 * W64B_2 0 0 page 56 APPENDIX III Listing of Sound Names for DOOM I and II *Ripped off from DMGRAPH by Bill Neisius* Then corrected and expanded to include DOOM II Sounds for this manual. DeuTex uses DOOM's Sound names rather than the artificial Sound numbers used in DMGRAPH. A Conversion table for this follows. NOTE: An asterisk '*' means the Sound is used for multiple functions. --------------------------------------- A) SOUNDS FOUND IN BOTH DOOM I and DOOM II --------------------------------------- Weapons DSPISTOL* Pistol firing DSSGCOCK* Shotgun cocking DSSHOTGN Shotgun firing (followed by cock) DSSAWUP Chainsaw start DSSAWIDL Chainsaw idle DSSAWFUL Chainsaw with trigger pulled DSSAWHIT Chainsaw hitting monster DSRLAUNC Rocket Launcher firing DSBAREXP* Rocket exploding DSFIRSHT Fireballs shot or passing DSFIRXPL* Fireball hitting object DSPUNCH Player punching DSPLASMA Plasma Gun firing DSFIRXPL* Plasma Round hitting object DSBFG BFG9000 firing DSRXPLOD BFG9000 round exploding Objects DSPSTART Floor/Lift starting DSPSTOP Floor/Lift stops (Clunk) DSSTNMOV Stairs/ceilings moving DSDOROPN Mechanical Door opening DSDORCLS Mechanical Door closing DSBDOPN Fast Door Open DSBDCLS Fast Door Close DSSWTCHN* Switch 'thunk' Sound DSSWTCHX Switch 'pop' Sound DSTELEPT Player/Monster teleport DSSLOP GUTS/SLOP (What the name says) DSITMBK Item Return in MultiPlayer DSBAREXP* Barrel explosion Player DSSKLDTH Player Push on wall DSNOWAY Player blocked by wall DSOOF Player hitting ground DSWPNUP Weapon pickup DSITEMUP Item pickup DSGETPOW Power up Sound (Soul Sphere, etc.) DSPLPAIN Player injured DSPLDETH Player dying scream DSPDIEHI Player higher dying scream page 57 Former Humans DSPOSACT Former Human nearby breathing DSPOSIT1 Former Human sees Player DSPOSIT2 Former Human sees Player DSPOSIT3 Former Human sees Player DSPOPAIN* Former Human injured DSPODTH1 Former Human Death Moan DSPODTH2 Former Human Death Moan DSPODTH3 Former Human Death Yell Imps DSBGACT Imps nearby oinking DSBGSIT1 Imp sees Player DSBGSIT2 Imp sees Player DSCLAW* Imp clawing Player DSPOPAIN* Imp injured DSBGDTH1 Imp dying DSBGDTH2 Imp dying Demons/Spectres DSSGTSIT Demon/Spectre sees Player DSDMACT* Demon/Spectre nearby DSSGTATK Demon/Spectre chomping Player DSDMPAIN* Demon/Spectre injured DSSGTDTH Demon/Spectre dying Cacodemons DSCACSIT Cacodemon sees player DSDMACT* Cacodemon nearby DSDMPAIN* Cacodemon injured DSCACDTH Cacodemon dying Barons of Hell DSBRSSIT Baron sees Player DSDMACT* Baron nearby DSCLAW* Baron clawing Player DSDMPAIN* Baron injured DSBRSDTH Baron dying Lost Souls DSSKLATK Lost Soul attacking DSDMACT* Lost Soul nearby DSDMPAIN* Lost Soul injured DSFIRXPL* Lost Soul dying Spider Demon DSSPISIT Spider Demon sees Player DSMETAL Spider Demon walking DSSPIDTH Spider Demon dying page 58 Cyber Demon DSCYBSIT Cyber Demon sees Player DSHOOF Cyber Demon walking DSCYBDTH Cyber Demon dying Miscellaneous DSPISTOL* Menu selections DSPISTOL* Kills, Items, Secrets & Time at end of Level screen DSSWTCHN* Esc to main menu DSBAREXP* Level finished explosion at end of Level screen DSSGCOCK* Proceed to next Level at end of Level screen DSTINK "TINK" To Chat in Modem Play ---------------------------- B) SOUNDS FOUND ONLY in DOOM II ---------------------------- Weapons DSDBOPN Open Super Shotgun DSDBCLS Close Super Shotgun DSDBLOAD Reload Super Shotgun DSDSHTGN Fire Super Shotgun Revenant DSSKESIT Revenant sees Player DSSKEACT Revenant nearby DSSKEATK Revenant fires missile DSSKESWG Revenant swings at player DSSKEPCH Revenant punches player DSSKEDTH Revenant dying Mancubis DSMANSIT Mancubis sees Player DSMANATK Mancubis attacks DSMNPAIN Mancubis injured DSMANDTH Mancubis dying Pain Elemental DSPESIT Pain Elemental sees Player DSPEPAIN Pain Elemental injured DSPEDTH Pain Elemental dying Baby Spider DSBSPSIT Baby Spider sees Player DSBSPWLK Baby Spider walking DSBSPACT Baby Spider nearby DSBSPDTH Baby Spider dying page 59 Hell Knight DSKNTSIT Hell Knight sees Player DSDMACT* Hell Knight nearby DSCLAW* Hell Knight clawing Player DSDMPAIN* Hell Knight injured DSKNTDTH Hell Knight dying Arch-Vile DSVILSIT Arch Vile sees Player DSVILACT Arch Vile nearby DSVILATK Arch Vile attacks DSFLAMST Arch-Vile shoots Flame? DSFLAME Arch Vile's Flame arrives DSVIPAIN Arch Vile injured DSVILDTH Arch Vile dying Final Boss DSBOSSIT Final Boss sees Player 'to win the game...' reversed DSBOSPIT Final Boss spits Cube DSBOSCUB Final Boss Cube lands and expands DSBOSPN Final Boss injured DSBOSDTH Final Boss dying Wolfenstein DSSSSIT Wolfenstein SS sees player. 'Schultstaffel'-'SS' DSSSDTH Wolfenstein SS dying. 'mein lieben' -'My Life!' DSKEENPN Commander Keen injured DSKEENDT Commander Keen dying Unknown DSRADIO Phone Sound? Modem play? page 60 + ---------------------------------- + C) CONVERTING DMAUD Sounds for DEUTEX + ---------------------------------- + + + + For all you DMAUD users out there, here's a chart you can use to + convert those DMAUD Sound Numbers to DOOM or DEUTEX Sound Names. + + + + DMAUD NO. DEUTEX/DOOM Name + + + 1 DSPISTOL + 2 DSSHOTGN + 3 DSSGCOCK + 4 DSSAWUP + 5 DSSAWIDL + 6 DSSAWFUL + 7 DSSAWHIT + 8 DSRLAUNC + 9 DSRXPLOD + 10 DSFIRSHT + 11 DSFIRXPL + 12 DSPSTART + 13 DSPSTOP + 14 DSDOROPN + 15 DSDORCLS + 16 DSSTNMOV + 17 DSSWTCHN + 18 DSSWTCHX + 19 DSPLPAIN + 20 DSDMPAIN + 21 DSPOPAIN + 22 DSSLOP + 23 DSITEMUP + 24 DSWPNUP + 25 DSOOF + 26 DSTELEPT + 27 DSPOSIT1 + 28 DSPOSIT2 + 29 DSPOSIT3 + 30 DSBGSIT1 + 31 DSBGSIT2 + 32 DSSGTSIT + 33 DSBRSSIT + 34 DSSGTATK + 35 DSCLAW + 36 DSPLDETH + 37 DSPODTH1 + 38 DSPODTH2 + 39 DSPODTH3 page 61 + 40 DSBGDTH1 + 41 DSBGDTH2 + 42 DSSGTDTH + 43 DSBRSDTH + 44 DSPOSACT + 45 DSBGACT + 46 DSDMACT + 47 DSNOWAY + 48 DSBAREXP + 49 DSPUNCH + 50 DSPLASMA + 51 DSBFG + 52 DSCACSIT + 53 DSCYBSIT + 54 DSSPISIT + 55 DSSKLATK + 56 DSCACDTH + 57 DSSKLDTH + 58 DSCYBDTH + 59 DSSPIDTH + 60 DSHOOF + 61 DSMETAL page 62 APPENDIX IV DeuTex and DeuSF COMMAND SUMMARIES --------------- A) DeuTex COMMANDS --------------- Command Line Format: DEUTEX <-optional cmds.> <-other cmds.> ******** 1) STAND ALONE COMMANDS: -dmtextures Lists the DOOM Textures in TEXTURE?.TXT. -check Will look for Textures containing void columns. -help Lists the parameters. -syntax Prints short listing of the format of WADINFO.TXT. -unused Checks for unused bytes in a PWAD. ******** 2) OPTIONAL COMMANDS: -doom Defines the DOOM or DOOM2 directory. -dir Defines the working directory. -deu* Add 64K at the end of your PWAD for DEU. -rgb Defines the color used for 'transparent'. -bmp \_________________/ Format used when EXTRACTING pictures. DeuTex -gif / \ recognizes both when STORING pictures. -ppm / -wave \_______________/ Format used when EXTRACTING Sounds. DeuTex -au / \ recognizes both when INSERTING Sounds). -voc / -fullsnd* For extracting oversize Sound entries. -level \ / These tell DeuTex to select Sprites, Patches, -lump \ / Sounds, etc. when composing, decomposing, or -texture \___________/ merging PWADS. Commands can be combined. -sound / \ By default, all entries are selected. -graphic / \ Those switches can be combined. -sprite / -patch / -flat / -o tells deutex it can overwrite the data file if they exist ******** 3) OTHER COMMANDS: -iwad Used with -make, makes IWAD instead of a PWAD. -wadir Directory list, with entry identification. -get Get a single entry from a WAD -extract Extracts resources from a PWAD and puts them into a subdirectory having the resource name. -usedtex List the textures used in a WAD. -make Reads WADINFO.TXT and uses it to compose MYOWN.WAD from the files in the subdirectories. -merge Will merge MYOWN.WAD with DOOM.WAD. -restore Will restore DOOM.WAD and the merged MYOWN.WAD. -join Will merge THIS.WAD with MYOWN.WAD -app Will append DOOM sprites to MYOWN.WAD -res Will restore MYOWN.WAD All these commands are like those of DeuSF page 63 -------------- B) DeuSF COMMANDS -------------- Command Line Format: DeuSF ******** 1) STAND ALONE COMMANDS: -help Lists these parameters. -format Displays format conventions a PWAD must follow. -wadir Lists the entries in the PWAD directory. ******** 2) OPTIONAL COMMANDS: -doom Defines the DOOM or DOOM2 directory. -sprite Used with -add or -app, to add only Sprites or only Flats. If -flat neither of these commands is present, DeuSF will add both. ******** 3) MANDATORY COMMANDS: -add Creates ALLSF.WAD, with all Sprites and Flats of DOOM.WAD and MYOWN.WAD. -app Appends unchanged DOOM Sprites and Flats to MYOWN.WAD. -join Appends the Sprites and Flats in THAT.WAD to THIS.WAD. -res Restores PWAD modified with -app command. -merge Like DeuTex -restore Like DeuTex page 71