/redota

Revisit past Dota 2 matches in the browser

Primary LanguageJavaScriptMIT LicenseMIT

ReDota

Node Version

Revisit past Dota 2 matches in the browser.

View live: https://timkurvers.github.io/redota

ReDota

Background

This is an experiment to revisit past Dota 2 matches in the browser, fully relying on parsing replays client-side without any server involvement.

ReDota can download these replay files from Valve through a replay proxy.

Contributions in form of issues, feedback or pull requests more than welcome!

Attribution

ReDota is a heavily derived project and stands on the shoulders of giants, notably parsers by Dotabuff and Skadistats.

Special thanks to community members from OpenDota and ModDota who assisted in deciphering replay specifics.

Legalese

  • Dota 2 is a registered trademark of Valve Corporation.
  • Image resources, lore and other references are property of Valve Corporation.
  • The Dota 2 map and minimap images come from multiple sources:
  • The redo-symbol in the ReDota logo and favicon originates from Font Awesome.
  • Lane creep and building icons come from The Noun Project, see this README file.

Setup & Development

ReDota is written in ES2020+, powered by MobX and React, styled with styled-components, modularized using ECMAScript modules and bundled with webpack.

  1. Clone the repository:

    git clone git://github.com/timkurvers/redota.git
  2. Download and install Node.js 14+ for your platform.

    Note: If you plan on using ReDota's parser programatically, please note that Node.js 17+ is currently not supported.

  3. Install dependencies:

    npm install
  4. Compile Valve's game message definitions to a format ReDota can work with:

    npm run build:protos

    Note: This step only needs to be done once, or when the definitions themselves change.

  5. Run the dev server on http://localhost:8080 which automatically monitors source files:

    npm run start:dev