hexen.cfg(5)

πŸ“¦
version 3.1.1 Β· 3 versions
, in fedora 43, fedora 44, nixpkgs unstable, ubuntu resolute, ubuntu stonking

πŸ’– hexen.cfg β€” the manual page, but make it make sense πŸ’–

okay bestie, so this is the manual for hexen.cfg(5), which is a File Formats Manual entry, and it's literally the whole entire lore of your Chocolate Hexen config file. let's get into it πŸŽ€


✨ NAME ✨

hexen.cfg β€” the Chocolate Hexen configuration file. that's it. that's the name. iconic πŸ’…


🌸 DESCRIPTION 🌸

okay so hexen.cfg is the configuration file for chocolate-hexen(6). the options stored in this file are the exact same ones that were stored in the original DOS Vanilla Hexen β€” no cap, same energy as 1995. the extra Chocolate Hexen–specific options live somewhere else, in their own separate config file called chocolate-hexen.cfg. so don't go looking for them here 🫢

normally hexen.cfg chills in your home directory, at ~/.local/share/chocolate-hexen/hexen.cfg. but lowkey you can override that path with the XDG_DATA_HOME environment variable (see the XDG Base Directory Specification, iykyk).

and if you don't wanna hand-edit this thing, the chocolate-hexen-setup(6) tool is a whole simple-to-use front-end for editing hexen.cfg. use it. she's the main character of convenience πŸ’–


🌈 FILE FORMAT 🌈

it's a plain-text file. a list of configuration options and their values, separated by whitespace. one option per line, no exceptions. options have types β€” an option can have an integer, floating point, or string value. and if the option is a string type, the value gets wrapped in quotes (").

for example, look at this beauty:

integer_value                1
integer_value2               1
floating_point_value         4.2
string_value                 "hello world"

now here's the tea β˜• β€” invalid lines or comments in the file will be ignored, but fr fr, please don't put them in there. the file gets rewritten from scratch every single time the game exits, so any invalid lines or comments? gone. vanished. lost to the void πŸ’€

some options are for keyboard key bindings. those are stored as integer values containing the keyboard scan code of the key you're binding to. and booleans? also stored as integers. a value of zero usually means "false" and a non-zero value means "true". yes bestie, it's giving old-school. that's the vibe.


πŸ‘‘ CONFIGURATION VARIABLES πŸ‘‘

  • mouse_sensitivity β€” mouse sensitivity. this value multiplies the input mouse movement to control how much the mouse actually does stuff. the "normal" maximum value you can get through the in-game options menu is 9. and a value of 31 or greater will cause the game to crash when you enter the options menu. so like. don't. 😭
  • sfx_volume β€” volume of sound effects, range 0-15.
  • music_volume β€” volume of in-game music, range 0-15.
  • key_right β€” keyboard key to turn right.
  • key_left β€” keyboard key to turn left.
  • key_up β€” keyboard key to move forward.
  • key_down β€” keyboard key to move backward.
  • key_strafeleft β€” keyboard key to strafe left.
  • key_straferight β€” keyboard key to strafe right.
  • key_jump β€” keyboard key to jump.
  • key_flyup β€” keyboard key to fly upward.
  • key_flydown β€” keyboard key to fly downwards.
  • key_flycenter β€” keyboard key to center flying.
  • key_lookup β€” keyboard key to look up.
  • key_lookdown β€” keyboard key to look down.
  • key_lookcenter β€” keyboard key to center the view.
  • key_invleft β€” keyboard key to scroll left in the inventory.
  • key_invright β€” keyboard key to scroll right in the inventory.
  • key_useartifact β€” keyboard key to use the current item in the inventory.
  • key_fire β€” keyboard key to fire the currently selected weapon.
  • key_use β€” keyboard key to "use" an object, eg. a door or switch.
  • key_strafe β€” keyboard key to turn on strafing. when held down, pressing the key to turn left or right causes the player to strafe left or right instead. the way that it flips your whole movement vibe ✨
  • key_speed β€” keyboard key to make the player run.
  • use_mouse β€” if non-zero, mouse input is enabled. if zero, mouse input is disabled.
  • mouseb_fire β€” mouse button to fire the currently selected weapon.
  • mouseb_strafe β€” mouse button to turn on strafing. when held down, the player will strafe left and right instead of turning left and right.
  • mouseb_forward β€” mouse button to move forward.
  • mouseb_speed β€” mouse button to turn on running. when held down, the player will run while moving.
  • mouseb_jump β€” mouse button to jump.
  • use_joystick β€” if non-zero, joystick input is enabled.
  • joyb_fire β€” joystick virtual button that fires the current weapon.
  • joyb_strafe β€” joystick virtual button that makes the player strafe while held down.
  • joyb_use β€” joystick virtual button to "use" an object, eg. a door or switch.
  • joyb_speed β€” joystick virtual button that makes the player run while held down. if this has a value of 20 or greater, the player will always run, even if use_joystick is 0. periodt πŸƒ
  • joyb_jump β€” joystick virtual button that makes the player jump.
  • screenblocks β€” screen size, range 3-11. a value of 11 gives a full-screen view with the status bar not displayed. a value of 10 gives a full-screen view with the status bar displayed.
  • snd_channels β€” number of sounds that will be played simultaneously.
  • snd_musicdevice β€” music output device. a non-zero value gives MIDI sound output, while a value of zero disables music.
  • snd_sfxdevice β€” sound effects device. a value of zero disables in-game sound effects, a value of 1 enables PC speaker sound effects, while a value in the range 2-9 enables the "normal" digital sound effects.
  • snd_sbport β€” SoundBlaster I/O port. Unused.
  • snd_sbirq β€” SoundBlaster IRQ. Unused.
  • snd_sbdma β€” SoundBlaster DMA channel. Unused.
  • snd_mport β€” output port to use for OPL MIDI playback. Unused.
  • usegamma β€” gamma correction level. a value of zero disables gamma correction, while a value in the range 1-4 gives increasing levels of gamma correction.
  • savedir β€” directory in which to store savegames.
  • messageson β€” controls whether messages are displayed in the heads-up display. if this has a non-zero value, messages are displayed.
  • chatmacro0 β€” multiplayer chat macro: message to send when alt+0 is pressed.
  • chatmacro1 β€” multiplayer chat macro: message to send when alt+1 is pressed.
  • chatmacro2 β€” multiplayer chat macro: message to send when alt+2 is pressed.
  • chatmacro3 β€” multiplayer chat macro: message to send when alt+3 is pressed.
  • chatmacro4 β€” multiplayer chat macro: message to send when alt+4 is pressed.
  • chatmacro5 β€” multiplayer chat macro: message to send when alt+5 is pressed.
  • chatmacro6 β€” multiplayer chat macro: message to send when alt+6 is pressed.
  • chatmacro7 β€” multiplayer chat macro: message to send when alt+7 is pressed.
  • chatmacro8 β€” multiplayer chat macro: message to send when alt+8 is pressed.
  • chatmacro9 β€” multiplayer chat macro: message to send when alt+9 is pressed.

πŸ¦‹ SEE ALSO πŸ¦‹

chocolate-hexen(6), chocolate-hexen.cfg(5), chocolate-hexen-setup(6) β€” go read those too bestie, they're all connected πŸ’œ


and that's the whole page! this one came from Chocolate Doom 3.1.1, dated 2017-11-30, and it's filed under hexen.cfg(5). slay, go configure something πŸŒŸπŸ’–