libloadorder

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

16 stable releases

11.4.0 Jun 24, 2018
11.2.2 May 26, 2018
11.0.2 Mar 29, 2018
10.1.1 Feb 14, 2018
10.0.4 Nov 21, 2017

#4 in Games

Download history 36/week @ 2018-05-27 86/week @ 2018-06-03 12/week @ 2018-06-10 92/week @ 2018-06-17 36/week @ 2018-06-24 404/week @ 2018-07-01 3/week @ 2018-07-08 23/week @ 2018-07-15 52/week @ 2018-07-22 40/week @ 2018-07-29 85/week @ 2018-08-05 39/week @ 2018-08-12 7/week @ 2018-08-19

155 downloads per month
Used in 1 crate

GPL-3.0 license

206KB
4.5K SLoC

Libloadorder

AppVeyor Build Status Travis Build Status Coverage Status dependency 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
  • TES IV: Oblivion
  • TES V: Skyrim
  • TES V: Skyrim Special Edition
  • Fallout 3
  • Fallout: New Vegas
  • Fallout 4
  • Fallout 4 VR

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 --all --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, create a directory at ffi/build, then from that directory run:

cmake ..
cmake --build .
ctest

Dependencies

~6.5MB
~105K SLoC