A high-performance Java parser for Dota 2, CSGO, CS2, and Deadlock replay files.
Clarity is a Java-based parser for replay files from games like Dota 2, CSGO, CS2, and Deadlock. It extracts structured data such as combat logs, entities, modifiers, and game events, enabling detailed match analysis and statistics generation. The project is designed for high performance, described as 'comically fast' in processing replay data.
Developers and data analysts working on esports applications, match analysis tools, or game statistics platforms who need programmatic access to replay data.
Clarity offers a specialized, open-source solution with exceptional parsing speed and comprehensive data extraction, supporting multiple games and providing both processed and raw protobuf data for flexibility.
Comically fast Dota 2, CSGO, CS2 and Deadlock replay parser written in Java.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
The project prioritizes performance with 'comically fast' parsing speeds, ensuring efficient processing of complex replay structures as stated in its philosophy.
Extracts comprehensive data including combat logs, entities, modifiers, voice commentary, and game events, covering multiple aspects listed in the README's feature set.
Supports replay files from Dota 2, CSGO, CS2, and Deadlock, making it a versatile tool for cross-game esports analysis and statistics generation.
Provides unprocessed protobuf message objects, allowing developers to implement custom processing logic beyond the standard extracted data, as highlighted in the features.
Implemented solely in Java and requires Java 17 or above, limiting its use in projects based on other programming languages without additional bridging efforts.
Example code is separated into another repository (clarity-examples), which can complicate initial setup and increase the learning curve for new users, as noted in the README.
Replay file formats may change with game patches, and the parser might not immediately support new versions, requiring updates from maintainers and potentially causing compatibility issues.