Butterfly Dota Replay parser
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.



butterfly is a Dota 2 replay parser focused on Source2, built by invokr. Consider it the spiritual successor of his Alice project.

Unfortunately the original author of this code has left forever, so noxville and spheenik have taken over this marvellous example of engineering.


Butterfly has Linux and macOS support (C++). Bindings exist for python and Javascript (using emscripten).

This should do the trick on debian-flavoured systems:

apt-get install build-essential cmake libprotobuf-dev libsnappy-dev protobuf-compiler
git submodule init
git submodule update
cd build
make -j6
make install

The CMake part for building javascript libaries looks like this:

cd build
rm -Rf *        # Make sure the build folder is empty / doesn't contain a previous CMake build
make -j6

This should generate butterflyjs0.js and butterflyjs1.js. Use the later for a stable JS api.


You can use the included Dockerfile to build a docker image of the project - and then just copy out the built binaries or use them in-place.


Apache 2