Advanced configuration

You can configure various parameters of doukutsu-rs in three ways:

  • through settings

  • through environment variables

  • through command line arguments

Settings

Most parameters can be configured in the Options menu on the title screen. But some of them can only be configured by directly editing them in the settings.json file (located in the user data dir) or in the debug menu.

Option name
Values
Description

debug_mode

true | false (default)

Enables debug hotkeys and menus.

This parameter is ignored if the engine was compiled in debug mode.

For more details, see Debugging and testing.

fps_counter

true | false (default)

Enable FPS and TPS counters in the top right corner.

more_rust

true | false (default)

Replaces the Sue sprite with Crabby Sue (our mascot) and adds a light blue filter to Sue's face in the text box.

This setting is always active on 7 July.

Environment variables

You cannot use environment variables to configure gameplay or visual aspects, but you can configure lower-level aspects of the engine. All environment variables have the prefix CAVESTORY_.

CAVESTORY_DATA_DIR

Type: string

This variable specifies the full path to the game data directory. By default, if this variable is missing, the engine searches for game data in the current working directory and in the same folder where the engine executable file is located.

CAVESTORY_NO_OPENGL

Type: boolean

Possible values: 1 (true) | 0 (false)

Forces the engine to not use OpenGL. This is only supported if the engine is built with the SDL backend (feature backend-sdl). Since the engine doesn't support any other graphics APIs, this parameter has no effect.

Command line arguments

All command line parameters are optional, but the application will crash if any of their values are invalid.

Boolean parameters don't accept values and are off by default. String parameters are case-insensetive.

Window

Name
Value type
Values
Description

--window-height

integer (u16)

From 0 to 16535.

Default value: 480.

Window height in pixels.

--window-width

integer (u16)

From 0 to 16535.

Default value: 640.

Window width in pixels.

--window-fullscreen

boolean

-

Startup the game in fullscreen mode.

Logging

Name
Value type
Values
Description

--log-level

string

error, warn, info, debug, trace.

Default value: info or debug (if the engine is built in the debug mode).

The minimum level of records that will be written to the log file.

This parameter doesn't affect the level of records that will be written to the console.

Misc

Name
Value type
Values
Description

--server-mode

boolean

-

Do not create a window and skip audio initialization.

It was probably intended for use in online multiplayer, but currenly there's no practical application for this parameter.

--editor

boolean

-

Enable built-in editor.

Only applicable if the engine was compiled with the editor function. The editor is currently broken.

--help

boolean

-

Prints a description of all available CLI parameters and exits the program.

Last updated

Was this helpful?