Converting between versions

How Settings Saver keeps one copy of your settings that works on every Minecraft version from 1.7.10 to 26.3, and which settings change along the way.

Last updated

On this page

Minecraft has changed the format of options.txt many times: options were renamed, value ranges changed and keybinds moved from numeric codes to names. Settings Saver keeps one copy of your settings and converts it to and from each version's exact format, so settings saved in 26.3 load in 1.7.10 and the other way round.

One stored format#

The store holds each profile's settings in the newest format Settings Saver knows (26.3), plus the options that only older versions have, such as heldItemTooltips, so those can be restored there.

Every Minecraft version, snapshots included, is placed by its data version, the number Minecraft uses to order its own formats. A file that names its own version (1.10 and newer) is converted from that version, even when it was copied in from another instance. Versions newer than the Settings Saver build get the newest format it knows, and the game upgrades it itself.

What changes between versions#

Version Change Going back to older versions
1.8 clouds became renderClouds, showCape became modelPart_cape renamed back
1.8.1 renderClouds gained fast fast becomes true
1.11 language codes became lower case (en_US to en_us) region upper case again
1.13 keybinds changed from LWJGL key codes to key names (key.keyboard.w) converted back to codes; keys with no old code fall back to the game's default
1.14 textBackgroundOpacity added, derived from chatOpacity dropped
1.16 fancyGraphics became graphicsMode any mode other than Fast becomes Fancy
1.16 the swap-hands keybind was renamed renamed back
1.19 renderClouds, mainHand and soundDevice became quoted text quotes removed (1.18 can't read them)
1.19.3 smooth lighting (ao) became on/off on becomes Maximum, off becomes Off
1.21 menu background blur went from 0.0–1.0 to 0–10 divided by 10
1.21.11 graphicsMode split into a graphics preset and separate options (cutout leaves, weather radius, vignette, improved transparency) Fast, Fancy or Fabulous, chosen from the separate options
1.21.11 showNowPlayingToast became musicToast never becomes off, anything else on

Settings with the same meaning in every version, such as FOV, mouse sensitivity, brightness, render distance, GUI scale, max framerate, particles, volumes and on/off options, are copied unchanged.

Options a version doesn't have#

Settings Saver knows which options each release from 1.7.10 to 26.3 has. When it writes for a version, options that version doesn't have are left out of the file but stay in the profile, so going back to a newer version restores them.

Keybinds (key_…), volume sliders (soundCategory_…), skin parts (modelPart_…) and options that Settings Saver doesn't know, such as those added by mods, are always passed through. That includes keybinds of other mods, which live in options.txt too. Minecraft ignores options it doesn't know.

Values a version can only approximate#

Some settings can't be expressed in older versions: 1.12.2 has no Fabulous graphics. When an older version writes its closest match (Fancy), Settings Saver doesn't treat that as a change, so the profile keeps Fabulous. Only a value you actually change in that version is saved over it.

Numbers are compared loosely: older versions save 0.6056338 where newer ones save 0.6056338028169014, and differences smaller than one millionth don't count as changes.

Forge and NeoForge key modifiers#

Forge and NeoForge let keybinds require a modifier key, saved as key_key.attack:key.mouse.left:CONTROL. The profile keeps the modifier. When writing for Fabric, Quilt or Forge before 1.10, which don't have modifiers, the keybind is written without it.

Which files are converted#

Settings Saver 0.x syncs Minecraft's own options.txt. Other files, such as OptiFine's optionsof.txt, other mods' config files and the server list (servers.dat), are not synced.