home *** CD-ROM | disk | FTP | other *** search
/ Doom I/II Collection / DM12.ISO / edit / deusf / deutex.txt < prev    next >
Text File  |  1994-10-09  |  18KB  |  482 lines

  1.             DeuTex version 2.1     10/94
  2.  
  3.      Copyright (C) Olivier Montanuy 1994. 
  4.  
  5.  
  6.  
  7. Legal Stuff: see the end of this file.
  8.  
  9.  
  10.  
  11.  
  12. **************** EXECUTIVE SUMMARY ******************
  13.  
  14.  DeuTex stands for DEU's Texture Companion.
  15.  (DEU is a DOOM level editor by Bendon Wyber and Raphael Quinet.
  16.   and DeuTex was originaly derived from the code of DEU 5.21)
  17.  
  18.  
  19.  
  20.  DeuTex is *the* tool you all need to compose easily new PWAD for DOOM.
  21.  It let you include:
  22.  
  23.  Levels        (use a level editor like DEU, build the nodes with
  24.         (BSP and the reject data with REJECT)
  25.  Sounds     (from WAV or AUDIO files, from MUS file obtained
  26.         (from MIDI2MUS, or from text, for PC speaker sounds)
  27.  Lumps        (create demos with  DOOM -devparm -record DEMO1)
  28.         (create the ENDOOM text with TED)
  29.  Graphics    (from GIF or BMP files) 
  30.  Textures    (from definitions in a text file)
  31.         (a Windows Texture composer is being developped)
  32.  Patches    (from GIF or BMP files)
  33.  Sprites    (from GIF or BMP files)
  34.  Flats        (from GIF or BMP files) 
  35.  
  36.  DeuTex should allow you to compose easily the PWAD you dreamt of,
  37.  mixing levels and missions (from other WADS), textures, sprites...
  38.  
  39.  DeuTex also allows you to rip off entries from an existing PWAD
  40.  in order to reuse those entries or to fix a problem in a PWAD
  41.  (but first make sure you have the consent of the PWAD author's)
  42.  
  43.  DeuTex will merge a PWAD into your main IWAD, so as to overcome all
  44.  the limitations of PWADs. 
  45.  Of course, the IWAD can be restored, and the PWAD regenerated.
  46.  
  47.  DeuTex also allows you to modify text strings in the DOOM executable
  48.  (Dehacked can do that too. this is only provided for convenience)
  49.  
  50.  DeuTex is compatible with all versions of DOOM1 and should work
  51.  with DOOM2 (I could not check).
  52.  
  53. ATTENTION:
  54.  DeuTex is not completely trivial to use. It requires a fully 
  55.  functionnal processing unit, with a least 10000 meg of available
  56.  neurons, some basic DOS and DOOM specs dynamic libraries and 
  57.  at least 1 or 2 hour of spare processing time, with a minimum
  58.  of 80% attention rate. You have been warned.
  59.  
  60.  
  61.  
  62.  
  63.  
  64. ********************* THANKS **********************
  65.  
  66. DeuTex would not have existed without the help of those people:
  67.     Steve McCrea        
  68.         (author of TRINITY.WAD and DOOMTEX.)
  69.     Raphael Quinet         (quinet@montefiore.ulg.ac.be)
  70.         (examples of GIF code... and DEU code too)
  71.     Elias Papavassilopoulos (ep104@cus.cam.ac.uk)    
  72.         (Doom technical informations)
  73.     Matt Fell         (matt.burnet@acebbs.com)                    
  74.         (Doom specs version 1.3)
  75.     Keith Wilkins        (spike@nectech.demon.co.uk)        
  76.         (creator of Wacker, a texture composer. try it!)
  77.     Tom Neff         (tneff)
  78.         (Doom technical information)
  79.     ID software        (help@idsoftware.com)
  80.         (for the DeuTex test bench, also known as 'DOOM')       
  81.     Thanks to all of you who reported bugs and proposed corrections
  82.  
  83. ***************** CONVIVIALITY ************************ 
  84.  
  85.  DeuTex has NO human interface. I will seriously frown upon complaints
  86.  about the lack of human interface. DeuTex IS MEAN TO BE RUN IN BATCH.
  87.  Think of DeuTex as a PWAD compiler. 
  88.  You write your batch once, then you only have to double click on
  89.  the batch to recreate your PWAD, each time you modify an entry.
  90.  
  91.  Writing DeuTex took a lot of time. I'm not sure I can afford more
  92.  on a freeware Tool. I have a job too... and now DeuTex is released
  93.  I *do* intend to have a life.
  94.  
  95.  You want a graphic interface? wait for DEU6.0
  96.  
  97. ***************** DIRECTORY STRUCTURE****************
  98.  
  99. DeuTex uses this directory structure to store DOOM entries:
  100.     
  101. levels\        * for levels
  102.             as 11-entries PWADS
  103.             (with NODES,BLOCKMAP,REJECT already calculated)
  104. lumps\        * for lump
  105.             as raw binary data (.LMP) for DEMO, ENDOOM, PLAYPAL...
  106. textures\    * for texture definitions    
  107.             as text file (see format.txt)
  108. sounds\        * for sounds            
  109.             as .MUS format for music (can be obtained from MIDI files)
  110.             as .WAV file for soundcard sound effects
  111.             as raw .LMP data for PC speaker sound effects
  112. graphics\    * for DOOM pictures        
  113.             as bitmap (.BMP) or GIF files (.GIF)
  114. sprites\    * for sprites            
  115.             as bitmap (.BMP) or GIF files (.GIF)
  116. floors\        * for floors            
  117.             as 64x64 bitmap (.BMP) or GIF files (.GIF)
  118. patches\    * for wall patches        
  119.             as bitmap (.BMP) ot GIF files (.GIF)
  120. substit\    * for text strings        
  121.             as text files (see format.txt)
  122.  
  123.  
  124. ****************** DISCLAIMER ************************
  125.  
  126.  This program is an ordinary DOS executable, compiled in HUGE memory model,
  127.  with 386 instructions.It might not run under a 286.
  128.  It was tested on Compaq LITE 4/33c and IBM Thinkpad 755c.
  129.  
  130.  I cannot be liable for damages consecutive to the use of that program.
  131.  I did my best to avoid this, and use only very basic commands, but
  132.  it is not possible to state that these will work for every hardware
  133.  and software configuration. 
  134.  
  135.  
  136.  
  137.  
  138.  
  139. **************** Hardware Requirements **********************
  140.  
  141.  Compiled for 386.
  142.  Does not make use of coprocessor.
  143.  Should run with about 500k of free base memory, or less.
  144.  
  145. **************** User Requirements ****************************
  146.  
  147.     Please read the Manual and the Advanced\ directory
  148.     before asking questions. My time on the net is limited.
  149.     
  150.     Bugs report are appreciated if they come with the associated 
  151.     configuration files. 
  152.  
  153. **************** Special Features ************************
  154.  
  155. -   Particular to this program:
  156.  
  157.       *    DeuTex can list text strings in DOOM.EXE
  158.     DeuTex can replace strings among those listed. CAREFUL WITH THIS.
  159.     (it is not 100% possible for a prog to decide what is a C string and what is not)
  160.     FUNNY:
  161.     -   Replace the names of objects,
  162.     -   Replace messages from DOOM (in game, but also at the end of missions)
  163.     -  Choose the names of the animated walls and Floors.
  164.     -  Choose the names of the walls with switches
  165.     NOT FUNNY:
  166.       DO NOT REPLACE THE COPYRIGHTS AND COMMERCIAL NOTICES
  167.       OF IDsoftware. YOU ARE NOT ALLOWED TO USE DeuTex FOR THIS. 
  168.  
  169.       * DeuTex directly loads .GIF and .BMP pictures in PWAD  
  170.      Avoid the 24bit BMP format! use 8bit (256 color) and have the
  171.      color quantisation done by a serious program. mine is lame.
  172.  
  173.       * DeuTex can merge a PWAD into the IWAD, and recreate the    whole WAD directory, 
  174.     so that all kind of FLOORS can be defined. (in fact, all can be redefined,
  175.     keeping only the adds on in PWAD)
  176.  
  177.      * DeuTex can ripp off graphics .BMP and lumps out of your favorite
  178.     PWAD, for contemplation or reuse WITH WAD AUTHOR AGREEMENT ONLY.
  179.  
  180.      * DeuTex can check your PWAD for errors in TEXTURE definitions
  181.  
  182.      * DeuTex can load sounds as WAVE, PC sounds as text (don't laught)
  183.     and Music as MUS format.
  184.  
  185. -   Valid for all textures editors/compilers:
  186.  
  187.       * Create any texture you want for DOOM walls
  188.       DOOM will ignore heights above 128. 
  189.          Width should be rounded to the next power of 2. (8,16,64,128,256,512,1024 are usable)
  190.      The patches composing textures shall not be more than 320 wide.
  191.          
  192.       * Create textures for transparent walls
  193.      beware: composed of one patch only, else you'll get the Medusa Effect.
  194.  
  195.       *    Create animated walls with (almost) any sequence of pictures.
  196.     No known limit in number of frame. 12 is OK.
  197.     See DOOM SPECS 1.3 for more info.
  198.     2 ways:
  199.     -    You declare your animated walls, in the texture list between two other DOOM 
  200.         animated walls (which you shall redefine also)
  201.     -     You use DeuTex to change, inside DOOM.EXE, the name
  202.         of the extremity of the animated walls and flats.
  203.       * you can change the definition of the walls bearing switches.
  204.      let them swith to something else.
  205.  
  206.       * You can use almost all the graphic entries for texture composition:
  207.      - sprites (like in TRINITY.WAD)
  208.      - existing wall patches 
  209.      - newly defined wall patches 
  210.     But DON'T use the DOOM font STCFNxxx, or reload it with another name, like in
  211.     TRINITY version 2. (info from Elias Papavassilopoulos)
  212.  
  213.       * Create a non repeating sky texture:    see TRINITY version 2.
  214.     define the SKY1 (or SKY2, or SKY3) entry as a 1024x128 area
  215.     and place your patches so as to cover it all.
  216.     Your patches will appear horizontaly inverted, though.
  217.     0=south, 256=east, 512=north, 768=west.
  218.  
  219.       * for best results, see the explanations of TRINITY.WAD by Steve McCrea
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226. ********************  DeuTex Commands  ****************************
  227.  
  228.  
  229.  
  230.  All the optionnal commands must appear before the non optional ones
  231.  else they will be ignored. (talk about commandline parsing!) 
  232.  
  233. * Help commands
  234.  
  235. DEUTEX -help
  236.     won't help you a lot, but will give you the parameters.
  237. DEUTEX -format
  238.     will print the format of WAD creation directives.
  239.     You might prefer to have a look at format.txt.
  240.  
  241. * Optionnal commands
  242.  
  243. DEUTEX -doom <doom directory>
  244.     OPTIONAL COMMAND
  245.     DEFAULT IS: CURRENT DIRECTORY or \DOOM or \DOOM2
  246.     use that command to indicate the directory where you put your DOOM.WAD and DOOM.EX
  247.     example:        -doom C:\DOOM
  248.  
  249. DEUTEX -dir <working directory>
  250.     OPTIONAL COMMAND
  251.     DEFAULT IS: CURRENT DIRECTORY    
  252.     This defines the working directory, which contains WAD creation directives
  253.     and all the subdirectories containing PWAD parts 
  254.  
  255. DEUTEX -deu
  256.     OPTIONAL COMMAND
  257.     Use this if you want DeuTex to add 64k of junk at the end of your PWAD.
  258.     What for? to compensate a bug of DEU 5.21, that make it crash sometimes,
  259.     when viewing pictures.
  260.  
  261. DEUTEX -gif
  262.     OPTIONAL COMMAND
  263.     save as pictures as GIF instead of BMP
  264.  
  265. DEUTEX -sprite
  266. DEUTEX -patch
  267. DEUTEX -sound
  268.     OPTIONAL COMMANDS
  269.     to be use with -xtract, to extract only sprites, or only wall
  270.     patches, if you lack space on your hard disk (who doesn't!)
  271.  
  272. DEUTEX -iwad
  273.     OPTIONAL COMMAND
  274.     to be used with -make, to make an IWAD instead of a PWAD.
  275.     This is necessary if you are building a complete sprite PWAD.
  276.     tested on DOOM.WAD: decomposed then recomposed.
  277.  
  278.  
  279. * Commands to decompose and recompose PWADs
  280.  
  281. DEUTEX -wadir <thatcool.wad>
  282.     Directory list, with entry identification.
  283.     in PWADs, exact entry identification is sometime impossible. 
  284.     then SPRITES or FLATS or PATCHES might be reported as GRAPHICS.
  285. DEUTEX -void <thatlame.wad>
  286.     Check for unused bytes in a PWAD.
  287.     report unused zones, total bytes, and... oh, guess this one.
  288.  
  289. DEUTEX -xtract <thatcool.wad>
  290. DEUTEX -extract <thatcool.wad>
  291.     will extract lumps, graphics, floors, patches, sprites, sounds, levels
  292.     from a WAD and put them in mydir, into the relevant subdirectory.
  293.     the file WADINFO.TXT will contain the WAD creation directives.
  294.     use -dir to specify the working directory
  295.     See format.txt for the format of WADINFO.TXT 
  296.  
  297. DEUTEX -textures
  298.     list the textures contained in DOOM.WAD (or redefined
  299.     in a PWAD) into a text file. TEXTURE1 and TEXTURE2 are listed.        
  300.     
  301. DEUTEX -make     <wadinfo.txt>  <myown.wad>
  302. DEUTEX -build    <wadinfo.txt>  <myown.wad>
  303. DEUTEX -create   <wadinfo.txt>  <myown.wad>
  304.     <wadinfo.txt> is read only and defines the entries to put
  305.         into MYOWN.WAD. see format.txt for explanations.
  306.         also use DEUTEX -xtractwad
  307.     <myown.wad> will be created, unless it already exist in
  308.         which case the command will fail. delete it first.
  309.     this command replaces the utilities DMGRAPH,DMMUS,DMTEX,DMAUD
  310.     (however DMAUD recognise more than just .WAV and .AU)
  311.  
  312. * command to merge a PWAD into the main IWAD
  313.  
  314. DEUTEX -restore
  315.     Will restore DOOM.WAD and the merged MYOWN.WAD.
  316.     To be used after the -merge command, to undo the job.
  317.  
  318. DEUTEX -merge  <myown.wad>
  319.     Will put entries of MYOWN.WAD into the main DOOM.WAD file,
  320.     removing all restrictions DOOM puts on PWAD.
  321.     This is much safer and much cleaner than inserting/restoring
  322.     entries with DMGRAPH or such.
  323.     To be used especially for SPRITES and FLATS.
  324.  
  325.     Note on safety:
  326.     - ONLY 8 BYTES of DOOM.WAD are modified (but file size increase...)
  327.     - thus you can undo the job by hand, if really needed.
  328.     - MYOWN.WAD is put INTACT into DOOM.WAD. you can delete it because
  329.       it will be restored intact. (really: no modifications at all)
  330.     - Only about 32k of additional disk space are needed.
  331.  
  332.     How does it work?
  333.     - Restoration information is added at the end of IWAD. 
  334.     - Then the PWAD is pasted intact. 
  335.     - Then the IWAD directory is entirely rebuilt (about 32K).
  336.     - The pointer to the DOOM directory is modified (8 bytes) 
  337.  
  338.     I did my best so that command is the safest possible.
  339.     I tested this command thouroughly and believe it can be trusted.
  340.     
  341.     However, the resulting IWAD might not work with DOOM if the PWAD
  342.     you are including does not respect some conventions about SPRITES and
  343.     FLATS. In that case, just restore it.
  344.  
  345.     The convention is: 
  346.     there must be F_START or FF_START before the first floor
  347.     there must be S_START or SS_START before the first sprite
  348.     This is compatible with DMADDS.
  349.     Sorry but there is NO OTHER WAY if we want to be able to 
  350.     add new sprites and floors, unreferenced in DOOM.WAD.
  351.  
  352. * command to hack text strings in DOOM.EXE
  353.   (equivalent and somehow safer functionnality exist in DEHACKED)
  354.  
  355. DEUTEX -strings
  356.     Will list in a text file some of the strings existing in DOOM.EXE
  357.     and suitable for replacement. Result can be found in file
  358.     SUBSTIT\ORIGINAL.TXT
  359.  
  360.     BEWARE:
  361.     this list is huge. copy into MODIFIED.TXT only those strings that you
  362.     want to modify. see format.txt for explanations on the format of
  363.     ORIGINAL.TXT and MODIFIED.TXT
  364.  
  365. DEUTEX -substitute
  366.     the file SUBSTIT\MODIFIED.TXT will indicate which strings must 
  367.     be changed in DOOMFAKE.EXE.
  368.     This command replaces the utility DMSTR.
  369.     It is a bit slower because it does NOT depend on a particular
  370.     version of DOOM.EXE. If a string exists, it can be substituted.
  371.  
  372.  
  373. ******************* Known problems **********************
  374.  
  375. -    DeuTex is not a graphic editor
  376.         A front end is under development in Visual Basic 3.0
  377. -    DeuTex makes limited check on your PWAD
  378.          I check only texture consitency. suggestions?
  379. -    BMP 24bit color quantisation  is slow.
  380.         I didn't bother to write a correct code for it. yet.
  381. -    Entry type identification does not always work with PWAD.
  382.         no general solution to this problem, only best effort.
  383.         - void entries are saved as LUMPS,
  384.         - sprites and flats are missed if conventions are not
  385.           respected. (files generated by hand or by wackerb7)
  386. -       Sprites PWADs only work if you don't reuse existing sprites
  387.         Use DeuSF or DMADDS if you want to replace sprites
  388.         Anyway, deutex -mergewad will work also.
  389. -       Flats don't work in PWAD
  390.         Use DeuSF or DMADDS if you want to replace sprites
  391.         Anyway, deutex -merge will work also.
  392. -    WAVE and AUDIO file format are hacked
  393.         might not *always* work correctly
  394. -    PC-speaker sound format is unknown
  395.         (but only those with laptops bother about it)
  396. -    No MIDI support 
  397.         I dunno how to write the code. contributions waited :-)
  398. -    Levels must be complete and entries in the right order, before
  399.     being inserted in a PWAD by DeuTex.
  400. -    Source is NOT included.
  401.         not yet.
  402.  
  403.  
  404. ********************* Legal Stuff *********************
  405.  
  406.  
  407.  
  408.  *********************************************************************** 
  409.  *  I have no relations with IDsoftware (except as a registred user)   *
  410.  *    They don't care about this program, and certainly never will!  *
  411.  *  I have good relations with Raphael Quinet and Bendon Wyber but     *
  412.  *    they are NOT supposed to answer questions about this program.  *    
  413.  *  I have good relations with Steve McCrea, but they will get poor    *
  414.  *       if he receives questions about my program                     *
  415.  * so please:                                   *
  416.  *  Direct all comments to me, don't bother them.                      *
  417.  ***********************************************************************
  418.  
  419.  
  420.  
  421.  
  422. DeuTex is Copyright (C) Olivier Montanuy 1994.
  423. The GIF modules are derived from a source by David Koblas 
  424. DeuTex is Freeware but NOT public domain.
  425.  
  426. Why is DeuTex Copyrighted? so that I can make the following
  427. requirement, which would be impossible with Public Domain status:
  428.  
  429.  
  430. YOU ARE NOT ALLOWED TO MAKE ANY MODIFICATIONS TO THIS PROGRAM
  431. AND TO ALL THE INCLUDED FILES. ALL THE FILES INCLUDED IN THIS
  432. PACKAGE SHALL BE RELEASED TOGETHER.
  433.     If you want modifications, ask me, I'll do my best. 
  434.     Later on I'll release the source, when stabilised.
  435.  
  436. USE AT YOUR OWN RISKS. NO LIABILITY.
  437.     It runs under DOS, so behaviour is unpredictable .
  438.  
  439. YOU ARE NOT ALLOWED TO MAKE ANY KIND OF PERSONNAL PROFIT BY
  440. SELLING, RENTING, LEASING, OR USING THIS PROGRAM, WITHOUT MY
  441. EXPLICT WRITTEN CONSENT.
  442.     If you are interested in distributing it on a CD or any other
  443.     media, contact me first. I should accept, provided:
  444.     - you keep the price low, for maximum availabilty.
  445.     - you send me a free copy.
  446.  
  447. SPECIAL EXCEPTION: CompuServe is allowed to distribute this program 
  448. for a fee, provided I receive (by e-mail) a monthly report of the total
  449. number of uploads.
  450.  
  451.  
  452. * Alright folks, it was a shame, but it had to be stated somewhere...
  453.  
  454.  
  455.  
  456.  
  457.  
  458. ************** LAST WORDS   (AT LEAST!)  **************
  459.  
  460.  
  461. Thanx for using DeuTex.
  462.  
  463. I wasted long hours on it, so I could hope it will be of use.
  464. Though in fact I just wanted to program *something that works*,
  465. It's a kind of moral crisis that I had to atone in an orgy of
  466. programmation. Such things happen when you spend too much time 
  467. dealing with norms and specifications...
  468.  
  469.  
  470.     Olivier Montanuy,
  471.  
  472. E-Mail:
  473.     montanuy@lannion.cnet.fr    Work time mailbox
  474.     montanuy@dmi.ens.fr        Leasure time mailbox
  475.     montanuy@idsoftware.com        Dream time mailbox
  476. Address:
  477.     Manoir de Keringant, St Quay Perros, 22700 Perros Guirec, FRANCE
  478.     This is in Bretagne (Brittany), the westernmost part of France.
  479. Phone:
  480.     +33 96482047 (time: UTC+1)
  481.     modem: 1 bit of usable information per second (vocal emulation)
  482.