26 个版本

0.4.2 2024 年 1 月 29 日
0.4.1 2023 年 6 月 29 日
0.4.0 2023 年 5 月 8 日
0.3.0-beta.32023 年 5 月 8 日
0.1.0 2022 年 12 月 2 日

#954 in 解析器实现

40 每月下载量
用于 wotbreplay-inspector

MIT 许可证

6.5MB
612

包含 (Zip 文件, 1.5MB) 20230503_0027__helaas_pindakaas.wotbreplay,(Zip 文件, 1MB) 20221203_victory_points.wotbreplay,(Zip 文件, 1.5MB) 20230429_1682194799_malinovka.wotbreplay,(Zip 文件, 715KB) 20221203_player_results.wotbreplay,(Zip 文件, 1MB) 20230429_0126__helaas_pindakaas.wotbreplay,(Zip 文件, 1MB) 20230512_2150__helaas_pindakaas_R159_SU_130PM_15146680594634860.wotbreplay 和更多

wotbreplay-parser

Rust 中的《坦克世界闪电战》回放解析器。

Crates.io Last commit GitHub Workflow Status License: MIT docs.rs

快速入门

use std::fs::File;

use anyhow::Result;
use wotbreplay_parser::models::battle_results::TeamNumber;
use wotbreplay_parser::replay::Replay;

fn main() -> Result<()> {
    let battle_results = Replay::open(File::open("replays/20221203_player_results.wotbreplay")?)?.read_battle_results()?;

    assert_eq!(battle_results.timestamp_secs, 1670083956);
    assert_eq!(battle_results.players.len(), 14);

    assert_eq!(battle_results.players[0].account_id, 595693744);
    assert_eq!(battle_results.players[0].info.nickname, "yuranhik_hustriy26");
    assert_eq!(battle_results.players[0].info.team(), TeamNumber::One);
    assert_eq!(battle_results.players[0].info.platoon_id, Some(545104609));

    assert_eq!(battle_results.players[1].info.nickname, "SNAK_THE_RIPPER");
    assert_eq!(battle_results.players[1].info.team(), TeamNumber::Two);
    assert_eq!(battle_results.players[1].info.platoon_id, Some(273692628));

    Ok(())
}

依赖项

~4.5MB
~86K SLoC