.sc2replayファイルの解析[終了]


8

StarCraft 2リプレイファイル(.sc2replay)を解析するにはどうすればよいですか?APIはありますか?

私はSc2gearsを知っていますが、それは私のニーズを完全には満たしていません。


3
ゲームの開発ではないので、この質問をトピック外として締めくくります。
ヴァイランクール

回答:


15

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見つけて見つけることです


8

開示:私は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行を超えるコードを数えます)。

https://github.com/icza/scelight

https://github.com/icza/sc2gears


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.