PrBoom 2.2.3
============

PrBoom is a version of the classic 3D shoot'em'up game Doom, originally 
written by id Software. 

See the file AUTHORS in this distribution for a list of authors and 
other contributors, and a history of the projects PrBoom is derived 
from.

PrBoom is made available under the GNU General Public License. See the 
file COPYING included in this distribution for details. 

Please see the NEWS file included for changes since the previous version.

Game data - WADs
----------------

(This section is aimed at people not familiar with Doom and the 
data files it uses.)

PrBoom is a game engine - it provides a program to play Doom levels, but 
it doesn't include any levels itself. More importantly, you need all the 
sounds, sprites, and other graphics that make up the Doom environment. 
So to play PrBoom, you need one of the main Doom date files from id 
Software - either doom.wad, doom2.wad, tnt.wad or plutonia.wad from one 
of the commercial Doom games, or the shareware doom1.wad. This file 
is called the IWAD.

PrBoom also supports playing Doom add-on levels, called "PWADs", which 
are small extra .wad files which just contain extra levels or other 
resources. PWADs are ONLY ADD-ONS, you still need the original IWAD 
that they are designed to work with. In practice, most PWADs on the 
Internet require doom2.wad (although some work with doom.wad). 

If you don't own any of the Doom games, get the shareware doom1.wad 
from Doomworld's shareware download page. You won't be able to play 
most add-ons.
http://www.doomworld.com/shareware

Windows Installation
--------------------

Just extract the zip to a directory of your choice and copy your IWAD
files into it. Now you can make shortcuts and add "-iwad filename.wad"
to them.

The SDL_mixer library used by PrBoom supports software MIDI music
synthesis. If you want to hear the Doom music, you need a set of
Timidity instrument patches. Do a web search for timidity patch sets,
there are plenty around.
These patch sets are a large download (>5megs).
SDL_mixer does not currently support hardware MIDI synthesis. But we
have added a hacked version of SDL_mixer with native midi support. If
you like to try it out, rename SDL_mixer_beta.dll to SDL_mixer.dll.
You should rename the original SDL_mixer.dll before. Tell us if it
works or not. Please note, that there might be bugs in the native midi
implementation.

Linux Installation
------------------

For UNIX, Linux, and other POSIX systems, you need the SDL libraries in 
order to use PrBoom. If you haven't already done so, visit 
http://prboom.sourceforge.net/linux.html and follow the instructions there 
for your system, downloading the necessary libraries, and either 
installing the binary RPM package or compiling PrBoom from source.

Once you've done that, you'll need to copy your IWAD file (see the section 
above if you don't know what this is) to a directory where PrBoom can find 
it. Make /usr/local/share/games/doom/, and copy you IWAD (all of your 
IWADs, if you own more than one) to that directory. 

First Use
---------

If it's the first time you've run PrBoom, you'll need to do some configuring 
to get the controls and display right for you. 

By default, PrBoom runs at Doom's normal 320x200 resolution. This is rather 
low by modern standards :-). You can use the -width and -height parameters to 
select a higher resolution, e.g.:

prboom -width 640 -height 400

sets the resolution. This setting is remembered for future sessions. For 
other parameters, see the included README.command-line.

You may also wish to customise the key bindings. PrBoom's default keybindings 
are the same as the original Doom; unlike original Doom, you can change key 
bindings in the game. In the in-game menus, go to Options, Settings, Key 
Bindings.

Features
--------

   This is all the features PrBoom has compared to the original Doom game
   - it's intended to give you an idea of the enhancements, rather than
   burying you in details.
   
   See http://prboom.sourceforge.net/about.html for an HTML version of 
   this list.

   This is shamelessly modelled on Boom's changes pages. By each
   change, there's the name of the port the feature comes from (so it's
   compatible with).
   
Playing the game

     * Supports loading dehacked files at the command line, or in WADs
       (BOOM, MBF)
     * Supports PWADs containing sprites and flats (BOOM)
     * Save games and demos completely store game parameters (BOOM,
       MBF)
     * Savegames store list of loaded WAD files, warning if wrong files
       loaded (BOOM, MBF)
       
Game engine

     * Player bobbing improved, optional (BOOM, MBF)
     * Friction effects (BOOM), affecting players and monsters
       (MBF)
     * Wind, current, conveyor effects (BOOM)
     * Far more flexible scrolling wall/floor types (BOOM)
     * Always run (BOOM)
     * Weapon change logic overhauled and improved (BOOM)
     * Support for friendly monsters, helper dogs (MBF)
     * Monster target finding code improved (MBF)
     * AI improvements (MBF)
     * Bouncy and touchy things (MBF)
     * New code pointers (MBF)
     * Per-level and animated skies (MBF)
     * Generalised line types system gives complete flexibility
       (BOOM)
     * Elevators (BOOM)
     * Translucent sprites, walls (BOOM)
     * Independent floor and ceiling lighting (BOOM)
     * Silent teleports (BOOM)
     * Deep water, true underwater areas (BOOM)
     * Icon of Sin telefragging made more consistent (MBF)
     * Fix large numbers of game bugs (BOOM, MBF, LxDoom)
     * Support arbitrary texture heights (BOOM)
       
Screen

     * High resolution support (PrBoom)
     * Optional message console, multiple message lines (BOOM)
     * Status bar shows health/armour/ammo in colours (BOOM)
     * Heads up display, showing ammo, health, keys overlayed on view
       (BOOM)
       
Multiplayer

     * Spy mode improved (BOOM)
     * Support for loadgame in a net game (LxDoom)
     * Client server style network games (LxDoom)
       
Automap

     * No limit on marks (BOOM)
     * Rotation and overlay modes (DOSDoom, LxDoom)
     * Map shows coordinates (BOOM), optionally follow pointer
       (MBF)
     * Teleport lines, key doors and switches marked specially (BOOM)
     * Keys, secrets visible on map with cheat codes (BOOM)
     * Colours fully configurable from menus (BOOM)
       
Intermission screens

     * Par times hidden when not relevant (BOOM)
     * Total episode time shown (LxDoom)
       
Menus

     * F1 help screen shows current key setup (BOOM)
     * Key bindings, monster behaviour, and compatibility settings all set
       in menus (BOOM, MBF)
       
Compatibility

     * Game is capable of behaving like any of: original Doom v1.9, Boom
       v2.02, MBF (BOOM, MBF, LxDoom)
     * Plays most original Doom v1.9 demos (more than Boom or MBF)
     * Plays most Boom v2.02 demos (apart from levels with friction
       effects everything should work).
     * Plays some DOSDoom, earlier Doom, earlier Boom, and LxDoom demos.
     * Plays all MBF demos.
     * Auto-correction of common bugs in old levels (MBF), with
       warnings (LxDoom)
     * Fine control of options controlling compatibility and new features
       (MBF)
       
Controls

     * Greater control of key bindings from in game menus (BOOM)
     * More accurate mouse sensitivity control (BOOM, LxDoom)
       
Misc

     * Screenshot code improved, supports BMPs (BOOM)
     * Support for ENDOOM and ENDBOOM (BOOM, LxDoom)
     * -timedemo and -fastdemo options (BOOM)
     * Real time frame rate, segs, visplanes, sprites display
       (LxDoom)
     * Various extra cheat codes (BOOM, LxDoom)
       
Internals

     * Greatly improved internal memory management (BOOM, LxDoom)
     * Startup time greatly shortened by lazy generation of some lookups
       (DOSDoom, LxDoom)
     * Removed internal limits (BOOM)

Other Tips
----------

On Linux, SDL tries to detect an appropriate video device automatically. 
If you want to overrite the default, you can set the SDL_VIDEODRIVER 
enviromental variable. At a bash prompt, this is as easy as running:

SDL_VIDEODRIVER=fbcon prboom
or
SDL_VIDEODRIVER=svga prboom

Details
-------

Details on these extra features are split into separate text files:

README.demos		provides a guide to PrBoom's demo support
README.compatibility	describes PrBoom's various compatibility 
			options and modes
README.command-line	gives a command line reference for prboom, 
			prboom-game-server, and the format of boom.cfg.
			On UNIX/Linux systems use the man pages instead.

Editing features are not covered in the docs with this package. We plan 
to bundle the editing docs as a separate download. Watch our website 
for news.

