Skip to content

A Rust library for modding Nintendo Switch games using Skyline

Notifications You must be signed in to change notification settings

ultimate-research/skyline-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

skyline-rs

A Rust library for working with Skyline to allow you to write game code modification for Nintendo Switch games using Rust.

For no_std use, disable the std feature (enabled by default).

Suggested for use with cargo-skyline.

Example:

extern "C" fn test() -> u32 {
    2
}

#[skyline::hook(replace = test)]
fn test_replacement() -> u32 {

    let original_test = original!();

    let val = original_test();

    println!("[override] original value: {}", val); // 2

    val + 1
}

#[skyline::main(name = "skyline_rs_template")]
pub fn main() {
    println!("Hello from Skyline Rust Plugin!");

    skyline::install_hook!(test_replacement);

    let x = test();

    println!("[main] test returned: {}", x); // 3
}