                                    WADWHAT
              by Randall R. Spangler (rspangle@micro.caltech.edu)
                             version 1.0 - 8/22/94


1.   Introduction

Have you ever downloaded a WAD file and wondered which maps it replaced?  Have
you ever wondered if the map you're about to start contains 10 cyberdemons?
And how much ammo can you afford to waste in the map, anyway?

If you've had any of these questions, then WADWHAT is for you.  WADWHAT
provides simple, easy-to-read numbers on the contents of any WAD file.  Some
nifty features:

*    Prints which maps are contained in the WAD
*    Tells whether a map can be used single-player, cooperative, or deathmatch
     (and prints the number of deathmatch starts)
*    Lists things present in each map at each skill level
     *    Bosses (Barons, Cyberdemons, Spiderdemons)
     *    Monsters
     *    Weapons
     *    Items
     *    Ammo
     *    Total healing and armor
*    Calculates a difficulty rating for each map based on the ratio of monsters
     to ammo
*    FREE


2.   Usage Restrictions and Warranty (lack thereof)

WADWHAT is free.  Completely free.  Source is even included, for the curious.
(Note that it's even COMMENTED :-)  All I ask is that if you use the source for
WADWHAT in any other program that you give me credit in the documentation.

WADWHAT also comes with no warranty of any kind (hey, you get what you pay
for).  Use it at your own risk.  May contribute to global warming and many
other disasters.  If, by some chance, you find a way to melt down your computer
with WADWHAT, you're on your own.


3.   How to Use WADWHAT

It's pretty simple.  Just give it a series of filenames in the current
directory (wildcards such as *.WAD are ok):

     WADWHAT foo.wad g*.wad doom.wad

WADWHAT will then print the contents of all the WAD files to your screen.
Because there's quite a bit of output, you might want to pipe the output of
WADWHAT to MORE (which comes with MS-DOS).  This will pause the output every
screenful:

     WADWHAT doom.wad | MORE


4.   Output Format - Normal

When run on a WAD file, WADWHAT will produce output similar to the following:

E:\GAMES\DOOM\WADS\GOOD>wadwhat dork.wad
WADWHAT 1.0 by Randall R. Spangler (rspangle@micro.caltech.edu)
============================================================
PWAD FILE DORK.WAD:
------------------------------------------------------------
EPISODE 1 MISSION 1             L1    L2    L3   L45 + multi
------------------------------------------------------------
    Play modes:
        Single player
        Cooperative (4 player)
        Deathmatch (4 starts)
    Bosses:
        Baron                    3     3     3     3 +     0
    Monsters:
        Sergeant                20    20    20    24 +     0
        Imp                     40    40    40    56 +     0
        Demon                   16    16    16    26 +     0
        Lost soul               20    20    20    38 +     0
        Cacodemon               22    22    22    40 +     0
    Weapons:
        Shotgun                  2     2     2     2 +     0
        Chaingun                 2     2     2     2 +     0
        Rocket launcher          2     2     2     2 +     0
        Chainsaw                 2     2     2     2 +     0
    Equipment:
        Invisibility             2     2     2     2 +     0
        Computer map             1     1     1     1 +     0
    Expendibles:
        Bullets               2080  1040  1040  1040 +     0
        Shells                1264   632   632   648 +     0
        Rockets                 24    12    12    12 +     0
        Armor points           832   416   416   416 +     0
        Health points         1418   709   709   709 +     0
    Difficulty:
        Total monster hp      1920  1920  1920  3078 +     0
        Max ammo damage      11408  5704  5704  5816 +     0
        RATIO                0.168 0.337 0.337 0.529 + 0.000

At the top of the output is the name of the WAD file.  Id has requested that
all add-on files be PWADs, but you may run across an IWAD or two out there.
After that is the information for each map (the example file contains only one
map).  The columns contain

     *    The type of thing being counted
     *    The number present at skill level 1 (I'm Too Young to Die)
     *    The number present at skill level 2 (Hey, Not Too Rough)
     *    The number present at skill level 3 (Hurt Me Plenty)
          *    The number present at skill levels 4 and 5 (Ultra-Violence and
          Nightmare)
          *    The number added in multi-player (cooperative or deathmatch)
          mode

If a thing does not appear in a map (for example, dork.wad doesn't have the BFG-
9000), it won't be listed.

Expendibles are calculated differently from the previous sections.  These are
the total amounts of each thing from all possible sources.  For example,
bullets come from clips, the chaingun, boxes of ammo, and killed troopers.
Armor comes from the green and blue armors, and the helmet armor bonuses.

Skill level 1 (I'm Too Young to Die) is the same as skill level 2 (Hey, Not Too
Rough), except that all damage to the player is halved and all ammo amounts are
doubled.


5.   Output Format - Brief

If you're trying to compare a number of WAD files, the full output may be a bit
unwieldy.  WADWHAT has a brief output mode which prints one line per map,
assuming a given skill level:

E:\GAMES\DOOM\WADS\GOOD>wadwhat -B4 *.wad
WADWHAT 1.0 by Randall R. Spangler (rspangle@micro.caltech.edu)
File         Map   Play  Bosses  Monsters              Weapons  Equip    RATIO
-------------------c-de--ba-c-s--tr-se-im-de-sp-lo-ca--cpscrpb--bvsiral-------
ANTHILL.WAD  E1M1  4  6   2 1 0  32 35 33 14  1  0  4  1234567  B..IRA.  0.215
BIOTECH.WAD  E1M1  4  9   7 1 0   7  5 38 89  9  1  6  123456.  BV.I...  1.085
CIRCLE.WAD   E1M1  4  4   0 0 0   0  0  0  0  0  0  0  123456.  B......  0.000
DETHMAZE.WAD E1M1  4  4   2 1 0   0 11 12  2 15 18  3  .234567  B.SI...  0.463
SNIPER.WAD   E1M1  4  7   0 0 0   7 38 49  6  1  0  2  .23456.  ...I...  0.055
TREE3.WAD    E1M1  4  4   3 0 0   7 34 53 14  6 13  3  12345..  ...I...  0.544
TREE3.WAD    E1M2  4  4   2 0 0   1 26 51 14  2 11  6  123456.  B.SI...  0.263
TREE3.WAD    E1M3  4  4   3 0 0   5 30 61 24  5 15  7  .2345.7  ..SIR..  0.310
URBNBETA.WAD E1M1  4 17   1 1 1  41  8  0  0  0  7  3  1234567  B.S..A.  0.222
DIEFAST.WAD  E1M1  4  4   0 6 0  22 13 38  7  0  0  3  12.456.  BV.....  2.645
HITMEINF.WAD E1M1  1  5   0 0 0   0  2  0  0  0  0  0  123456.  ...I...  0.014
DORK.WAD     E1M1  4  4   3 0 0   0 24 56 26  0 38 40  12345..  ...I.A.  0.529

The brief output has the following sections:

File           The file containing the map.
Map            Which map is being replaced.  Some files (TREE3.WAD, for
               example), contain more than one map.
Play           Play modes supported.  "c" is the number of cooperative players,
               and "de" is the number of deathmatch starts.
Bosses         The number of barons, cyberdemons, and spiderdemons.
Monsters       The number of troopers, sergeants, imps, demons, spectres, lost
               souls, and cacodemons.  "++" will be printed if more than 99 of
               a monster are present.
Weapons        Which weapons can be found in the level: 1=chainsaw, 2=pistol,
               3=shotgun, 4=chaingun, 5=rocket launcher, 6=plasma gun, 7=BFG-
               9000.
Equip          Which equipment is present: B=backpack, V=invulnerability,
               S=berserk, I=invisibility, R=rad suit, A=computer map (allmap),
               L=light amp goggles.
RATIO          The difficulty ratio of the map at the specified skill level.

Some levels add additional items in multi-player mode.  To see the brief totals
in multiplayer mode, add a 'M' to the end of the -B flag (so "-B4M" instead of
"-B4").


6.   Difficulty RATIO

The difficulty ratio is an attempt to provide some indication of how
challenging a map is, based on the number of monsters and the amount of ammo in
the map.  Total monster hp is the damage required to kill all the monsters in
the map.  Max ammo damage is the amount of damage that could be done by using
up all the ammo in the map.  This assumes that every pellet from a shotgun
hits, and rockets always hit directly.  The higher the RATIO is, the more
difficult the map.

Some numbers from the DOOM episodes:

Average of all episodes and skill levels          0.310

Average episode 1                                 0.170
Average episode 2                                 0.394
Average episode 3                                 0.368

Average skill 1                                   0.187
Average hurt me plenty                            0.308
Average ultra violence                            0.436

Easiest map: E1M1, skill 1                        0.010
Hardest map in shareware: E1M8, ultra violence    0.338
Hardest required     map: E3M6, ultra violence    0.738
Hardest secret map: E2M9, ultra violence          0.915


7.   Bugs and Limitations

If -respawn is used, the effective number of monsters in the map will increase
because they keep coming back to life.

The RATIO ignores damage that may be done by exploding rockets, barrels, BFG-
9000 blasts, and monsters killing each other.  It also doesn't take into
account damage done by the chainsaw or fists.  A better measure of map
difficulty would probably also use the amounts of armor and health available
(any ideas for how they should be counted?)

In multi-player mode, there will be slightly less ammo available because each
weapon can only be picked up once per life.  However, players which die start
over with 50 bullets each time, so the net effect is probably small.


8.   Information About the Author

You can send comments, money, etc. to me at:

     Snail mail:    Randall R. Spangler
                    Caltech 116-81
                    Pasadena, CA 91125

     Internet:      rspangle@micro.caltech.edu

I have also written some inexpensive shareware programs - try them out!
(available by anonymous FTP, or e-mail):

   HOWITZER 0.95 (a SuperVGA artillery simulation game, 386 required)
      ftp to ftp.uml.edu, /msdos/Games/Misc/hwitz095.zip
   UNIXCORN 1.3 (enhances any shell or DOS Prompt, for Windows 3.1)
      ftp to oak.oakland.edu, /SimTel/msdos/windows3/unixcn13.zip
      ftp to winftp.cica.indiana.edu, /pub/pc/win3/util/unixcn13.zip

