API Reference
Auto-generated from source docstrings. All public classes and functions follow Google-style docstrings.
Removed compatibility modules
Root-level compatibility modules from earlier releases, such as gem.reader, gem.models, gem.map_context, and gem.replay_fetch, have been removed. Use the canonical grouped modules documented below.
Core parsing modules
| Module | Contents |
|---|---|
| BitReader | Low-level bit/byte/varint reader |
| DemoStream | Outer message stream iterator |
| Send Tables | Serializer tree — parse_send_tables, Serializer, Field |
| Field Decoders | Type → decoder dispatch, QuantizedFloatDecoder |
| Field Paths | Huffman field path decoder, FieldPath |
| String Tables | Table creation, updates, key-history decoder |
| Entities | Entity lifecycle, EntityOp, typed field accessors |
| Game Events | Game event schema registration and typed dispatch |
| Combat Log | Combat log entry decoding and dispatch |
| ReplayParser | Top-level parse driver — wires all subsystems |
Output and extraction
| Module | Contents |
|---|---|
| Public API | parse(), find_player(), JSON, DataFrame, and Parquet helpers |
| Models | ParsedMatch, ParsedPlayer, output dataclasses |
| Catalog | Grouped hero, item, ability, league, XP, and map-data lookups |
| Constants | Compatibility facade for hero_display(), item_display(), name lookups |
| Analysis Helpers | Spatial, combat, vision, map-context, and Roshan conversion helpers |
| Reports | Self-contained HTML report generation from ParsedMatch |
| Results Assembly | Assembles extractor output into ParsedMatch |
| Combat Aggregator | Per-player combat stat aggregation |
| DataFrames | parse_to_dataframe(), to_parquet(), to_json(), to_dict() — export to pandas, Parquet, or JSON |
| Batch | parse_many(), parse_many_to_dataframe(), parse_many_to_parquet() — parallel multi-replay processing |
Extractors
| Module | Contents |
|---|---|
| Overview | How extractors attach to the parser |
| Players | Hero/player snapshots, time series, runes |
| Objectives | Towers, barracks, Roshan |
| Wards | Ward placements with coordinates |
| Courier | Courier state per tick |
| Draft | Pick and ban events |
| Lane | Lane role from the 10-minute position heatmap |
| Teamfights | Teamfight window detection |
Reference data
| Page | Contents |
|---|---|
| Reference Values (Enums) | Team, game-mode, lobby-type, and other integer-code tables |