Still work in progress!
An example for launching a minecraft 1.12.2 client in your home directory:
fn main() { use std::env; use rmcll::launcher; use rmcll::yggdrasil::{self, Authenticator}; // prepare for starting minecraft client process let game_dir = env::home_dir().unwrap().join(".minecraft/"); let game_auth_info = yggdrasil::offline("zzzz").auth().unwrap(); let launcher = launcher::create(game_dir, game_auth_info); let args = launcher.to_arguments("1.12.2").unwrap(); // start the 1.12.2 client now println!("\nStarting minecraft with: {} {:?}", args.program(), args.args()); let minecraft_process = args.start().unwrap(); let output = minecraft_process.wait_with_output().unwrap(); let exit_code = output.status.code().unwrap(); println!("\nMinecraft client finished with exit code {}", exit_code); }
License: Apache 2.0