1 unstable release

0.2.0 Feb 3, 2024

#1470 in Game dev

27 downloads per month
Used in 3 crates

MIT/Apache

52KB
1K SLoC

Orthrus

Orthrus is a work-in-progress modding toolkit that aims to support a wide array of game file formats, to allow for blazing fast interoperability across systems and game engines. It supports no_std for embedded platforms, and tries to keep dependencies to a minimum.

For more about the structure of the Orthrus project, see the Architecture page.

Current Formats

ncompress - Nintendo Compression Formats

  • Yay0 - used for early first-party engines on N64/GameCube
  • Yaz0 - used across various first-party engines on N64, GameCube, Wii, Wii U and Switch

panda3d - Panda3D Rendering/Game Engine

  • Multifile - archive format that supports running as a full application

Future Plans (Wishlist)

Panda3D BAM, LZ77/Okumura compression, ASH0/ASR0 compression, BFSTM/BWAV, GUI/Rendering

License

Licensed under either of

at your option.

Contribution

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.


lib.rs:

This crate is used as a utilities library for common functionality across Orthrus modules.

By default, this crate only enables modules which do not have any crate dependencies (aside from snafu, which is required for errors).

Dependencies

~0.4–1.2MB
~27K SLoC