Gem
Python Dota 2 Replay Parser
gem reads Source 2 .dem replay files and turns them into structured match data. Start with Quickstart, then use Troubleshooting and Bits & Bytes Primer if you are new to replay internals.
What You Can Do Today
- Parse Source 2
.demreplays into typed match objects withgem.parse(...). - Export replay data as pandas DataFrames (
gem.parse_to_dataframe(...)), JSON, or Parquet. - Access built-in extraction outputs: players, objectives, wards, courier, draft, and teamfights.
- Explore experimental interpretation layers such as Farming Patterns, with formulas, thresholds, drivers, and known limits documented explicitly.
- Track the latest parser, validation, and report fixes in Changelog.
- Navigate docs by depth: Quickstart, Troubleshooting, Bits & Bytes Primer, deep-dive guides, experimental features, and API reference.