A Rust library designed to work with the classic game Warhammer: Dark Omen. It provides developers with tools to read, manipulate, and write game data, enabling the creation of mods, custom levels, and analysis tools.
The following table shows the game file support in this library:
Kind | File extension(s) | Read | Write | Known issues? |
---|---|---|---|---|
3D models | .M3D, .M3X | ✅ | ✅ | |
Army and save games | .ARM, .AUD, .ARE, .xxx | ✅ | ✅ | |
Battle tabletops | .BTB | ✅ | ❌ | |
CTL | .CTL | ❌ | ❌ | |
Cursors | .ANI | ❌ | ❌ | |
Fonts | .FNT | ❌ | ❌ | |
Game flows | .DOT | ❌ | ❌ | |
Lights | .LIT | ✅ | ✅ | |
Movies | .TGQ | ❌ | ❌ | |
Particle effects | .PLB, .H | ❌ | ❌ | |
Portrait scripts | .KEY, .SEQ | ❌ | ❌ | |
Projects | .PRJ | ✅ | ✅ | |
Shadows | .SHD | ✅ | ✅ | |
Sound effects | .H | ✅ | ❌ | |
Sound mono audio | .MAD | ✅ | ✅ | |
Sound scripts | .FSM | ✅ | ✅ | |
Sound stereo audio | .SAD | ✅ | ✅ | |
Sprite sheets | .SPR | ✅ | ❌ |
- Install the Rust toolchain, which also installs
cargo
, by following the Install Rust guide - Run
cargo add darkomen
darkomen
supports Bevy Reflection
through the bevy_reflect
feature. To enable it, add the following line to
your Cargo.toml
:
darkomen = { version = "0.3.6", features = ["bevy_reflect"] }
Note
This library does not ship with any game assets. You must have a copy of the game to get the most from this library.
Note
This library is not developed by or endorsed by Games Workshop or Electronic Arts.
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.