     A L F R E D -  THE AUTOMATIC LMP FILE RECORDER AND DEVELOPER v1.2

                             INSTRUCTION MANUAL
                                  03/12/94

================
[1] INTRODUCTION
================

The Automatic Lmp File REcorder and Developer (ALFRED) is a very handy
utility to simplfy the recording, viewing and storing of the many .LMPs one
may collect over time. It automatically looks for the chosen .LMP file in the
seven .LMP directories, and will act accordingly for .LMPs that were made with
RANDOOM .W or PWAD .wad files.

The program was simple enough to be written in the DOS batch language, which
has one major advantage- practically ANYONE can change the way it works to
suit whatever needs they want. If you don't like the way it works, FIX IT
YOURSELF! 

Please read ALL of this document, since some things mentioned early in this
document may only be explained in later sections (RanDOOM & PWAD .LMPs).


============
[2] FEATURES
============

ALFRED has been designed to record and play many different types of .LMPs
quickly and efficiently. ALFRED can currently do the following:

  -     Record regular .LMPs from any episode, map, and skill through 
        user-friendly prompts.

  -     Play .LMPs from other directories, which avoids cluttering up your
        DOOM directory with .LMPs.

  -     Display introductory text files before the .LMP is played. Very 
        handy for remembering what each .LMP is about.

  -     Play and record .LMPs made with a RanDOOM configuration. All you need
        to provide is the weight file and the character seed, and ALFRED
        will take care of the rest.

  -     Creates (from a Blank template) or edits introductory text files and
        RanDOOM weight files using the MS-DOS editor.

  -     Play and record .LMPs made with different PWAD files. 
        
As with most programmers, however, I have the nasty habit of always 
adding "just one more" feature. There's always room for improvment, and in 
the future I plan to add the following:

  -   Recording Multiplayer .LMPs (if possible).
  -   Automatic compression and uncompression of .LMPs using .zip files.
  -   Slideshow feature. 
  -   Full screen, frame-by-frame .LMP editor, allowing you to pause,
      rewind and fast-forward an .LMP -- NOT! (Still, I wonder if that could
      be done in a batch file? Hmmm...)

Programming Gurus please note: ALFRED was originally just a 5 line batch file 
designed just to play an .LMP, but as you can see things sorta got out of 
hand. Since the program is a batch file, you've been given the chance to see 
how much my code looks like pasta. Please, no comments. I already know you 
can do better. I am in no way a professional programmer, and if I was, I'd 
be working for ID software. 


==============================
[3] ALFRED'S FILE ORGANIZATION
==============================

Because of the large amount of .LMP files one can collect over time, ALFRED 
has been designed to group them into seven separate directories (in the LMP 
directory), named as follows:

   HALL         :   Hall of Fame .LMPs
   LEVELS       :   .LMPs of every level
   MISC         :   Strange and/or weird miscellaneous .LMPs
   MULTIPLR     :   Multiplayer .LMPs (none found yet - sorry!)
   NITEMARE     :   NIGHTMARE! .LMPs
   PWAD         :   PWAD .LMPs and their respective .wad pwad files.
   RANDOOM      :   RanDOOM .LMPs with their respective .W weight files.

(NOTE: whenever I mention 'the seven directories' later on in the document, 
 I am referring to those above)

ALFRED will ONLY look for .LMPs in these seven directories. If you want 
ALFRED to play your old .LMPs you will either have to copy them into any of
these directories, or modify the LMP.BAT to make ALFRED look elsewhere. When 
recording an .LMP with ALFRED, you will be asked what directory you wish the 
.LMP to be stored in. Once the .LMP is recorded, it will be moved to the 
chosen directory. NOTE: RanDOOM and PWAD .LMPs will automatically be stored 
in their respective directories. 

Right now ALFRED, called LMP.BAT ('ALFRED' is too long to type, ok?), is 
configured to run in your DOOM directory, and assumes to have the LMP 
directory (and its seven subdirectories) in the DOOM directory as well. Once 
again, being a batch file, ALFRED can be edited and changed to look elsewhere. 


==========================
[4] PARAMETER DESCRIPTIONS
==========================

ALFRED has several parameters, some of which must be executed in order. 
The general usage is as follows:

              LMP [r|w|t|p] lmpfile [pwadfile|seed]

Please note:
                - No extensions (.lmp, .w, .txt, .wad) are necessary.
                - typing LMP LIST will get a directory of all the .LMP files
                  in the seven directories.

Descriptions:

lmpfile :  Could be either lmpfile.lmp, lmpfile.w or lmpfile.txt 

  r     :  Record an .LMP. If a 3rd parameter is given, it is assumed to be
           a pwad file. If the pwad file is not in the WADS directory, 
           ALFRED will ask if the 3rd parameter was intended to be the seed
           of a RanDOOM .LMP.

  w     :  Create/edit RanDOOM .W file as lmpfile.w from a template. It looks
           for and saves these files in the LMP\RANDOOM directory.

  t     :  Create/edit introductory text file as lmpfile.txt. ALFRED will 
           check the seven directories for a corresponding lmpfile.lmp, and
           if it does not find any, ALFRED will ask where to put it.

  p     :  Plays DOOM according to a RanDOOM .W file lmpfile.w and a 
           random seed (no .LMPs played or recorded).

pwadfile:  If ALFRED discovers a second parameter (or third parameter when
           recording) as pwadfile, it will first check to see if pwadfile.wad 
           exists in the WADS directory. If it could not find pwadfile.wad,
           then ALFRED will ask if it was intended to be a RanDOOM seed.

  seed  :  If playing or recording a RanDOOM .LMP, then a seed must be
           provided as the 3rd parameter.


============
[5] EXAMPLES
============

The best way to explain how to use ALFRED is by examples. Listed below is
just about all the possible ways of using ALFRED:

lmp                     Typing 'lmp' without parameters will get a
                        help screen.

lmp list                Displays a list of all .LMPs in any of the seven
                        directories (HALL, LEVELS, MISC, MULTIPLR, NITEMARE,
                        PWAD, RANDOOM)

lmp lmpfile             Searches for lmpfile.lmp in the seven directories
                        and plays it. NOTE: For RanDOOM lmps, you must
                        provide a seed as a second parameter.

lmp lmpfile pwadfile    Plays lmpfile.lmp with pwadfile.wad. If lmpfile and
                        pwadfile have the same name, then no second parameter
                        need be given.
                        
lmp lmpfile c           Plays lmpfile.lmp from the LMP\RANDOOM directory with
                        seed 'c'. NOTE: you must also have lmpfile.w and 
                        lmpfile.txt in the LMP\RANDOOM directory in order to 
                        view it.

lmp r lmpfile           Records a DOOM session under lmpfile.lmp, and
                        will prompt for directory, episode, level and
                        skill.

lmp r lmpfile pwadfile  Records lmpfile.lmp using pwadfile.wad as a PWAD
                        file. Since it is a PWAD .LMP, it will be placed in
                        the LMP\PWAD directory automatically.

lmp r lmpfile c         Records a DOOM session under lmpfile.lmp as
                        a RanDOOM .LMP, with seed 'c'. Will prompt for 
                        episode, level and skill. NOTE: you must have 
                        created a lmpfile.w weight file beforehand in the 
                        \LMP\RANDOOM directory. 

lmp w wfile             Creates a new RanDOOM .w file, using a basic template, 
                        or edits an already existing .w file (automatically 
                        located in the LMP\RANDOOM directory). This option 
                        uses the MS-DOS editor.

lmp t txtfile           Creates a new .LMP intro text file, using a basic
                        template, or edits an already existing one. The user 
                        will be asked which of the seven directories for it 
                        to be put in. This option uses the MS-DOS editor.

lmp p wfile c           Plays DOOM with the RanDOOM weight file wfile.w, with
                        seed 'c'. The seed is optional, although it really 
                        should always be included.

===========================================
[6] PWAD LMPS: RECORDING THE FUTURE OF DOOM
===========================================

At the last moment I decided to make a small addition to implement the
recording and playing of PWAD .LMPs. Unfortunately, at this point the
ALFRED batch file was beginning to look a bit like the ALFRED PATCH file, so
deciding how to implement it wasn't easy. 

To begin with, I decided that I would not restrict the user's freedom by 
making him put all his wads in a special directory. Rather, at the beginning
of LMP.BAT I put the command

SET WADPATH=LMP\PWAD

Here you may put the directory path where your pwad files are stored. If you 
had C:\DOOM\WADS as your wadfile directory, then you would put 
SET WADPATH=WADS

Right now it is set to look in the LMP\PWAD directory since there are 
some dandy .LMPs there ready for viewing which need their respective pwads. 
Take note that throughout this document I will refer to this user-specified 
pwad directory as the WADS directory.

To play a PWAD .LMP file you must have the following:

1) Knowledge of what pwad file was used to record your .LMP,
2) Have your pwad file in the WADS directory,
3) Have you .LMP in the LMP\PWAD directory.

Once these are set you may view it by typing:

     LMP lmpfile pwadfile

If your pwadfile has the same name as your lmpfile, then it isn't necessary
to include the second parameter.

Recording is similar:

     LMP r lmpfile pwadfile

Unlike playing however, you MUST specify the pwad file to use, EVEN if
it has the same name.

Before the pwad option was made, ALFRED used the third parameter as a seed for
RanDOOM. This hasn't changed, except that now ALFRED will first look to see if
the third parameter is intended to be a pwad file. If it cannot find the pwad 
file in the WADS directory, ALFRED will then ask if the third parameter was 
intended to be a RanDOOM seed.

PLEASE NOTE: I have recently noticed that some pwad .wad files do not record 
correctly. My guess is that the editor that was used to change the pwad file 
did not save it correctly. It seems the problem is when I use VERDA, but not 
DEU 4.31. Here's how I came to this conclusion:

I edited E2L4 with VERDA, and changed only one item at the beginning into a
chainsaw. When recording, everything worked normally. However, when replaying
the level, it seems that the monsters were all blind, and didn't notice me 
until I shot. I tried exactly the same thing with DEU 4.31 and the .LMP
recorded and played correctly.

All pwad .LMPs included with this package have been tested and
work correctly. 


======================================================
[7] RANDOOM LMPS: A NEW BEGINNING IN VISUAL EXCITEMENT
======================================================

(NOTE: Please refer to the RanDOOM manual for familiarity of the program.
       The following section assumes you've used RanDOOM before).

ALFRED has the ability to play and record .LMP files that are made with
RanDOOM. These .LMPs have been surprisingly the most exciting .LMPs seen yet!

Because RanDOOM has the ability to randomize by a seed, it is possible to
'save' a randomized .WAD file for future use. All that is needed is both the 
seed and the .W weight file.

With this in mind, it is possible to create an .LMP file with a RanDOOM 
configuration, although it would be tedious to re-create the exact same 
environment every time you wished to view the .LMP. Fortunately, ALFRED 
helps out tremendously by automatically executing the proper parameters 
required to view the .LMP and then reseting the .WAD file back to normal 
once the film has been viewed.

To view an .LMP file, you will need the to have the following 3 files
inside the LMP\RANDOOM\ directory:

        1) The actual .LMP file to be viewed.
        2) The .W weight file.
        3) An .LMP introductory .TXT file showing which 
           seed to use.

ALFRED will know if there are any problems, and will tell you how to go 
about fixing them. It also has an option to edit either the .W or .TXT 
file, and will ALWAYS automatically put everything in the LMP\RANDOOM 
directory.

ALFRED will record RanDOOM with the -M3 parameter, as opposed to the old 
-M2 parameter. When recording a RanDOOM .LMP, ALFRED will ask you whether
you want RanDOOM to (1) change ALL the levels of the game, or (2) change
only the level being recorded. It's much more convenient to choose just one 
level, since it takes MUCH less time to process when you view the .LMP. Make 
sure you keep note of what level it is, however, since ALFRED will ask you 
for it when you want to see the .LMP. 

NOTE: Options (1) and (2) will give different randoom setups for the same 
      level, EVEN if the same seed is used.

If you create or edit the weight file with the 'LMP w lmpfile' command, the 
batch file will load up the MS-DOS editor with a template of a standard .w 
file which has been saved with under the filename you specified. This makes 
it easy to change or modify small parameters without having to start from
scratch or copy or move files around. This also applies to the 'LMP t'
command for .LMP introductory text files. If you don't like the MS-DOS 
editor and want to use another one, just change the batch file accordingly.


===============
[8] FINAL WORDS
===============

If all this still sounds kinda tricky or tedious to you, don't worry. After 
the first few tries you'll be recording RanDOOM .LMPs in a flash. No kidding, 
I tried it on my younger brother, and even he managed to figure it out.

Since ALFRED could be classifed as being a Third Party Doom Utility, I guess 
I should mention that id Software had nothing to do with the creation of 
ALFRED, so please don't bug them about any related queries. 

And since it's a batch file which you could edit yourself, don't bug me 
either. Actually, I'm only kidding. If you have any problems or suggestions, 
don't hesitate to contact me.

I would also like to say that neither me nor ALFRED are to be held 
responsible for any sort of data loss. You could still flame me if it does
happen though, just so I can fix it in the next version.

Thanks to all you who helped me out during the development of ALFRED, 
especially Scott Coleman for letting me use RanDOOM with ALFRED, and John
Van Essen, who provided both fresh ideas and criticisms toward ALFRED. 

Finally, a VERY BIG THANK YOU to the folks at id Software for making DOOM 
not only the most playable action game out for the PC, but also the most
re-playble.

I hope ALFRED helps you out a bit, and I am looking forward to seeing your
new ALFRED influenced .LMPs.

- Michael Houston
  mp_hous@pavo.concordia.ca
