An immutable, high-level API for the Oldschool RuneScape cache file system.
Add this to your Cargo.toml
file:
toml
[dependencies]
osrs-cache = "0.1.0"
```rust use osrscache::Cache;
fn main() -> osrscache::Result<()> { let cache = Cache::new("./data/osrs_cache")?;
let index_id = 2; // Config index.
let archive_id = 10; // Archive containing item definitions.
let buffer: Vec<u8> = cache.read(index_id, archive_id)?;
Ok(())
} ```
If you have suggestions for features, or want to add for example a new loader for the cache, feel free to make a pull request. For bigger features it is advised to open an issue in order to discuss it beforehand.
Examples can be found in the examples directory which include the osrs update protocol.
The following sources aided with the development of this crate:\
OpenRS\
RuneLite\
OSRS Cache Parsing Blog\
RSMod\
Librsfs\
OSRSBox\
Jagex-Store-5
osrs-cache
is distributed under the terms of the MIT license.
See LICENSE for details.