回答:
Starcraft 2のリプレイは、Blizzardによって開発および使用された圧縮ファイル形式のMPQとして保存されます。Wikiページの下部には、MPQパーサーへのリンクもあります。
:たぶん、あなたはまた、次のオープンソースプロジェクトを見ていたいと思うでしょう WARP(スタークラフト2リプレイJavaで書かれたパーサ)またはphpsc2replay(PHPで書かれたリプレイパーサー)。
更新:現在のところ、多くの再生データを読み取ることができるPythonライブラリsc2readerもあります。これは、おそらく現在利用可能な最良のオプションです(2013年3月現在)。
2018年更新: sc2readerはによって保守されていggtracker
ます。とにかくsc2reader
今はPyPiでホストされているので、おそらく最善の方法はsc2readers pypiページでpip install sc2reader
見つけて見つけることです
開示:私はScelightとSc2gearsの作者です。
Blizzard がpythonで書かれたs2protocolと呼ばれる公式のオープンソースSC2Replayファイルパーサーライブラリをリリースしました。
https://github.com/Blizzard/s2protocol
これが最も完全で最新の公式リプレイパーサーです。これはリファレンス実装と見なされます。それはかなり低レベルですが。
呼ばれる別のプロジェクトがあるScelight(の後継であるSc2gearsが)。Scelightには設定(コンボボックス)がありますSkill level
。これをに設定するとDeveloper
(開発者のスキルを解き明かすために、最初に解決する小さなプログラミングタスクが必要です)、開発者向けのReplay Analyzerの[ Inspector ]タブに、開かれた再生に関する一連の新しい情報が表示されます。最後のすべてのビット、16進ビューアなど、リプレイの内部構造のみを含みます。
Scelightには、External Module APIと呼ばれる拡張インターフェースもあり、十分に文書化されたAPIがあります。外部モジュールAPIは、SC2Replayパーサーおよび低レベルと高レベルの両方の内部再生データ構造とツールへのアクセスを提供します。外部モジュールAPIのjavadocは、こちらからオンラインでも入手できます。
https://scelightop.appspot.com/scelight-ext-mod-api/
編集:
ScelightとSc2gearsはどちらもオープンソース化されており、どのように動作するかを正確に確認できます(どちらのプロジェクトも100,000行を超えるコードを数えます)。
しばらく前に、SC2リプレイファイルの解析を試しました。私が行ったこととリバースエンジニアリングを行ったことを確認できます(下部にある便利なサイトへのリンクもたくさんあります)。