s2protocol-rs
rust-parser
s2protocol-rs | rust-parser | |
---|---|---|
4 | 2 | |
101 | 1 | |
- | - | |
8.3 | 10.0 | |
about 1 month ago | about 1 year ago | |
Rust | Rust | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
s2protocol-rs
- New version of s2protocol-rs SC2Replay parsing crate
-
Show HN: Rust nom parsing Starcraft2 Replays into Arrow for Polars data analysis
I mean for example https://github.com/sebosp/s2protocol-rs/blob/755098fb86ab6b1... I hacked my way around the json protocol specification, an enum has n types, using log I can find the number of bits I need to read to uniquely identify each variant, that kind of serialization I wonder the name of.
-
Swarmy: A Starcraft 2 Replay interactive visualizer in Bevy Engine - Early PoC
I'm in the process of releasing the crates for nom-mpq and s2protocol, probably will do so in the coming days.
rust-parser
-
Show HN: Rust nom parsing Starcraft2 Replays into Arrow for Polars data analysis
This is insanely cool! Very impressed you managed to implement a full parser in Rust.
I implemented a basic one in Rust a while back: https://github.com/ZephyrBlu/rust-parser
And a full one in Python with a few bells and whistles ages ago: https://github.com/ZephyrBlu/zephyrus-sc2-parser
Don't maintain either of them though :(, and the Rust one is super rough.
SC2 is a very interesting area for data analysis, but at the same time I found it very challenging. There is so much nuance and inconsistency across games it can be really hard to do accurately do things like categorize builds or measure build timings.
The area I ended up focusing on was builds, and I feel like I did some interesting stuff there: https://sc2.gg/reports/top-openings-2022/.
I found personal statistics less interesting than aggregate statistics. Even pro games are very volatile, ladder games even more so. Extremely hard to get reliable signal out of them if you're trying to track things across games. Even simple things like Collection Rate are poor indicators without significant categorization work (Matchup, build, opponent build, etc).
- I redesigned and open-sourced my SC2 search engine! Now featuring interactive filtering, fuzzy matching and search categories
What are some alternatives?
Tims-PackageServer - Lightweight Package Server for WoltLab Community Framework
zephyrus-sc2-parser - A parser for .SC2Replay files
s2prot - Decoder/parser of Blizzard's StarCraft II replay file format (*.SC2Replay)
mpq - Decoder/parser of Blizzard's MPQ archive file format
pdx-tools - View maps, graphs, and tables of your save and compete in a casual, evergreen leaderboard of EU4 achievement speed runs. Upload and share your save with the world.
parse-rosetta-rs - Comparing parser APIs
search