crispy-strife.cfg(5)
π NAME π
crispy-strife.cfg β bestie, it's the Crispy Strife configuration file π
This is from the File Formats Manual section of the manual pages, so the full tag on it is crispy-strife.cfg(5). Yes, section 5, we love a file-formats girlie. π¦
β¨ DESCRIPTION β¨
Okay so, crispy-strife.cfg is the config file for crispy-strife(6). But here's the tea: it's an auxiliary config file. The main config options live over in strife.cfg, which holds all the same options as Vanilla Strife (for compatibility reasons, we keep it around, iconic behaviour honestly). crispy-strife.cfg is where the options that are specific to Crispy-Strife only go. It's giving "special edition side file." π
crispy-strife.cfg normally chills in your home directory, at:
~/.local/share/crispy-strife/crispy-strife.cfg
But you can override that path with the XDG_DATA_HOME environment variable (go read the XDG Base Directory Specification, iykyk). πΈ
And if you don't feel like hand-editing this whole thing, the crispy-strife-setup(6) tool is a simple-to-use front-end for editing crispy-strife.cfg. Main character convenience. π
π FILE FORMAT π
The file format is exactly the same as the one used for strife.cfg(5). Same energy, same rules. Periodt. β¨
ποΈ CONFIGURATION VARIABLES ποΈ
Okay bestie, here comes the whole list. No skipping, no summarising β every single one of these matters. π
video_driverβ Name of the SDL video driver you want to use. If this is an empty string, the default video driver is used.window_positionβ Where the window sits on your 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 the game should run on. Heads up: this has no effect if you're 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 gets smooth scaling.integer_scalingβ If non-zero, forces integer scales for resolution-independent rendering. Clean numbers only, we're not messy here. π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, rather than 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 it to16,000,000pixels, 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.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.mouse_acceleration_yβ Vertical mouse acceleration factor. When the speed of mouse movement exceeds the threshold value (mouse_threshold), the speed is multiplied by this value. π±οΈmouse_threshold_yβ Vertical mouse acceleration threshold. When the speed of mouse movement exceeds this threshold value, the speed is multiplied by an acceleration factor (mouse_acceleration).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 the35fpstimer). β±οΈ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 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 will be 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 will be 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 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 are256,512,768or1024.winmm_midi_deviceβ MIDI device for native Windows MIDI. πͺwinmm_complevelβ Compatibility level for native Windows MIDI, default1. 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_savegame_limitβ If non-zero, the Vanilla savegame limit is enforced; if the savegame exceeds180224bytes 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 (128KiBby default). If this has a value of zero, there is no limit to the size of demos.vanilla_keyboard_mappingβ bestie, if this is non-zero the game goes full Vanilla Doom mode and always assumes an American keyboard mapping π . Set it to zero and it'll actually use your keyboard's native mapping instead. no cap.runcenteringβ so by default, pressing "run" centers the view in Strife. Iconic, right? This setting is how you toggle that behavior on and off π.a11y_sector_lightingβ if zero, this disables sectors changing their light level. that's it, that's the whole thing β¨.a11y_extra_lightingβ the amount of extra light to add to the game scene. accessibility queen πΈ.a11y_weapon_flashβ if zero, this disables weapon flashes changing the ambient light level and flickering of torches π₯.a11y_weapon_paletteβ if zero, this disables weapon palette changes.a11y_weapon_psprβ if zero, this disables rendering of weapon flashes sprites.a11y_palette_changesβ if zero, this disables palette changes upon damage, item pickup, or when wearing the radiation suit π§.a11y_invul_colormapβ if zero, this disables colormap changes during invulnerability.player_nameβ the name to use in network games for identification π. lowkey it's only used on the "waiting" screen while waiting for the game to start. main character energy on the lobby screen, periodt.grabmouseβ if this is non-zero, the mouse gets "grabbed" when running in windowed mode so it can actually be used as an input device π«Ά. When you're running full screen, this does literally nothing.novertβ if non-zero, all vertical mouse movement is ignored. It emulates the behavior of the "novert" tool available under DOS that does the exact same thing, so if you know you know π.mouse_accelerationβ the mouse acceleration factor. When the speed of your mouse movement exceeds the threshold value (mouse_threshold), the speed gets multiplied by this value π.mouse_thresholdβ the mouse acceleration threshold. When the speed of mouse movement exceeds this threshold value, the speed is multiplied by an acceleration factor (mouse_acceleration). they're a lil duo, fr fr.mouseb_strafeleftβ mouse button to strafe left.mouseb_straferightβ mouse button to strafe right.mouseb_turnleftβ mouse button to turn left.mouseb_turnrightβ mouse button to turn 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.mouseb_invuseβ mouse button to use inventory item.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β an SDL GUID string indicating the joystick to use. An empty string means no joystick is configured. nada. zero. empty nest π¦.joystick_indexβ the index of the SDL joystick to use. This is only used in the case where multiple identical joystick devices are connected which have 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β joystick axis to use to 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, specified as a value between0and20π―.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_move_sensitivityβ joystick move and strafe analog sensitivity, specified as a value between0and20β¨.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_look_sensitivityβ joystick look analog sensitivity, specified as a value between0and20π.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. yes bestie, we really did go all the way to sixteen π.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, specified as a percentage of the axis max value.joystick_y_dead_zoneβ joystick y axis dead zone, specified as a percentage of the axis max value.joystick_strafe_dead_zoneβ joystick strafe axis dead zone, specified as a percentage of the axis max value.joystick_look_dead_zoneβ joystick look axis dead zone, specified as a percentage of the axis max value.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.
okay now we're into the keybinds section and this is where it gets real π
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_nextlevelβ keyboard shortcut to go to next level.key_menu_reloadlevelβ keyboard shortcut to restart current level or demo.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_menu_cleanscreenshotβ keyboard shortcut to save a clean screenshot β¨.key_menu_delβ key to delete a savegame π.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 π§Ή.
Okay bestie, deep breath, we're in the home stretch of the keybinds π still under the config variables, still not done, but so close.
key_map_overlayβ the key that toggles overlay mode while you're in the map view. πΊοΈkey_map_rotateβ the key that toggles rotate mode when you're in the map view.mouseb_mapzoominβ mouse button that zooms in when you're in the map view.mouseb_mapzoomoutβ mouse button that zooms out when you're in the map view.mouseb_mapmaxzoomβ mouse button that zooms out the max amount when you're in the map view.mouseb_mapfollowβ mouse button that toggles follow mode when you're 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. (yes, it stops at eight, don't come for me π )key_prevweaponβ key to cycle to the previous weapon.key_nextweaponβ key to cycle to the next weapon. the way these two carry your whole loadout fr fr π₯key_message_refreshβ key to re-display the last message. didn't catch it the first time? iconic, hit it again.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.key_multi_msgplayer5β key to send a message to player 5 during multiplayer games.key_multi_msgplayer6β key to send a message to player 6 during multiplayer games.key_multi_msgplayer7β key to send a message to player 7 during multiplayer games.key_multi_msgplayer8β key to send a message to player 8 during multiplayer games. one whole squad of direct messages, obsessed. πkey_reverseβ quick 180Β° reverse. spin on 'em. πcrispy_crosshairβ draw a crosshair.crispy_crosshairhealthβ crosshair color indicates health. πcrispy_gammaβ Crispy's own variable to support intermediate and negative gamma levels. negative gamma?? yes bestie, the vibes go both ways β¨
π SEE ALSO π
and that's the whole page, bestie!! you read all three parts, that's main character energy for real ππ¦
this gem comes from Crispy Doom 7.1.0, dated 2024-01-23, and yes, it's the crispy-strife.cfg(5) manual β go forth and configurate responsibly πβ¨
π¦ where this page comes from
- nixos 26.05: crispy-doom 7.1
- ubuntu questing: crispy-doom 7.1-1
- ubuntu resolute: crispy-doom 7.1-1build1 Β· GPL-2.0-or-later
- ubuntu stonking: crispy-doom 7.1-1build1 Β· 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