Skip to content
openmw-config
guide

Documentation

How openmw-config reads, changes and writes OpenMW's configuration chains, and its complete Rust and Lua API.

openmw-config turns OpenMW’s chain of openmw.cfg files into one configuration you can read, change and save, from Rust or from Luau running inside a Rust program. These pages explain how it behaves; the two references list every call.

Learn it#

  • Start here: add the crate, load the chain, add a plugin and save it. Five minutes.
  • Loading: the five ways to get a configuration, and which one your tool wants. Most bugs in OpenMW tools start by picking the wrong one.
  • Config chains: how config=, replace=, tokens and relative paths resolve, and how to see what was loaded.

Use it#

  • Editing: content files, data directories, archives, fallback settings, unknown keys, and which file each change belongs to.
  • Saving and exporting: writing the user’s config back, exporting a flattened copy, and why those are different things.
  • Paths and environment: where configs live on each platform, what each token means, and every environment variable the crate reads.
  • Embedding Luau: giving scripts in your Rust program the @dream/openmw-config module, as an l3i extension in your runtime plan.
  • Compatibility: what the version number promises, the supported Rust version, what is tested, and what the crate does not do yet.

Look it up#

  • Rust API: OpenMWConfiguration method by method, the setting types, the path functions and every ConfigError.
  • Lua API: the @dream/openmw-config module and the configuration object scripts receive.