---
name: "boom.cfg"
section: "5"
platform: "linux"
package: "lxdoom"
version: "1.4.4main-0.1"
release: "Debian 4.0 (Etch)"
platforms: ["linux"]
url: "https://new.carta.tech/boom.cfg"
---

# boom.cfg(5)

Configuration file for LxDoom v1.3.2 onwards

## NAME

boom.cfg - Configuration file for LxDoom v1.3.2 onwards

## USAGE

When a version of LxDoom (that is lxdoom, lsdoom, or other port of LxDoom) is run, it  searches for this configuration file to modify its default settings. Every time  LxDoom exits, it rewrites the configuration file, updating any settings that have  been changed using the in-game menus.

LxDoom expects the config file to be  ~/.lxdoom/boom.cfg. Alternatively, it  can be made to look elsewhere by using a command-line parameter:

**{lxdoom,lsdoom}** \[ -config *myconf* \]

## FORMAT

boom.cfg consists of a number of variables and values. Each line is of the following  format:

\[ {  {{#,;,\[} *comment\_text* , *variable* {*decimal\_integer*, 0x*hex\_integer*, "*string\_text*"}}\]

Any line beginning with a non-alphabetic character is treated as a comment and  ignored; for future compatibility you should start comments with a #, ; or \[.  Note however that when LxDoom rewrites boom.cfg it does not preserve user added  comments.

Any line beginning with an alphabetic character is treated as a variable-value pair.  The first word (sequence of non-whitespace characters) is the variable name, and  everything after the following block of whitespace is taken to be the value  assigned to the variable.

Variables not recognised by LxDoom, or which are given an invalid value or a value  of an inappropriate type, are ignored. Warning messages are given where relevant.

The variables recognised by LxDoom are described per-section in the following  sections. The sections are informal however; when LxDoom rewrites the config file  it writes in section headings and puts variables into the relevant sections, but  when reading these are ignored.

## MISC SETTINGS

- compatibility\_level

  LxDoom is capable of behaving in a way compatible with earlier versions of Doom and  Boom/PrBoom. The value given here selects the version to be compatible with when  doing new games/demos (loading savegames and playing back demos automatically  selects the level of compatibility that was played with). The current values are:  0=Doom v1.9 (bugs and all),  1=Boom's compatibility mode (Doom v1.9 but without most of the bugs),  2=Boom v2.02 (TeamTNT's popular DOS port of Doom, on which LxDoom is based),  3=LxDoom v1.3.2+ (most bug fixes and features).

- realtic\_clock\_rate

  Selects the speed that LxDoom runs at, as a percentage of normal game speed.  Leave at 100 unless you want to experiment. Note that it is considered  \`cheating' to use this at any setting below 100 (or above?).

- max\_player\_corpse

  Sets the maximum number of player corpses to leave lying around. If this limit would  be exceeded, an old corpse is removed. Useful for big/long Deathmatch games, where the  sheer number of corpses could slow the game down.

- demo\_insurance

  Selects a method of protecting demos against \`going out of sync' (where the  player seems to lose control and behave madly, but in fact the players  original instructions as stored in the demo have got out of sync with the  game he was playing). 0=No protection, 1=Full protection, 2=Only while  recording demos. Safest when left set to 2.

- leds\_always\_off

  A feature of Boom for DOS. The config setting is saved but not implemented  in LxDoom.

- endoom\_mode

  This parameter specifies options controlling the display of the credits screen  when Doom exits. Currently it is the sum fo 3 options: add 1 for colours, 2 for  non-ascii characters to be displayed, and 4 for the last line to be skipped so the  top line doesn't scroll off screen.

## FILES SETTINGS

- screenshot\_pcx

  Selects whether to take screenshots in PCX format (1), or BMP format (0).

- auto\_load

  A semicolon-separated list of .wad, .deh and .bex files to load  automatically when LxDoom is started.  Currently LxDoom searches the current directory, your home directory, and the  directory pointed to by the DOOMWADDIR environment variable for these files.

## GAME SETTINGS

- default\_skill

  The default skill level when starting a new game.

- weapon\_recoil

  Enables recoil from weapon fire.

- player\_bobbing

  Enables player bobbing (view randomly moving up/down slightly as the player runs).

- monsters\_remember

  Makes monsters remember their previous enemy after killing their current target.

- sts\_always\_red

  LxDoom makes the colour of the text displays on the status bar reflect your current status (red=low, yellow=average, green=good, blue=supercharged). This option, if set, disables this behavior, returning to the original Doom behavior of displaying the numbers in red always, which is slightly faster.

- sts\_pct\_always\_gray

  See above, this makes just the percent signs always gray, instead of changing colour.

- sts\_traditional\_keys

  Doom and LxDoom have two types of keys; LxDoom will normally display both keys  of a given colour if you have both. This option, if enabled, instead makes LxDoom only ever display one key of each colour, in the same way Doom did.

- traditional\_menu

  Changes LxDoom's menu ordering to be the same as original Doom if enabled.

- show\_messages

  When enabled, text messages are displayed in the top left corner of the screen describing events in the game. Can be toggled in the game, this is just to preserve the setting.

- autorun

  Makes the player always run, without having to hold down a run key. Can be toggled in the game, this just preserves the setting.

## SOUND SETTINGS

- sound\_card

  Selects whether sound effects are enabled (non-zero enables). For compatibility reasons  with Boom, a range of values are accepted.

- music\_card

  Selects whether in-game music is enabled (non-zero enables). For compatibility reasons  a range of values are accepted.

- pitched\_sounds

  If enabled by this variable, this enables \`pitching' (making pitch adjustments to the  playing sounds) for 16 bit sound cards.

- sfx\_volume

  Sound effects volume. This is best adjusted in the game.

- music\_volume

  Music volume. This is best adjusted in the game.

- mus\_pause\_opt

  Selects what LxDoom does to the music when a games is paused. 0=stop the music,  1=pause the music (stop it playing, but when resumed resume it at the same  place - not implemented), 2=continue playing.

- soundsrv

  Selects the program to try to execute as an external sound server, without  which no sound effects can be played. The only program I know of to do this is  the supplied sound server (sndserv) with LxDoom, so enter its path here if  needed.

- musicsrv

  Selects the program to try to execute as an external music server, without  which no in-game music can be played. The only program I know of to do this  is the program lxmusserver, linked from the LxDoom site, so enter its path  here if needed.

- sounddev

  The device to which sound effects are sent. This must be a device compatible  with /dev/dsp on UNIX systems. For example, to play LxDoom's sound effects  through the PC speaker driver for Linux v2.0.x, change this entry to  /dev/pcsp16.

- snd\_channels

  The number of channels of audio that LxDoom is to manage simultaneously. Note  that this is separate from the sound server which maintains its own limits, so  this is probably irrelevant to UNIX ports of LxDoom.

- detect\_voices

  This is a historical entry used by a certain audio library for DOS, I don't  know for what. Thank god we're not using DOS eh? ;) Anyway this is preserved  only for compatibility/historical reasons in LxDoom.

## VIDEO SETTINGS

- screen\_width, screen\_height

  For versions of LxDoom which support high-res, these specify the default  screen or window size for LxDoom. These settings are ignored and preserved by  versions of LxDoom which do not do high-res (they assume 320x200).

- use\_vsync

  For versions of LxDoom that have access to the hardware at this low a level,  this tells LxDoom to wait to update the screen until a vertical retrace of the CRT screen. This means that the screen is updated while nothing is being  drawn, giving a smoother animation and faster redraws. However it does lower  the framerate.

- translucency

  Causes LxDoom to display certain objects as translucent.

- tran\_filter\_pct

  Selects how translucent objects are when they are translucent. Play with this  and see for yourself.

- screenblocks

  Selects a reduced screensize inside the LxDoom window (the player's view is  surrounded by a border). Normally this is undesirable, but it can help speed  up the game. Can be changed in the game with the +/- keys, this variable is just to preserve that setting.

- usegamma

  Selects a level of gamma correction (extra screen brightening) to correct for a  dark monitor or light surroundings. Can be selected in the game with the F11  key, this config entry preserves that setting.

- X\_options

  Sets various misc options used by the Xwindows version, lxdoom. Default is 0;  add 1 to disable MitSHM, add 2 to select alternate 24bpp code (use this if  lxdoom has video corruption in 24bpp visuals).

## MOUSE SETTINGS

This section specifies settings for using a mouse with LxDoom. There are several settings that control button bindings (what action each button causes inthe game); these are easiest set from the in-game menus, these config entries are to preserve the settings between games.

- use\_mouse

  Enable or disable the use of a mouse with LxDoom.

- mouse\_sensitivity\_horiz, mouse\_sensitivity\_vert

  Sets the sensitivity of the mouse in LxDoom. Easier set from the in-game menus.

## KEY BINDINGS

These specify the keys that trigger various actions in LxDoom. The codes used  for keys are internal to LxDoom, though many keys are represented by their  ASCII codes. It is easiest to modify these via the in-game menus  (OPTIONS-\>SETUP-\>KEY BINDINGS). These config file entries preserve the settings from this menu between game sessions.

## JOYSTICK SETTINGS

There are the trigger variables here, which are calculated during joystick  calibration (the values received from the kernel driver outside of which  movement is caused in the game). Also there are the button-bindings, again  best adjusted using the in-game menus.

- use\_joystick

  This selects the number of the joystick to use, or 0 selects no joystick. You  have to have the relevant device files (/dev/js0 etc) and the kernel driver  loaded.

## CHAT MACROS

These are pre-written text strings for quick transmission to players in a  network game (consult your Doom documentation). Easiest set via the in-game  menus (OPTIONS-\>SETUP-\>CHAT MACROS).

## AUTOMAP SETTINGS

These are settings related to the automap. These are easiest set from  within the game.

## HEADS\_UP DISPLAY SETTINGS

These are settings related to the heads-up display, that is messages received  while playing and the heads-up display of your current status obtained by  pressing + while the view is full-screen in LxDoom. See the Boom documentation  for details. All controlled best from within the game.

## WEAPON PREFERENCES

Here are the settings from the Weapons menu in the game  (OPTIONS-\>SETUP-\>WEAPONS).

## ALSO SEE

[lxdoom(6)](/lxdoom/6.md), LxDoom's documentation (including the Boom documentation) and your  Doom documentation.

## AUTHOR

Colin Phipps (cph@lxdoom.linuxgames.com)
