feat: skip version

Allows to skip the game buiold number version check.
Related to .
This commit is contained in:
Janek 2024-04-03 20:02:36 +02:00
parent 212c88efaa
commit 900e5d2acc
4 changed files with 11 additions and 5 deletions

@ -28,6 +28,10 @@ pub struct Cli {
/// Verbosity level for logging to the console
#[arg(value_enum, long, short, ignore_case = true, default_value_t = Loglevel::Warn)]
pub loglevel: Loglevel,
/// Skip the dwBuildNumber check, allows for running with *possibly* outdated offsets.
#[arg(long)]
pub skip_version: bool,
}
fn version() -> String {

@ -31,7 +31,7 @@ impl DmaCtx {
Ok(())
}
pub fn setup(connector: Connector, pcileech_device: String) -> anyhow::Result<DmaCtx> {
pub fn setup(connector: Connector, pcileech_device: String, skip_version: bool) -> anyhow::Result<DmaCtx> {
let inventory = Inventory::scan();
let os = {
@ -66,7 +66,9 @@ impl DmaCtx {
engine_module,
};
ctx.check_version()?;
if !skip_version {
ctx.check_version()?;
}
Ok(ctx)
}

@ -12,8 +12,8 @@ mod cs2dumper;
pub use context::Connector;
pub async fn run(radar_data: ArcRwlockRadarData, connector: Connector, pcileech_device: String) -> anyhow::Result<()> {
let mut ctx = DmaCtx::setup(connector, pcileech_device)?;
pub async fn run(radar_data: ArcRwlockRadarData, connector: Connector, pcileech_device: String, skip_version: bool) -> anyhow::Result<()> {
let mut ctx = DmaCtx::setup(connector, pcileech_device, skip_version)?;
let mut data = CsData::default();
// For read timing

@ -30,7 +30,7 @@ async fn main() -> anyhow::Result<()> {
let radar_clone = radar_data.clone();
let dma_handle = tokio::spawn(async move {
if let Err(err) = dma::run(radar_clone, cli.connector, cli.pcileech_device).await {
if let Err(err) = dma::run(radar_clone, cli.connector, cli.pcileech_device, cli.skip_version).await {
log::error!("Error in dma thread: [{}]", err.to_string());
} else {
println!("CS2 Process exited, exiting program...")