NAME
chocolate-doom.cfg - Chocolate Doom configuration file
DESCRIPTION

chocolate-doom.cfg is a configuration file for chocolate-doom(6). This file acts as an auxiliary configuration file; the main configuration options are stored in default.cfg, which contains the same configuration options as Vanilla Doom (for compatibility). chocolate-doom.cfg contains configuration options that are specific to Chocolate Doom only.

chocolate-doom.cfg is normally stored in the user's home directory, as ~/.local/share/chocolate-doom/chocolate-doom.cfg. The path can be overridden using the XDG_DATA_HOME environment variable (see the XDG Base Directory Specification).

The chocolate-setup(6) tool provides a simple to use front-end for editing chocolate-doom.cfg.

FILE FORMAT

The file format is the same as that used for default.cfg(5).

CONFIGURATION VARIABLES

video_driver Name of the SDL video driver to use. If this is an empty string, the default video driver is used.

window_position Position of the window on the screen when running in windowed mode. Accepted values are: "" (empty string) - don't care, "center" - place window at center of screen, "x,y" - place window at the specified coordinates.

fullscreen If non-zero, the game will run in full screen mode. If zero, the game will run in a window.

video_display Index of the display on which the game should run. This has no effect if running in windowed mode (fullscreen=0) and window_position is not set to "center".

aspect_ratio_correct If non-zero, the screen will be stretched vertically to display correctly on a square pixel video mode.

integer_scaling If non-zero, forces integer scales for resolution-independent rendering.

window_width Window width when running in windowed mode.

window_height Window height when running in windowed mode.

fullscreen_width Width for screen mode when running fullscreen. If this and fullscreen_height are both set to zero, we run fullscreen as a desktop window that covers the entire screen, rather than ever switching screen modes. It should usually be unnecessary to set this value.

fullscreen_height Height for screen mode when running fullscreen. See documentation for fullscreen_width.

force_software_renderer If non-zero, force the use of a software renderer. For use on systems lacking hardware acceleration.

max_scaling_buffer_pixels Maximum number of pixels to use for intermediate scaling buffer. More pixels mean that the screen can be rendered more precisely, but there are diminishing returns on quality. The default limits to 16,000,000 pixels, which is enough to cover 4K monitor standards.

startup_delay Number of milliseconds to wait on startup after the video mode has been set, before the game will start. This allows the screen to settle on some monitors that do not display an image for a brief interval after changing video modes.

show_endoom If non-zero, the ENDOOM text screen is displayed when exiting the game. If zero, the ENDOOM screen is not displayed.

show_diskicon If non-zero, a disk activity indicator is displayed when data is read from disk. If zero, the disk activity indicator is not displayed.

png_screenshots If non-zero, save screenshots in PNG format. If zero, screenshots are saved in PCX format, as Vanilla Doom does.

snd_samplerate Sound output sample rate, in Hz. Typical values to use are 11025, 22050, 44100 and 48000.

snd_cachesize Maximum number of bytes to allocate for caching converted sound effects in memory. If set to zero, there is no limit applied.

snd_maxslicetime_ms Maximum size of the output sound buffer size in milliseconds. Sound output is generated periodically in slices. Higher values might be more efficient but will introduce latency to the sound output. The default is 28ms (one slice per tic with the 35fps timer).

snd_pitchshift If non-zero, sound effects will have their pitch varied up or down by a random amount during play. If zero, sound effects play back at their default pitch.

snd_musiccmd External command to invoke to perform MIDI playback. If set to the empty string, SDL_mixer's internal MIDI playback is used. This only has any effect when snd_musicdevice is set to General MIDI output.

snd_dmxoption Value to set for the DMXOPTION environment variable. If this contains "-opl3", output for an OPL3 chip is generated when in OPL MIDI playback mode.

opl_io_port The I/O port to use to access the OPL chip. Only relevant when using native OPL music playback.

use_libsamplerate Controls whether libsamplerate support is used for performing sample rate conversions of sound effects. Support for this must be compiled into the program. If zero, libsamplerate support is disabled. If non-zero, libsamplerate is enabled. Increasing values roughly correspond to higher quality conversion; the higher the quality, the slower the conversion process. Linear conversion = 1; Zero order hold = 2; Fast Sinc filter = 3; Medium quality Sinc filter = 4; High quality Sinc filter = 5.

libsamplerate_scale Scaling factor used by libsamplerate. This is used when converting sounds internally back into integer form; normally it should not be necessary to change it from the default value. The only time it might be needed is if a PWAD file is loaded that contains very loud sounds, in which case the conversion may cause sound clipping and the scale factor should be reduced. The lower the value, the quieter the sound effects become, so it should be set as high as is possible without clipping occurring.

music_pack_path Full path to a directory containing configuration files for substitute music packs. These packs contain high quality renderings of game music to be played instead of using the system's built-in MIDI playback.

timidity_cfg_path Full path to a Timidity configuration file to use for MIDI playback. The file will be evaluated from the directory where it is evaluated, so there is no need to add "dir" commands into it.

gus_patch_path Path to GUS patch files to use when operating in GUS emulation mode.

gus_ram_kb Number of kilobytes of RAM to use in GUS emulation mode. Valid values are 256, 512, 768 or 1024.

vanilla_savegame_limit If non-zero, the Vanilla savegame limit is enforced; if the savegame exceeds 180224 bytes in size, the game will exit with an error. If this has a value of zero, there is no limit to the size of savegames.

vanilla_demo_limit If non-zero, the Vanilla demo size limit is enforced; the game exits with an error when a demo exceeds the demo size limit (128KiB by default). If this has a value of zero, there is no limit to the size of demos.

vanilla_keyboard_mapping If non-zero, the game behaves like Vanilla Doom, always assuming an American keyboard mapping. If this has a value of zero, the native keyboard mapping of the keyboard is used.

player_name Name to use in network games for identification. This is only used on the "waiting" screen while waiting for the game to start.

grabmouse If this is non-zero, the mouse will be "grabbed" when running in windowed mode so that it can be used as an input device. When running full screen, this has no effect.

novert If non-zero, all vertical mouse movement is ignored. This emulates the behavior of the "novert" tool available under DOS that performs the same function.

mouse_acceleration Mouse acceleration factor. When the speed of mouse movement exceeds the threshold value (mouse_threshold), the speed is multiplied by this value.

mouse_threshold Mouse acceleration threshold. When the speed of mouse movement exceeds this threshold value, the speed is multiplied by an acceleration factor (mouse_acceleration).

mouseb_strafeleft Mouse button to strafe left.

mouseb_straferight Mouse button to strafe right.

mouseb_use Mouse button to "use" an object, eg. a door or switch.

mouseb_backward Mouse button to move backwards.

mouseb_prevweapon Mouse button to cycle to the previous weapon.

mouseb_nextweapon Mouse button to cycle to the next weapon.

dclick_use If non-zero, double-clicking a mouse button acts like pressing the "use" key to use an object in-game, eg. a door or switch.

joystick_guid SDL GUID string indicating the joystick to use. An empty string indicates that no joystick is configured.

joystick_index Index of SDL joystick to use; this is only used in the case where multiple identical joystick devices are connected which have the same GUID, to distinguish between devices.

joystick_x_axis Joystick axis to use to for horizontal (X) movement.

joystick_x_invert If non-zero, movement on the horizontal joystick axis is inverted.

joystick_y_axis Joystick axis to use to for vertical (Y) movement.

joystick_y_invert If non-zero, movement on the vertical joystick axis is inverted.

joystick_strafe_axis Joystick axis to use to for strafing movement.

joystick_strafe_invert If non-zero, movement on the joystick axis used for strafing is inverted.

joystick_look_axis Joystick axis to use to for looking up and down.

joystick_look_invert If non-zero, movement on the joystick axis used for looking is inverted.

joystick_physical_button0 The physical joystick button that corresponds to joystick virtual button #0.

joystick_physical_button1 The physical joystick button that corresponds to joystick virtual button #1.

joystick_physical_button2 The physical joystick button that corresponds to joystick virtual button #2.

joystick_physical_button3 The physical joystick button that corresponds to joystick virtual button #3.

joystick_physical_button4 The physical joystick button that corresponds to joystick virtual button #4.

joystick_physical_button5 The physical joystick button that corresponds to joystick virtual button #5.

joystick_physical_button6 The physical joystick button that corresponds to joystick virtual button #6.

joystick_physical_button7 The physical joystick button that corresponds to joystick virtual button #7.

joystick_physical_button8 The physical joystick button that corresponds to joystick virtual button #8.

joystick_physical_button9 The physical joystick button that corresponds to joystick virtual button #9.

joystick_physical_button10 The physical joystick button that corresponds to joystick virtual button #10.

joyb_strafeleft Joystick virtual button to make the player strafe left.

joyb_straferight Joystick virtual button to make the player strafe right.

joyb_menu_activate Joystick virtual button to activate the menu.

joyb_toggle_automap Joystick virtual button to toggle the automap.

joyb_prevweapon Joystick virtual button that cycles to the previous weapon.

joyb_nextweapon Joystick virtual button that cycles to the next weapon.

key_pause Key to pause or unpause the game.

key_menu_activate Key that activates the menu when pressed.

key_menu_up Key that moves the cursor up on the menu.

key_menu_down Key that moves the cursor down on the menu.

key_menu_left Key that moves the currently selected slider on the menu left.

key_menu_right Key that moves the currently selected slider on the menu right.

key_menu_back Key to go back to the previous menu.

key_menu_forward Key to activate the currently selected menu item.

key_menu_confirm Key to answer 'yes' to a question in the menu.

key_menu_abort Key to answer 'no' to a question in the menu.

key_menu_help Keyboard shortcut to bring up the help screen.

key_menu_save Keyboard shortcut to bring up the save game menu.

key_menu_load Keyboard shortcut to bring up the load game menu.

key_menu_volume Keyboard shortcut to bring up the sound volume menu.

key_menu_detail Keyboard shortcut to toggle the detail level.

key_menu_qsave Keyboard shortcut to quicksave the current game.

key_menu_endgame Keyboard shortcut to end the game.

key_menu_messages Keyboard shortcut to toggle heads-up messages.

key_menu_qload Keyboard shortcut to load the last quicksave.

key_menu_quit Keyboard shortcut to quit the game.

key_menu_gamma Keyboard shortcut to toggle the gamma correction level.

key_spy Keyboard shortcut to switch view in multiplayer.

key_menu_incscreen Keyboard shortcut to increase the screen size.

key_menu_decscreen Keyboard shortcut to decrease the screen size.

key_menu_screenshot Keyboard shortcut to save a screenshot.

key_map_toggle Key to toggle the map view.

key_map_north Key to pan north when in the map view.

key_map_south Key to pan south when in the map view.

key_map_east Key to pan east when in the map view.

key_map_west Key to pan west when in the map view.

key_map_zoomin Key to zoom in when in the map view.

key_map_zoomout Key to zoom out when in the map view.

key_map_maxzoom Key to zoom out the maximum amount when in the map view.

key_map_follow Key to toggle follow mode when in the map view.

key_map_grid Key to toggle the grid display when in the map view.

key_map_mark Key to set a mark when in the map view.

key_map_clearmark Key to clear all marks when in the map view.

key_weapon1 Key to select weapon 1.

key_weapon2 Key to select weapon 2.

key_weapon3 Key to select weapon 3.

key_weapon4 Key to select weapon 4.

key_weapon5 Key to select weapon 5.

key_weapon6 Key to select weapon 6.

key_weapon7 Key to select weapon 7.

key_weapon8 Key to select weapon 8.

key_prevweapon Key to cycle to the previous weapon.

key_nextweapon Key to cycle to the next weapon.

key_message_refresh Key to re-display last message.

key_demo_quit Key to quit the game when recording a demo.

key_multi_msg Key to send a message during multiplayer games.

key_multi_msgplayer1 Key to send a message to player 1 during multiplayer games.

key_multi_msgplayer2 Key to send a message to player 2 during multiplayer games.

key_multi_msgplayer3 Key to send a message to player 3 during multiplayer games.

key_multi_msgplayer4 Key to send a message to player 4 during multiplayer games.

SEE ALSO
chocolate-doom(6), default.cfg(5), chocolate-setup(6)