This is the most popular library for parsing replay headers, units, and game events into Python objects.

If the automatic method fails, force the app to look for the game.


To parse data accurately, you often need the game assets (models, textures, ability IDs) which requires an installation of the game or the standalone API.

Example time-linked table: | time | player | minerals | supply_used | last_action | |------|--------|----------|-------------|--------------| | 60.0 | A | 250 | 22 | train_marine |

Example (Python + sc2reader):

import sc2reader
replay = sc2reader.load_file("sample.SC2Replay")
for event in replay.events:
    if event.name == 'UnitBornEvent':
        print(f"event.second:.1fs: event.unit.name built by event.control_player.name")

Sometimes, the "preparing game data" loop is not on your end. Since Blizzard shifted resources to other franchises, StarCraft 2's authentication gateways have become fragile.