chocolate-hexen.cfg(5)
chocolate-hexen.cfg ๐ (section 5, File Formats Manual)
okay bestie, sit down, grab a strawberry ๐, because we're about to get into chocolate-hexen.cfg โ the config file for chocolate-hexen(6) โ and I promise it's not as scary as it looks. it's giving "spreadsheet of vibes", and honestly? we love her.
โจ NAME โจ
chocolate-hexen.cfg โ the Chocolate Hexen configuration file ๐
๐ DESCRIPTION ๐
so chocolate-hexen.cfg is a configuration file for chocolate-hexen(6). but here's the tea, bestie: it's an auxiliary config file. the main configuration options live in hexen.cfg, which holds the exact same options as Vanilla Hexen (for compatibility, periodt). chocolate-hexen.cfg is where all the options that are specific to Chocolate-Hexen only go. it's the special little exclusive VIP section. ๐
chocolate-hexen.cfg normally chills in your home directory, at:
~/.local/share/chocolate-hexen/chocolate-hexen.cfg
and yes, you can override that path using the XDG_DATA_HOME environment variable (see the XDG Base Directory Specification, iykyk).
also, if editing config files by hand is not your moment, the chocolate-hexen-setup(6) tool is a simple-to-use front-end for editing chocolate-hexen.cfg. it ate. ๐ฅ
๐ฆ FILE FORMAT ๐ฆ
literally the same file format as hexen.cfg(5). no notes. ๐
๐ CONFIGURATION VARIABLES ๐
here's the whole roster, one by one, no skips, no skimming. buckle up.
video_driverโ the name of the SDL video driver to use. if this is an empty string, the default video driver is used.window_positionโ where the window goes on the screen when running in windowed mode. accepted values are:""(empty string) โ don't care;"center"โ place the window at the center of the screen;"x,y"โ place the window at the specified coordinates.fullscreenโ if non-zero, the game runs in full screen mode. if zero, the game runs 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) andwindow_positionis not set to"center".aspect_ratio_correctโ if non-zero, the screen gets stretched vertically so it displays correctly on a square pixel video mode.smooth_pixel_scalingโ if non-zero, the screen has smooth scaling.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 the screen mode when running fullscreen. if this andfullscreen_heightare both set to zero, we run fullscreen as a desktop window that covers the entire screen, instead of ever switching screen modes. it should usually be unnecessary to set this value.fullscreen_heightโ height for the screen mode when running fullscreen. see the documentation forfullscreen_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 the intermediate scaling buffer. more pixels mean 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 lets the screen settle on some monitors that don't display an image for a brief interval after changing video modes.graphical_startupโ if non-zero, display the graphical startup screen.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 are11025,22050,44100and48000.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 is28ms(one slice per tic with the 35fps timer).snd_pitchshiftโ if non-zero, sound effects 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 whensnd_musicdeviceis set to General MIDI output.snd_dmxoptionโ value to set for theDMXOPTIONenvironment 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.autoload_pathโ full path to a directory in which WAD files and dehacked patches can be placed to be automatically loaded on startup. a subdirectory of this directory matching the IWAD name is checked to find the files to load.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.fsynth_chorus_activeโ if1, activate the FluidSynth chorus effects module. if0, no chorus is added to the output signal.fsynth_chorus_depthโ specifies the modulation depth of the FluidSynth chorus. default is5.0, range is0.0to256.0.fsynth_chorus_levelโ specifies the output amplitude of the FluidSynth chorus signal. default is0.35, range is0.0to10.0.fsynth_chorus_nrโ sets the voice count of the FluidSynth chorus signal. default is3, range is0to99.fsynth_chorus_speedโ sets the FluidSynth chorus modulation speed in Hz. default is0.3, range is0.1to5.0.fsynth_midibankselectโ this setting defines how FluidSynth interprets Bank Select messages. the default is"gs". other possible values are"gm","xg"and"mma".fsynth_polyphonyโ sets the number of FluidSynth voices that can be played in parallel. default is256, range is1-65535.fsynth_reverb_activeโ if1, activate the FluidSynth reverb effects module. if0, no reverb is added to the output signal.fsynth_reverb_dampโ sets the amount of FluidSynth reverb damping. default is0.4, range is0.0to1.0.fsynth_reverb_levelโ sets the FluidSynth reverb amplitude. default is0.15, range is0.0-1.0.fsynth_reverb_roomsizeโ sets the room size (i.e. amount of wet) FluidSynth reverb. default is0.6, range is0.0-1.0.fsynth_reverb_widthโ sets the stereo spread of the FluidSynth reverb signal. default is0.4, range is0.0-100.0.fsynth_gainโ fine tune the FluidSynth output level. default is1.0, range is0.0-10.0.fsynth_sf_pathโ full path to a soundfont file to use with FluidSynth MIDI playback.timidity_cfg_pathโ full path to a Timidity configuration file to use for MIDI playback. the file is evaluated from the directory where it is evaluated, so there's 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 are256,512,768or1024.winmm_midi_deviceโ MIDI device for native Windows MIDI.winmm_complevelโ compatibility level for native Windows MIDI, default0. valid values are0(Vanilla),1(Standard),2(Full).winmm_reset_typeโ reset device type for native Windows MIDI, default1. valid values are0(None),1(GM Mode),2(GS Mode),3(XG Mode).winmm_reset_delayโ reset device delay for native Windows MIDI, default0, median value100 ms.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 is"grabbed"when running in windowed mode so 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_turnleftโ the mouse button that turns you left. ๐mouseb_turnrightโ the mouse button that turns you right.mouseb_useโ mouse button to "use" an object, like a door or a switch. ๐ชmouseb_backwardโ mouse button that moves you backwards.mouseb_prevweaponโ mouse button that cycles to the previous weapon.mouseb_nextweaponโ mouse button that cycles to the next weapon.mouseb_useartifactโ mouse button to use an artifact. โจdclick_useโ if this is non-zero, double-clicking a mouse button acts like pressing the "use" key to use an object in-game, eg. a door or a switch.joystick_guidโ an SDL GUID string that says which joystick to use. An empty string means no joystick is configured.joystick_indexโ index of the SDL joystick to use; this one's only used when you've got multiple identical joystick devices connected that share the same GUID, so you can tell them apart. ๐ฎuse_analogโ if non-zero, use analog movement when playing with a gamepad.joystick_x_axisโ the joystick axis used for horizontal (X) movement.joystick_x_invertโ if non-zero, movement on the horizontal joystick axis is inverted. ๐joystick_turn_sensitivityโ joystick turn analog sensitivity, given as a value between 0 and 20.joystick_y_axisโ the joystick axis used for vertical (Y) movement.joystick_y_invertโ if non-zero, movement on the vertical joystick axis is inverted.joystick_strafe_axisโ the joystick axis used for strafing movement.joystick_strafe_invertโ if non-zero, movement on the joystick axis used for strafing is inverted.joystick_move_sensitivityโ joystick move and strafe analog sensitivity, given as a value between 0 and 20.joystick_look_axisโ the joystick axis used for looking up and down. ๐joystick_look_invertโ if non-zero, movement on the joystick axis used for looking is inverted.joystick_look_sensitivityโ joystick look analog sensitivity, given as a value between 0 and 20.
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.joystick_physical_button11โ the physical joystick button that corresponds to joystick virtual button #11.joystick_physical_button12โ the physical joystick button that corresponds to joystick virtual button #12.joystick_physical_button13โ the physical joystick button that corresponds to joystick virtual button #13.joystick_physical_button14โ the physical joystick button that corresponds to joystick virtual button #14.joystick_physical_button15โ the physical joystick button that corresponds to joystick virtual button #15.joystick_physical_button16โ the physical joystick button that corresponds to joystick virtual button #16. ๐น๏ธ
use_gamepadโ if non-zero, use theSDL_GameControllerinterface instead of theSDL_Joystickinterface.gamepad_typeโ stores theSDL_GameControllerTypeof the last configured gamepad.joystick_x_dead_zoneโ joystick x axis dead zone, given as a percentage of the axis max value.joystick_y_dead_zoneโ joystick y axis dead zone, given as a percentage of the axis max value.joystick_strafe_dead_zoneโ joystick strafe axis dead zone, given as a percentage of the axis max value.joystick_look_dead_zoneโ joystick look axis dead zone, given as a percentage of the axis max value. ๐
joyb_strafeleftโ joystick virtual button that makes the player strafe left.joyb_straferightโ joystick virtual button that makes the player strafe right.joyb_menu_activateโ joystick virtual button that activates the menu.joyb_toggle_automapโ joystick virtual button that toggles the automap. ๐บ๏ธjoyb_prevweaponโ joystick virtual button that cycles to the previous weapon.joyb_nextweaponโ joystick virtual button that cycles to the next weapon.joyb_useartifactโ joystick virtual button that activates an artifact.joyb_invleftโ joystick virtual button that moves left in the inventory.joyb_invrightโ joystick virtual button that moves right in the inventory.joyb_flyupโ joystick virtual button that flies up.joyb_flydownโ joystick virtual button that flies down.joyb_flycenterโ joystick virtual button that centers flying.
key_pauseโ the key that pauses or unpauses the game. โธ๏ธkey_menu_activateโ the key that activates the menu when you press it.key_menu_upโ the key that moves the cursor up on the menu.key_menu_downโ the key that moves the cursor down on the menu.key_menu_leftโ the key that moves the currently selected slider on the menu to the left.key_menu_rightโ the key that moves the currently selected slider on the menu to the right.key_menu_backโ the key that goes back to the previous menu.key_menu_forwardโ the key that activates the currently selected menu item.key_menu_confirmโ the key that answers 'yes' to a question in the menu.key_menu_abortโ the key that answers 'no' to a question in the menu.key_menu_helpโ keyboard shortcut that brings up the help screen.key_menu_saveโ keyboard shortcut that brings up the save game menu.key_menu_loadโ keyboard shortcut that brings up the load game menu.key_menu_volumeโ keyboard shortcut that brings up the sound volume menu. ๐key_menu_detailโ keyboard shortcut that toggles the detail level.key_menu_qsaveโ keyboard shortcut that quicksaves the current game.key_menu_endgameโ keyboard shortcut that ends the game.key_menu_messagesโ keyboard shortcut that toggles heads-up messages.key_menu_qloadโ keyboard shortcut that loads the last quicksave.key_menu_quitโ keyboard shortcut that quits the game.key_menu_gammaโ keyboard shortcut that toggles the gamma correction level.key_spyโ keyboard shortcut that switches view in multiplayer.key_menu_incscreenโ keyboard shortcut that increases the screen size.key_menu_decscreenโ keyboard shortcut that decreases the screen size.key_menu_screenshotโ keyboard shortcut that saves a screenshot. ๐ธ
key_map_toggleโ the key that toggles the map view.key_map_northโ the key that pans north when you're in the map view.key_map_southโ the key that pans south when you're in the map view.key_map_eastโ the key that pans east when you're in the map view.key_map_westโ the key that pans west when you're in the map view.key_map_zoominโ the key that zooms in when you're in the map view.key_map_zoomoutโ the key that zooms out when you're in the map view.key_map_maxzoomโ the key that zooms out the maximum amount when you're in the map view.key_map_followโ the key that toggles follow mode when you're in the map view.key_map_gridโ the key that toggles the grid display when you're in the map view.key_map_markโ the key that sets a mark when you're in the map view.key_map_clearmarkโ the key that clears all marks when you're in the map view. ๐
key_weapon1โ the key that selects weapon 1.key_weapon2โ the key that selects weapon 2.key_weapon3โ the key that selects weapon 3.key_weapon4โ the key that selects weapon 4.key_weapon5โ the key that selects weapon 5.key_weapon6โ the key that selects weapon 6.key_weapon7โ the key that selects weapon 7.key_weapon8โ the key that selects weapon 8.key_prevweaponโ the key that cycles to the previous weapon.key_nextweaponโ the key that cycles to the next weapon.
key_arti_allโ the key that uses one of each artifact.key_arti_healthโ the key that uses the "quartz flask" artifact.key_arti_poisonbagโ the key that uses the "flechette" artifact.key_arti_blastradiusโ the key that uses the "disc of repulsion" artifact.key_arti_teleportโ the key that uses the "chaos device" artifact.key_arti_teleportotherโ the key that uses the "banishment device" artifact.key_arti_eggโ the key that uses the "porkalator" artifact. ๐ทkey_arti_invulnerabilityโ the key that uses the "icon of the defender" artifact. ๐
key_message_refreshโ the key that re-displays the last message.key_demo_quitโ the key that quits the game when recording a demo.key_multi_msgโ the key that sends a message during multiplayer games.key_multi_msgplayer1โ the key that sends a message to player 1 during multiplayer games.key_multi_msgplayer2โ the key that sends a message to player 2 during multiplayer games.key_multi_msgplayer3โ the key that sends a message to player 3 during multiplayer games.key_multi_msgplayer4โ the key that sends a message to player 4 during multiplayer games.key_multi_msgplayer5โ the key that sends a message to player 5 during multiplayer games.key_multi_msgplayer6โ the key that sends a message to player 6 during multiplayer games.key_multi_msgplayer7โ the key that sends a message to player 7 during multiplayer games.key_multi_msgplayer8โ the key that sends a message to player 8 during multiplayer games. ๐ฌ
โจ SEE ALSO โจ
ok so like, if you wanna go deeper (and bestie, you should), go read these ๐
chocolate-hexen(6)โ the actual game page, the main character fr ๐hexen.cfg(5)โ the vanilla Hexen config, so you can compare and contrast with your new setup ๐ฆchocolate-hexen-setup(6)โ the setup tool, for when you'd rather click buttons than hand-edit configs, no judgment ๐
and that's the whole page, we ate and left no crumbs ๐โจ
this wasChocolate Doom 3.1.1, dated2024-01-23โ screenshot it, cite it, whatever, just don't come for me in the replies ๐
ily, go frag some afrits for me ๐ง๐
๐ฆ where this page comes from
- fedora 43: chocolate-doom 3.1.1-1.fc43 ยท GPL-2.0-or-later
- fedora 44: chocolate-doom 3.1.1-1.fc44 ยท GPL-2.0-or-later
- nixpkgs unstable: chocolate-doom 3.1.1
- ubuntu resolute: chocolate-doom 3.1.1-1 ยท GPL-2.0-or-later
- ubuntu stonking: chocolate-doom 3.1.1-1 ยท GPL-2.0-or-later
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms