
                        How To Make Doom .lmp Demo's
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^

                           Last Change: 6/Mar/95
                           ^^^^^^^^^^^^^^^^^^^^^

Acknowledgements: bontchev@informatik.uni-hamburg.de (Vesselin Bontchev)
                    - for info on time limit and net game reminder.


First of all, what IS a .lmp Doom demo.?

Answer: in Doom (and in Doom II), it is possible to record a playing session.
ie. you can save to a file exactly what you do during a chosen episode and
level. This file can then be played back later so that you can sit back and
watch exactly what you did. The file itself does NOT contain any graphics
images. The demo file merely records which keys get pressed and also the various
mouse movements. However, there are certain key actions that are NOT
recorded. These include using the ESC key to bring up the main menu and any
actions taken using that menu. Also, you may find that using the mouse is
not _quite_ as smooth as when playing normally - this is probably due to the
overhead of having to record the various mouse movements as you play. One
annoying thing is that the game _will_ record any use of the PAUSE key, so
make sure you don't use it when recording a lmp file.


Note: As a general rule, demos recorded on one version of Doom (say v1.2)
      will not work run properly on another version of Doom (say 1.666).

This is because of changes in maps between versions, changes in the rules
governing monster behaviour, etc.


HOW TO RECORD A .lmp DEMO.:

The general command for recording a .lmp demo is as follows:-


doom -devparm -warp <ep> <lv> -skill <num> -record <file> [-respawn]


Where:

   <ep>    is 1 for the shareware version, or 1 to 3 for the full version,

   <lv>    is 1 to 9 (level 9 is always the secret level, although the
           actual from which you get _to_ a secret level is never level 8),

   <num>   is 1 to 4 for v1.1, or 1 to 5 for v1.2,

   <file>  is the name of the file that the demo is to be saved to. NOTE:
           the '.lmp' suffix MUST NOT be included in the file name. If you
           _do_ include it, Doom will not be able to find the file!

The option '-respawn' may be included; this makes the bad guys regenerate
each time they get killed and also makes them faster, more accurate with
their weapons/fire balls, enables them to shoot more often, etc. Thus,
running Doom on skill level 4 with the -respawn option gives a level of
difficulty kinda half way between 4 and 5 (where 5 is Nightmare mode).

If you start the game in Nightmare mode, the '-respawn' option isn't needed.

Note: there is a time limit in versions of Doom <= 1.2 of about 15 to 17
      minutes. It depends on exactly what you're doing as to how fast the
      demo buffer file fills up. There is no limit in v1.666 (and higher) of
      Doom; the demo will simply terminate if the memory is exceeded, but that
      would be after aaaaaaages of recording. In 1.666, I understand one can
      also specify how much space to allocate to the demo recording buffer.
      This info will be in the README file that comes with the game.


Demo making examples...

Example 1:

(this won't work on Shareware Doom because of the episode and level used, so
try something like episode 1 level 4 if you're a Shareware user...)

Record a demo of the Cyberdemon (Episode 2 Level 8) on skill level 3, saving
it to a file called 'mydemo1.lmp'...

   doom -devparm dem -warp 2 8 -skill 3 -record mydemo1
                                                       .
                                                      /|\
                                                       |
                                            Note! NO SUFFIX!

Example 2:

Record a demo of The Unholy Cathedral (Ep 3, lev 5) on Ultraviolence with
respawning to a file called 'e3l5resp.lmp'...

   doom -devparm dem -warp 3 5 -skill 4 -record e3l5resp -respawn


Example 3:

Record a demo of the secret level on Epiosode 1 (The Military Base) in
Nightmare mode, to a file called 'e1l9ntmr.lmp'...

   doom -devparm dem -warp 1 9 -skill 5 -record e1l9ntmr


PLAYING BACK THE DEMO:

The general command to play back a demo file is:

   doom -playdemo <file name>

Where <file name> is the name of the .lmp demo file, BUT WITHOUT THE SUFFIX!

If the '-respawn' option was used to make the demo, it must be used when
playing back the demo (the option is NOT needed for Nightmare mode demo's
though).

Thus, for the three examples above, they would be played back with the
following commands respectively:

   doom -playdemo mydemo1

   doom -playdemo e3l5resp -respawn

   doom -playdemo e1l9ntmr

You can save the demo at anytime by pressing Q. The demo also terminates
when you get to the end of the level. If you die, then press Q to save. F10
will quit without saving. I understand that future versions, such as v1.4
or v1.5, will also record the end-of-level screen so that you can see what
the scores were.


USING THE DEVPARM PARAMETERS BUT NOT TO MAKE A DEMO.:

You can use the various devparm parameters to start a game off from a
particular episode and level _without_ making a .lmp recording. This is done
by not including the '-devparm dem' option, ie.:

   doom -warp <ep> <lv> -skill <num> [-respawn]

The various parameters are just the same as before.


Other notes:

Trying to use ANY of the cheats when making a .lmp demo, will HALT the demo!
One thing to remember, therefore, is that since the demo is going to STOP at
the end of the level, there is no need for you to 'conserve' ammo for the
next level.

However, the PAUSE key _does_ get recorded during demo making, so try and
make sure you don't get interupted by anything during play.

You cannot save your position during a demo recording session. Pity... :(
At least not in v1.2 anyway. I don't _think_ this has changed in v1.666.
Correct me if I'm wrong.

Anyway, that's all I can think of at the moment. I reckon that just about
covers it!

Have fun! :)

Ian.

The Doom Help Service (DHS).
Co-ordinator of rec.games.computer.doom.help.

WWW addresses:   

  Home page:     http://www.cee.hw.ac.uk/~mapleson/
  DHS:           http://www.cee.hw.ac.uk/~mapleson/doom/doom.html
  Help Archive:  http://www.cee.hw.ac.uk/~mapleson/doom/doomhelp.zip
  Dissertation:  http://www.cee.hw.ac.uk/~mapleson/diss/diss.html
  SGI Stuff:     http://www.cee.hw.ac.uk/~mapleson/sgistuff/sgindex.html

Ian C. R. Mapleson BSc.,
Oceans Systems Research Group,
Room G86,
Department of Computer Science and Electrical Engineering,
Heriot Watt University,
Riccarton Campus,
EH14 4AS,
Edinburgh,
Scotland,
United Kingdom.

email to: mapleson@cee.hw.ac.uk

