Use: cmake .. -DBUILD_PYTHON=OFF if you don't want python bindings, or don't have boost.python
You can try out tests/read_mpq, it'll display infos about the replay (players, map, races, colors, chat messages...).
---
For now, it is able to parse anything that is known in the replay.info file. You can also retrieve chat messages from replay.message.events, but it'll fail if a player used the blink map function (it'll work soon). As for the other files (game events & so on...) I plan to support them soon, they are reversed but not implemented ATM. Btw they arent really useful.
I've found that the parser is able to handle some replays that nibbits' one can't.
I'm interested if you can try it out against all possible replays and report any replay that's not parsed correctly.
If you have any requests, it's also welcome. Right now I'm trying to figure out how to get the winner(s) of the game.
---
@Layne: I did not understood quite well your questions. MPQ files aren't just lzma encoded files. They are encoded in sectors with possibly different algorithm (even if lzma seems to be the only one used in SC2).
I suggest you to get an MPQ library that will handle this part for you (such as libmpq or stormlib). Reversing the replay format is hard enough not to have to decode MPQ manually ;)
Hey,
The project itself is hosted on my RedMine, available at:
http://projects.coderbasement.com/projects/show/sc2replay
And the public SVN is accessible at :
http://svn2.assembla.com/svn/sc2replay
You will need:
* CMake >= 2.6
* libmpq
* boost header
* boost.python (if you want to build the python bindings)
Instructions:
svn co http://svn2.assembla.com/svn/sc2replay
mkdir sc2replay/trunk/build
cd sc2replay/trunk/build
cmake ..
make
Use:
cmake .. -DBUILD_PYTHON=OFF
if you don't want python bindings, or don't have boost.python
You can try out tests/read_mpq, it'll display infos about the replay (players, map, races, colors, chat messages...).
---
For now, it is able to parse anything that is known in the replay.info file.
You can also retrieve chat messages from replay.message.events, but it'll fail if a player used the blink map function (it'll work soon).
As for the other files (game events & so on...) I plan to support them soon, they are reversed but not implemented ATM. Btw they arent really useful.
I've found that the parser is able to handle some replays that nibbits' one can't.
I'm interested if you can try it out against all possible replays and report any replay that's not parsed correctly.
If you have any requests, it's also welcome. Right now I'm trying to figure out how to get the winner(s) of the game.
---
@Layne: I did not understood quite well your questions.
MPQ files aren't just lzma encoded files. They are encoded in sectors with possibly different algorithm (even if lzma seems to be the only one used in SC2).
I suggest you to get an MPQ library that will handle this part for you (such as libmpq or stormlib). Reversing the replay format is hard enough not to have to decode MPQ manually ;)