#elder-scrolls #order #fallout #cross-platform #active #skyrim #morrowind #oblivion #open-mw

libloadorder

A cross-platform library for manipulating the load order and active status of plugins for the Elder Scrolls and Fallout games

25 stable releases

18.8.2 May 4, 2026
18.6.0 Mar 26, 2026
18.5.1 Sep 29, 2025
18.4.0 May 1, 2025
10.0.4 Nov 21, 2017

#5 in Games

Download history 225/week @ 2026-01-24 261/week @ 2026-01-31 190/week @ 2026-02-07 246/week @ 2026-02-14 253/week @ 2026-02-21 241/week @ 2026-02-28 435/week @ 2026-03-07 318/week @ 2026-03-14 214/week @ 2026-03-21 415/week @ 2026-03-28 576/week @ 2026-04-04 1083/week @ 2026-04-11 892/week @ 2026-04-18 629/week @ 2026-04-25 474/week @ 2026-05-02 410/week @ 2026-05-09

2,563 downloads per month
Used in libloot

GPL-3.0 license

545KB
12K SLoC

Libloadorder

CI Coverage Status docs

Libloadorder is a cross-platform library for manipulating the load order and active status of plugins for the following games:

  • TES III: Morrowind
  • OpenMW
  • TES IV: Oblivion
  • TES IV: Oblivion Remastered
  • TES V: Skyrim
  • TES V: Skyrim Special Edition
  • TES V: Skyrim VR
  • Fallout 3
  • Fallout: New Vegas
  • Fallout 4
  • Fallout 4 VR
  • Starfield

This repository hosts two Rust crates: libloadorder is the Rust library, and libloadorder-ffi is the C FFI that wraps it. The doc directory also hosts an mdbook that provides a general introduction to load orders.

To build libloadorder and its C FFI and generate C/C++ headers for it, install Rust and run cargo build --release --workspace --all-features.

Tests

The tests require testing-plugins, put them in testing-plugins in the repo root.

Run cargo test and cargo bench to run the Rust tests and benchmarks respectively.

To run the FFI tests, make sure you have CMake and C and C++ toolchains installed (e.g. MSVC on Windows, GCC on Linux), then run:

mkdir ffi/build
cmake -B ffi/build ffi
cmake --build ffi/build
ctest --test-dir ffi/build --output-on-failure

Minimum supported Rust version

The minimum supported Rust version is 1.82. This may change at any time, but there is a CI job to check that it does not change unexpectedly.

Dependencies

~8–11MB
~272K SLoC