rpgmad-lib

Crates.iorpgmad-lib
lib.rsrpgmad-lib
version3.0.0
created_at2024-11-30 13:17:41.783287+00
updated_at2025-07-19 19:15:06.509294+00
descriptionLibrary for decrypting RPG Maker `rgss` archives.
homepage
repositoryhttps://github.com/savannstm/rpgm-archive-decrypter-lib
max_upload_size
id1466603
size24,134
savannstm (savannstm)

documentation

https://docs.rs/rpgmad-lib

README

rpgm-archive-decrypter-lib

Library for decrypting RPG Maker rgss archives.

Used in rpgm-archive-decrypter.

Example

use rpgmad_lib::{Decrypter, decrypt_archive};
use std::path::PathBuf;

let archive_content: Vec<u8> = std::fs::read("C:/Game/Game.rgss3a").unwrap();

// Using Decrypter struct
let mut decrypter = Decrypter::new();
let decrypted_files = decrypter.decrypt(&archive_content).unwrap();

// Using function
let decrypted_files = decrypt_archive(&archive_content).unwrap();

for file in decrypted_files {
    let path = String::from_utf8_lossy(&file.path);
    let output_path = PathBuf::from("C:/Game").join(path.as_ref());

    if let Some(parent) = output_path.parent() {
        std::fs::create_dir_all(parent).unwrap();
    }

    std::fs::write(output_path, file.content).unwrap();
}

License

Project is licensed under WTFPL.

Commit count: 6

cargo fmt