A tool that fixes corrupted image metadata in a resource pack, where the images have been corrupted to be protected.
Find a file
2024-12-16 00:45:48 +00:00
src properly update everything for 0.4.2: proper lib 2024-12-15 17:29:52 +00:00
.gitignore gitignore2 2024-12-16 00:39:10 +00:00
build_x64.sh gitignore2 2024-12-16 00:39:10 +00:00
Cargo.lock properly update everything for 0.4.2: proper lib 2024-12-15 17:29:52 +00:00
Cargo.toml properly update everything for 0.4.2: proper lib 2024-12-15 17:29:52 +00:00
inventory.png first version by zatzou 2024-12-03 20:47:10 +00:00
LICENSE Add LICENSE and README 2024-12-03 23:29:59 +00:00
log.txt shits fucked 2024-12-04 00:26:25 +00:00
readme.md better readme 2024-12-16 00:45:48 +00:00

rpfixer (formerly respack-decrypter)

This tool allows you to fix corrupted images' metadata in a resource pack, where the images have been corrupted to be protected.

This tool will not overcome any protection to the zip archive itself. See a program such as MCRPX for that.

Usage

CLI

Premade package (easiest)

  • Go to the releases tab
  • Download for your system and unzip it
  • (Step for linux users only) run chmod +x on the executable
  • Open a command prompt (windows) and run rpfixer.exe
  • Open a terminal / terminal emulator (linux) and run rpfixer.exe

Cargo

  • Download the Rust-Lang for your system (WARNING: THIS IS LIKE 10GIGABYTES ON WINDOWS)
  • run cargo install rpfixer
  • Then run the rpfixer command

Manual clone

  • You really should not do this
  • download the Rust-Lang for your system (WARNING: THIS IS LIKE 10GIGABYTES ON WINDOWS)
  • download this repository
  • run cargo build --release in the directory
  • check ./target/release
  • run
    • rpfixer if you are on linux/mac (RUN chmod +x rpfixer ON IT FIRST)
    • rpfixer if you are on windows

Syntax for CLI

Check --help for syntax.

Example syntax: rpfixer --path ./filepath/

Function library

  • The library has one function: rpfixer::fix. Use a Vec<u8> in it.

Example code

use std::fs;
fn main() {
    let frfr: Vec<u8> = fs::read("filepath.png").expect("wtf the path doesnt exist");
    let mut fr: Vec<u8> = rpfixer::fix(frfr);
    fs::write("filepath.png", fr).expect("file could not write btw");
}

License

It's all MIT, except the example corrupted inventory.png and inventory-fix.png which is courtesy of Wynncraft.

Zeer you better not come after me for this one, you guys still haven't answered my gdpr req yet