Expand description
Parse Squad UE5 replay data into typed bundles.
squadreplay is a library-first parser for
Squad UE5 .replay files. It extracts teams,
squads, players, kills, vehicle tracks, deployments, and more into a
single Bundle struct that can be serialized to JSON (.sqrj.json) or
binary MessagePack (.sqrb) for downstream tooling.
§Quick start
use squadreplay::{parse_file, ParseOptions};
let bundle = parse_file("match.replay", &ParseOptions::default())?;
println!("map: {:?}", bundle.replay.map_name);
println!("players: {}", bundle.players.len());
println!("kills: {}", bundle.events.kills.len());§Serialization round-trip
use squadreplay::{parse_file, sqrb, sqrj, ParseOptions};
let bundle = parse_file("match.replay", &ParseOptions::default())?;
// Write to both formats
sqrj::write(&bundle, "match.sqrj.json")?;
sqrb::write(&bundle, "match.sqrb")?;
// Read back
let from_json = sqrj::read("match.sqrj.json")?;
let from_bin = sqrb::read("match.sqrb")?;§Feature flags
| Feature | Default | Description |
|---|---|---|
cli | yes | Builds the squadreplay binary (pulls in clap) |
Library-only consumers should disable default features:
[dependencies]
squadreplay = { version = "0.1.0-alpha.1", default-features = false }Re-exports§
pub use bundle::Bundle;pub use bundle::GameStateInfo;pub use bundle::ParseOptions;
Modules§
- bundle
- Data model for parsed Squad replay bundles.
- compat
- Compatibility layer producing the legacy JSON format used by older Squad replay tools.
- sqrb
- Read and write
.sqrb(binary MessagePack) bundles. - sqrj
- Read and write
.sqrj.json(human-readable JSON) bundles.
Enums§
- Error
- Errors that can occur during replay parsing and bundle I/O.
Functions§
- parse_
bytes - Parse replay bytes that are already loaded in memory.
- parse_
file - Parse a replay file from disk.
- read_
bundle - Read a serialized bundle from disk.
Type Aliases§
- Result
- Convenience alias for
std::result::Result<T, Error>.