アソバースへの投稿方法:HTML・ZIP・URLの3通りを比較
遊びを届ける執筆にClaudeを使用しています。

アソバースにゲームを公開するとき、最初に迷うのが「どの形式で投稿するか」という点です。アソバースは現在、単一のHTMLファイル、ZIPファイル、そして公開済みURLの登録という3つの投稿方法に対応しています。それぞれに向き・不向きがあり、作ったゲームの構成によって正解が変わります。 この記事では3通りの方法を横並びで比較し、「自分のゲームにはどれを使えばいいか」を判断できるよう、選び方の基準と手順をまとめます。
この記事の目次
3通りの投稿方法をざっくり把握する
まず全体像を整理します。
HTMLファイル直接投稿は、ゲームのコードをすべて1つの.htmlファイルに収めてアップロードする方法です。外部ファイルへの参照が不要なため、仕組みがシンプルで投稿の手間が最も少ない選択肢です。
ZIPファイル投稿は、HTMLファイルを中心に、画像・音声・JavaScriptファイルなど複数のファイルをひとつのZIPにまとめてアップロードする方法です。ファイルを分割して管理したいゲームや、素材ファイルが多いゲームに向いています。
公開済みURLの登録は、すでにGitHub PagesやVercelなどの外部ホスティングサービスで公開されているゲームのURLをアソバースに登録し、プラットフォーム上で遊べるようにする方法です。ゲームのデータはアソバースのサーバーには置かず、外部サービス側で管理し続けます。
HTMLファイル単体投稿が向く場面と限界
単一HTMLはコードをすべてインラインに書く、いわゆる「オールインワン」構成です。CSSは<style>タグ内に、JavaScriptは<script>タグ内に、画像はBase64エンコードして<img>タグのsrc属性に埋め込む形にすると、外部依存ゼロの1ファイルが完成します。
向いているのは次のようなケースです。
- シンプルなパズルゲームやクイズゲームなど、素材ファイルが少ないもの
- ChatGPTやClaudeなどのAIツールに「1ファイルで動くゲームを作って」と依頼して生成したコードをそのまま出したいとき
- まず試しに投稿してみたい段階
一方、限界もあります。画像や音声をすべてBase64で埋め込むとファイルサイズが一気に膨らみます。テクスチャや効果音を多用するゲームでは、HTMLファイルが数MB〜十数MBになるケースもあり、読み込みが遅くなる原因になります。また、ファイルが1本しかないため、後からコードを修正・管理するときに見通しが悪くなりがちです。
ZIPファイル投稿が向く場面と準備のポイント
ZIPはファイルを分割できる分、作りがしっかりしたゲームには最も素直な選択肢です。
向いているのは次のようなケースです。
- 画像・音声・JSONデータなど複数のアセットを使うゲーム
- phaser.jsやthree.jsなどのライブラリファイルをローカルに含めているゲーム
- AIツールで「フォルダ構成で出力して」と依頼して生成したプロジェクトをそのまま提出したいとき
ZIPを作るときの注意点は、エントリーポイントのHTMLファイルの置き場所です。多くのホスティング環境と同様、ZIPを展開したときに最上位の階層にindex.htmlがあることを前提とするケースが多いため、深いサブフォルダに埋めないようにします。加えて、ファイル間のパスは相対パスで記述するのが基本です。たとえばHTMLから同じフォルダの画像を参照するなら<img src="images/player.png">のように書きます。絶対パスや自分のPC上のパスが混入していると、投稿後に素材が表示されなくなります。
ZIPを作成する際、Macの場合は__MACOSXフォルダや.DS_Storeファイルが混入することがあります。これらは不要なファイルです。ターミナルでzip -r game.zip . -x "*.DS_Store" -x "__MACOSX" のように除外オプションを指定するか、不要ファイルを取り除いてからZIPを作る習慣をつけておくと余計なトラブルを防げます。
URL登録が向く場面と外部ホスティングの選び方
URL登録はゲームの実体をアソバースの外に置いたまま、アソバース上に「入口」だけ作る方法です。
向いているのは次のようなケースです。
- すでにGitHub PagesやVercelなどで公開しているゲームをアソバースにも並べたいとき
- ゲームを頻繁に更新するため、アソバースへの再アップロードの手間を省きたいとき
- ファイルサイズが大きくアップロードが現実的でないとき
- Unity WebGLビルドやGodotのHTML5エクスポートなど、ファイル数が多い大規模なプロジェクト
注意点は2つあります。1つ目は外部ホスティング側の設定です。異なるドメインからゲームを読み込む際、ホスティング先がCORS(Cross-Origin Resource Sharing)を適切に設定していないと、素材の読み込みがブロックされる場合があります。GitHub Pagesは静的ファイルに対して比較的オープンな設定になっていますが、サーバー設定を細かく制御したい場合はVercelやNetlifyの方が柔軟です。2つ目は外部サービスの運用継続性です。外部サービス側でURLが変わったり、公開設定が変わったりすると、アソバース上でも遊べなくなります。投稿後も外部サービスのURLや公開状態を維持する必要があります。
3通りの選び方:判断フローで整理する
以上を踏まえて、次の順番で判断すると迷いが少なくなります。
- すでに外部URLで公開済みか? → はい:URL登録を選ぶ
- 外部アセット(画像・音声など)がファイルとして分かれているか? → はい:ZIP投稿を選ぶ
- コードが1ファイルに収まっているか、または収められるか? → はい:HTML単体投稿を選ぶ
「AIで作ったゲームをそのまま出したい」という場合は、AIに生成を依頼するときの指示が分岐点になります。「1つのHTMLファイルにすべて収めて出力してください」と指示すればHTML単体投稿に、「フォルダ構成でファイルを分けて出力してください」と指示すればZIP投稿に対応した形で出力されます。目的のゲームの規模に合わせて指示を使い分けると、投稿形式の選択も自然に決まります。
なお、アソバースのSDKに対応することで共通ログインやクラウドセーブ機能を使えますが、これは投稿形式とは独立した話です。HTML単体でもZIPでもURL登録でも、SDK対応の実装をしてあればこれらの機能を利用できます。SDK非対応のゲームでも公開・プレイ自体は問題なく行えます。
次の行動
使いたい投稿形式が決まったら、アソバースの投稿画面でファイルのアップロードまたはURLの入力に進んでください。ZIPを使う場合は、投稿前にローカル環境でHTMLをブラウザで開き、画像や音声が正しく表示・再生されることを確認しておくと、アップロード後のトラブルを減らせます。外部URL登録を選ぶ場合は、登録するURLがブラウザのシークレットモードでも正常にゲームが動くことを事前に確かめておくと安心です。

