Config Files and Changing Mod Settings

After first launching the game, two config files are created that allow you to modify certain aspects of the mod. These files can be found at:

  • Windows: %LOCALAPPDATA%\ModTheSpire\sayTheSpire\
  • Linux: ~/.config/ModTheSpire/sayTheSpire/
  • Mac: ~/Library/Preferences/ModTheSpire/sayTheSpire/

The settings.ini file allows you to change various settings related to the mod. The input.json stores keyboard mappings. It is not recommended to manually modify input.json unless you are familiar with json.


This is a list of all of the available options in settings.ini. To change one of these, change the value to the right of the =. For example you could disable reading block text by changing block_text = true to block_text = false.

Certain config options require an array, a list of values. An array always starts with [ and ends with ]. These values must be enclosed in quotes if they are strings of text. For example to exclude cards and relics, you would use exclude_read_typenames = ["card", "relic"]


Advanced settings related to the internals of the mod.

SettingAccepted ValuesDefault ValueDescription
use_updated_card_descriptiontrue, falsefalsewhether or not to use a different internal property to get card descriptions. This should be enabled if you are trying to use mods that do not have properly rendered card descriptions. This may break depending on your current game language so use this with caution.
prefered_speech_handler_order[ array of speech handler names ][]Your prefered order of speech handlers. For more information, see the next section on speech handlers.
speech_handler_force_system_speechtrue, falsefalseWhether or not system speech (for example SAPI) is used (if your speech handler supports it.)

Speech Handler Priority

The mod has a number of speech handlers stored internally. Each speech handler allows output via a specific library or process and the best one for your system is loaded by default (for example Tolk for Windows). There is a default order for them. when the mod is first loaded, handlers are checked in order. If one meets the criteria to be used (for example correct operating system) it is set as the active speech handler and all text output from the mod will be output via that handler.

If you would prefer a different order (such as forcing clipboard output for example), you can reorder the list via the advanced.prefered_speech_handler_order setting. The speech handler names you add to the list will be moved to the beginning of the list in the order you specify. For a list of speech handlers, see the table below. The table below lists the handlers in their default order.

HandlerdescriptionCriteria to UseSupports System Speech
tolk_resourcesUses the Tolk (screen reader output) library for Windows and automatically extracts dlls needed at runtime. Dll files are removed when the game is closed.WindowsYes
tolkUses the Tolk (screen reader output) library for Windows. You will need to copy required screenreader dll files to the game directory to use this handler.WindowsYes
clipboardSends all text output to the clipboard. This is useful for translation or for some specific screen readers.AllNo


Settings related to combat messages.

SettingAccepted ValuesDefault ValueDescription
block_texttrue, falsetrueWhether or not to read when a creature gains block.
buff_debuff texttrue, falsetrueWhether or not to read when a creature gains a buff or debuff.
card_eventstrue, falsetrueWhether or not card events are read. These include cards being added to draw, discard, etc as well as cards being exhausted.
orb_eventstrue, falsetrueWhether or not orb events are read. This includes when orbs are channeled and evoked.


Settings related to virtual input.

SettingAccepted ValuesDefault ValueDescription
virtual_inputtrue or falsetrueWhether or not virtual input is enabled.


Settings related to map reading.

SettingAccepted ValuesDefault ValueDescription
read_reversed_pathstrue, falsetrueWhether or not to read the path in reverse when moving backward on the map, as if you were tracing it visually. Many people prefer to disable this to save time but it is enabled by default for clarity.


Contains settings related to the game's UI and how certain elements are read out.

SettingAccepted ValuesDefault ValueDescription
read_proceed_texttrue, falsetrueWhether or not to read the proceed text when the option is available (for example to skip a combat reward)
read_banner_texttrue, falsetrueWhether or not banner text is read. Banner text appears at the top of the screen and generally acts as a screen title.
read_positionstrue, falsetrueWhether or not to read the position of an element (for example 1 of 3 in a list)
read_typestrue, falsetrueWhether or not element types, such as button, are read for each UI element.
read_obtain_eventstrue, falsetrueWhether or not the mod notifies you when you obtain an object (such as a card, potion, relic, etc).
exclude_read_typenames[array of strings][] emptyAn array or list of types to not be read. For example if you do not want cards and relics to say card or relic after their name, you could set this to ["card", "relic"].


Settings related to how resources are loaded and unloaded. If you are experiencing a crash when closing the game, set both of these to false.

SettingAccepted ValuesDefault ValueDescription
unload_native_libstrue, falsetrueWhether or not to unload the screen reader libraries from memory when the game closes.
dispose_resource_filestrue, falsetrueWhether or not to delete the screen reader dll files in the slay the Spire root directory after the game closes and they are unloaded from memory. Do not enable this unless unload_native_libs is enabled or it won't work.