Scratchの.sb3ファイルの構造

Scratch 3.0のプロジェクトファイルの中身についてです。

ZIPファイルである

.sb3は、実体がZIPです。中にproject.jsonと、コスチュームや音の素材ファイルが入っています。素材のファイル名は、中身のハッシュ値になっています。

project.jsonの構造

targetsの配列に、ステージとスプライトが入っています。各ターゲットのblocksは、ブロックのIDをキーにした辞書で、opcode、next、parent、inputsなどを持ち、IDでつながっています。

ブラウザで読める

ZIPを展開するライブラリがあれば、ブラウザの中だけでproject.jsonを読めます。そのため、ファイルをサーバーにアップロードしなくても、中身の解析ができます。

この技術を使っているツール

ほか15本のツールでも使っています。