q3tool 0.3.0

A Rust library for interacting with ioq3 (Quake 3) based game servers.
Documentation

Q3Tool

A Rust library for interacting with ioq3 (Quake 3) based game servers.

Rust GitHub issues MIT license

Getting Started

Quick Example

use q3tool::Q3Tool;

fn main() {
    let q = Q3Tool::new("someserverhost:27960");
    let server_info = q.get_status().unwrap();
    
    // Print all public server c_vars
    for (k, v) in server_info.vars() {
        println!("{}: {}", k, v);
    }

    // Print a single server c_var
    println!("Hostname: {}", server_info.vars().get("sv_hostname").unwrap());

    // Print all players
    for player in server_info.players() {
        println!("Name: {}, Score: {}, Ping: {}", player.name(), player.score(), player.ping());
    }
}

Current Status

Q3Tool is still in development.

There shouldn't be any breaking changes in the public facing API at this point.

Running the tests

cargo test

License

This project is licensed under the MIT License