title: Project Homepage
About PrBoom
History
PrBoom is the culmination of years of work by various people
and projects on the Doom source code. PrBoom includes work from
all of the following projects:
Original Doom source release |
Without id
Software releasing the source code to Doom in the first
place, we couldn't be here. And one mustn't forget Bernd Kreimeier who
prepared the source for release. |
DosDoom |
The first serious Doom port, got things working enough
for other projects to spawn from it. Also continued to
provide a lot of innovative ideas for other ports. |
Boom |
This project gave a complete overhaul to the Doom
engine, one it badly needed. All of Doom's infamous bugs
and limitations were fixed. Many new features which fitted
nicely into the engine were added, including a better line
types system, translucency, friction and wind types, and
much more. |
PrBoom |
Brought Boom to Windows, and made large improvements to
the graphics: first higher resolutions, later OpenGL
rendering. |
MBF |
This continuation of the Boom project, by Lee Killough,
did huge amounts of debugging and other improvements, as
well as adding more natural features in the way that Boom
had done. There were also some special features like Doom
beta emulation, and friendly monsters. |
LxDoom |
Initially just a Linux port of Boom, it went on to
become a portable POSIX Doom port, with further
compatibility improvements and debugging. |
lSDLDoom |
This port of LxDoom to SDL brought the Windows and
Linux development back together. It just makes you wish
we'd had SDL when the Doom source first came out :-\. |
Of course ideas were exchanged with many other Doom ports,
including xdoom, and Eternity.
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. The docs
included with PrBoom cover the use of some of the extra
features.
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)
- OpenGL renderer which renders as original to software
Doom as possible while greatly improving the visual quality
(PrBoom)
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 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)