StarCraft

zephyrus-sc2-parser: The replay parser I use for my analyses (It’s super easy to get started with!)

Content of the article: "zephyrus-sc2-parser: The replay parser I use for my analyses (It’s super easy to get started with!)"

The code (There is some basic documentation as well): https://github.com/ZephyrBlu/zephyrus-sc2-parser


I figured I'd make this post because I just merged a big update, and feel quite happy with the state of the parser right now. It feels pretty powerful and seems easy to use (Even for a novice coder!), as well as being stable with minimal bugs.

The parser has most of the information you could want from a replay (Positional data is the one thing that sticks out to me), and it's very easy to access it.

I'm also actively developing it, so if there's something data missing that you think would be cool/helpful then just ask :).


zephyrus-sc2-parser vs sc2reader

I bring up sc2reader since I believe it is the most widely used parser, and is also written in Python. Here are a few high level points comparing both libraries:

  • Sc2reader seems to parse more information than me overall, though I'm unsure how much of that information is useful for analysis

  • Sc2reader supports team games and co-op, whereas I do not so this is a bit of a deal breaker

  • I believe sc2reader can require config to parse certain data. The only 'config' my library has is a few key word args

  • I am actively developing the library and am pretty responsive to PRs/messages/whatever. I don't know what state sc2reader is in

Read more:  Weekly amateur tournament round-up for week 47

Overall I believe my library is easier to use, has a simpler implementation and is structured more intuitively.

I'm also actively improving the library and adding more and more high-level data (Like player selections).

The main downsides are that my library is opinionated and does not support team games and co-op. It also doesn't have unit tests at the moment, if that's a big deal to you.


Getting Started

Here's a really simple script you can use to get started: https://gist.github.com/ZephyrBlu/f24ea40eb38127640194691959f957f6

It should be fine up to a few hundred replays. After that, it will take a while to process the replays synchronously.

If you want to parse more replays, you can use this script: https://gist.github.com/ZephyrBlu/058b776b4fad94f8147e6c0322ae418b

It uses sc2_tournament_analysis, which is a small tool I wrote. All it really does in this script is the same recursive iteration that the first script does, but collects the file paths instead of synchronously parsing the replays. You could easily replace it with a few lines of your own code if you wanted.


If you have any feedback, criticism or ideas I'm always open to hearing them, especially since I'm actively developing the parser :).

Source: reddit.com

Similar Guides

Read more:  DH Masters - Winter - The Qualifiers are underway! Don't forget to sign up for your Regional competition in the 3rd online season of this first year of ESL Pro Tour


Top 7 NEW Games of January 2021

New year - new month - new games. Take a look at the first 2021 games you’ll be playing on PC, PS5, PS4, Xbox Series X, Xbox One, Switch, and more.





More about StarCraft

Post: "zephyrus-sc2-parser: The replay parser I use for my analyses (It’s super easy to get started with!)" specifically for the game StarCraft. Other useful information about this game:



Top 10 Best Video Games of 2020 (So Far)

In times of uncertainty, video games allow us to escape from the stress of the real world. For this list, we’ll be looking at some of the best games released in the first half of 2020.


You Might Also Like

Leave a Reply

Your email address will not be published. Required fields are marked *