Difference between revisions of "Boom"

From DoomWiki.org

[unchecked revision][checked revision]
m (Derived source ports: wikilink)
m (Revision: updated genealogy, added ReBoom.)
(27 intermediate revisions by 12 users not shown)
Line 1: Line 1:
'''Boom''' is a [[source port]] created by [[TeamTNT]].   The design goals of the Boom project were to create a source port of professional quality, fix bugs and remove limitations of [[vanilla Doom]], and add extra editing features, while keeping the same "feel" and "spirit" of the original Doom engine.
+
{{InfoboxSourcePort
 +
|logo = [[File:TNT_Boom_logo.jpg|240px]]
 +
|title = Boom
 +
|developer = [[Jim Flynn]], [[Stan Gula]], [[Ty Halderman]], [[Lee Killough]], [[Rand Phares]]
 +
|baseparent = [[Versions of Doom and Doom II|Final Doom]] v1.9
 +
|programming language = {{wp|C (programming language)|C}}
 +
|status = Discontinued
 +
|initialversion = 2.00
 +
|initialdate = 1998-04-17
 +
|platform = DOS
 +
|license = [[Doom Source License]], {{GPL||2+}}
 +
}}
 +
'''Boom''' is a [[source port]] created by [[TeamTNT]]. The design goals of the Boom project were to create a source port of professional quality, fix bugs and remove limitations of [[vanilla Doom]], and add extra editing features, while keeping the same "feel" and "spirit" of the original Doom engine. The final version of Boom was released on October 22, 1998. The source code for Boom was released in October 1999.
  
Boom itself only ran under MS-DOS and was developed using DJGPP, the DOS port of gcc. The code was ported to other operating systems by other people, however.
+
Boom itself only ran under MS-DOS and was developed using DJGPP, the DOS port of gcc. The code was later ported to other operating systems.
  
Because of its strong emphasis on maintaining the original feel of the Doom engine, Boom can be viewed as a much more conservative source port than some others. While many contemporary source ports concentrated on adding Quake-like features (such as a console), restructuring menus, or adding impressive new graphical features, Boom behaves very similarly to the original Doom executable. Many of the changes made in Boom are not immediately visible, such as the removal of limits (e.g. the [[visplane limit]] error) and the addition of editing features which, while immensely useful to level designers, may not be obvious to the player.
+
Boom can be viewed as a much more conservative source port than some others because of its strong emphasis on maintaining the original feel of the Doom engine. While many contemporary source ports concentrated on adding [[Quake]]-like features (such as a [[console]], restructuring menus, or adding impressive new graphical features), Boom behaves very similarly to the original Doom executable. Many of the changes made in Boom are not immediately visible, such as the removal of limits (e.g. the [[visplane limit]] error) and the addition of editing features which, while immensely useful to level designers, may not be obvious to the player.
  
A large number of [[WAD]] files have been developed which require Boom to run. Because of the attractive editing features provided by Boom, many popular source ports have adopted support for these features. This has led to the term "Boom-compatible engine": such WADs may run on many different source ports provided that the source port used supports the Boom editing extensions.
+
A large number of [[WAD]] files have been developed which require Boom to run. Because of the attractive editing features provided by Boom, many popular source ports have adopted support for these features. This has led to the term "[[:Category:Boom compatible|Boom-compatible engine]]": such WADs may run on many different source ports provided that the source port used supports the Boom editing extensions.
  
 
== Features ==
 
== Features ==
 
+
* Removal of engine limits and bugs. This includes the [[visplane limit]], the [[tutti-frutti effect|tutti-frutti]] and [[Medusa effect|medusa]] effects, the [[savegame buffer overflow|savegame size limit]], the [[venetian blind crash]], and many others.
* Removal of engine limits and bugs. This includes the [[visplane limit]], the [[tutti-frutti effect|tutti-frutti]] and [[Medusa effect|medusa]] effects, the [[savegame]] size limit, the [[Venetian blind crash|venetian blind crash]], and many others.
+
* Optimizations to the engine.
* Optimisations to the engine.
+
* New editing features. These include:
* Extra editing features. These include:
+
** Configurable [[ANIMATED|animated]] and [[SWITCHES|switch]] textures.
** Configurable animated and switch textures.
+
** [[Deep water]] effects.
** Deep water effects.
+
** Scrolling walls, floors, and ceilings, including support for [[conveyor belt]]s.
** Scrolling walls, floors, and ceilings (including support for conveyor belts).
+
** [[Translucency|Translucent]] walls and [[sprite]]s.
** Translucent walls.
+
** [[Friction]] effects, such as mud and ice.
** Friction effects, such as mud and ice.
 
 
** Custom [[colormap]]s (which can provide, for example an underwater blue "tint").
 
** Custom [[colormap]]s (which can provide, for example an underwater blue "tint").
** Silent teleporters, which can be useful for fake "room over room" effects.
+
** Silent [[teleporter]]s, which can be useful for fake "room over room" effects.
** Generic linedef types - a particular linedef behaviour can be "calculated" using a separate linedef calculator program called TRIGCALC.EXE .
+
** [[Elevator]]s which move the floor and ceiling of a sector together.
 +
** Generic [[linedef]] types - a particular linedef behaviour can be "calculated" using a separate linedef calculator program called {{c|TRIGCALC.EXE}}.
 +
** A [[DeHackEd]] extension standard, [[BEX]].
  
 
== Authors ==
 
== Authors ==
Line 33: Line 46:
 
== Derived source ports ==
 
== Derived source ports ==
  
After the Boom project ended, several source ports arose which were derived from the Boom source code. These include:
+
After the Boom project ended, several source ports arose which were derived from the Boom source code. These include:
  
* [[LxDoom]], which later merged to [[PrBoom]], a portable version of Boom.
+
* [[LxDoom]], which later merged with [[PrBoom]], a portable version of Boom.
* [[MBF]], [[Lee Killough]]'s continuation of his work on the Doom engine.
+
* [[MBF]], [[Lee Killough]]'s continuation of his work on the Doom engine.
 +
* [[Steve Boom]], initially meant as a learning experience, it became a port of its own, based on Boom 2.01.
 +
* [[PrjDoom]], the successor of Steve Boom, based on Boom 2.02.
 +
* [[ReBoom]], [[Adam Bilbrough (Gibbon)]]'s continuation of the Boom engine to modern systems.
  
 
== External links ==
 
== External links ==
 
+
* {{archived link|http://www.teamtnt.com/boompubl/ixboom.htm|TeamTNT's Boom website|http://web.archive.org/web/20050817024842/http://teamtnt.com/boompubl/boom2.htm|Archive.org}}
* [http://www.teamtnt.com/boompubl/ixboom.htm TeamTNT's Boom website]
 
 
*{{idgames|title=Download Boom|id=10447}}
 
*{{idgames|title=Download Boom|id=10447}}
 
*{{idgames|title=Download Boom source code|id=10448}}
 
*{{idgames|title=Download Boom source code|id=10448}}
 +
* [https://soulsphere.org/projects/boomref/ Interactive HTML version of the Boom reference guide]
 +
 +
{{s-start}}
 +
{{s-port}}
 +
{{s-cond}}
 +
{{s-bef-cond|rows=4|before=[[Versions of Doom and Doom II|Final Doom v1.9]]}}
 +
{{s-ttl|rows=9|title=Boom}}
 +
{{s-aft-cond|after=[[LinBoom]]}}
 +
{{s-aft-cond|after=[[LxDoom]]}}
 +
{{s-aft-cond|after=[[MBF]]}}
 +
{{s-aft-cond|after=[[PrBoom]]}}
 +
{{s-bef-cond|rows=5|before=[[DOSDoom|DOSDoom v0.2]]}}
 +
{{s-aft-cond|after=[[PrjDoom]]}}
 +
{{s-aft-cond|after=[[Risen3D]]}}
 +
{{s-aft-cond|after=[[RORDoom]]}}
 +
{{s-aft-cond|after=[[Steve Boom]]}}
 +
{{s-aft-cond|after=[[ReBoom]]}}
 +
{{s-end}}
  
 
[[Category:Source ports]]
 
[[Category:Source ports]]
 
[[Category:Boom compatible]]
 
[[Category:Boom compatible]]
 +
[[Category:Doom ports]]
 
[[Category:Limit removing source ports]]
 
[[Category:Limit removing source ports]]

Revision as of 07:57, 11 September 2021

Boom
TNT Boom logo.jpg
Codebase Final Doom v1.9
Developer(s) Jim Flynn, Stan Gula, Ty Halderman, Lee Killough, Rand Phares
Initial release 2.00 (1998-04-17, 25 years ago)
Latest release 2.02 (1999-10-09, 24 years ago)
Development status Discontinued
Written in C
Target Platform DOS
License Doom Source License, GNU General Public License v2+

Boom is a source port created by TeamTNT. The design goals of the Boom project were to create a source port of professional quality, fix bugs and remove limitations of vanilla Doom, and add extra editing features, while keeping the same "feel" and "spirit" of the original Doom engine. The final version of Boom was released on October 22, 1998. The source code for Boom was released in October 1999.

Boom itself only ran under MS-DOS and was developed using DJGPP, the DOS port of gcc. The code was later ported to other operating systems.

Boom can be viewed as a much more conservative source port than some others because of its strong emphasis on maintaining the original feel of the Doom engine. While many contemporary source ports concentrated on adding Quake-like features (such as a console, restructuring menus, or adding impressive new graphical features), Boom behaves very similarly to the original Doom executable. Many of the changes made in Boom are not immediately visible, such as the removal of limits (e.g. the visplane limit error) and the addition of editing features which, while immensely useful to level designers, may not be obvious to the player.

A large number of WAD files have been developed which require Boom to run. Because of the attractive editing features provided by Boom, many popular source ports have adopted support for these features. This has led to the term "Boom-compatible engine": such WADs may run on many different source ports provided that the source port used supports the Boom editing extensions.

Features

Authors

The primary authors of Boom were:

Derived source ports

After the Boom project ended, several source ports arose which were derived from the Boom source code. These include:

  • LxDoom, which later merged with PrBoom, a portable version of Boom.
  • MBF, Lee Killough's continuation of his work on the Doom engine.
  • Steve Boom, initially meant as a learning experience, it became a port of its own, based on Boom 2.01.
  • PrjDoom, the successor of Steve Boom, based on Boom 2.02.
  • ReBoom, Adam Bilbrough (Gibbon)'s continuation of the Boom engine to modern systems.

External links

Source code genealogy
Based on Name Base for
Final Doom v1.9 Boom LinBoom
LxDoom
MBF
PrBoom
DOSDoom v0.2 PrjDoom
Risen3D
RORDoom
Steve Boom
ReBoom