---
type: explanation
title: マーケットプレイスにゲームを出荷する
summary: マーケットプレイスゲーム開発とは何か、関わる部品（SDK、マニフェスト、リプレイ契約、任意のエンジンキット）、そしてそれらがコードから、誰でも埋め込める公開済みのリプレイ可能なゲームまで、どう組み合わさるか。
---

マーケットプレイスのゲームは、あなたが一度作り **誰でも** 埋め込めるゲームです。公開の GitHub リポジトリを公開すると、プラットフォームがそれをインデックスし、ユーザーはあなたの関与なしに、そのゲーム id でそれに到達します。これは [カスタムゲーム](/docs/custom-game-development/overview) の反対の端です。後者はあなただけが使えて、あなた自身がホストします。このセクションは、マーケットプレイスのパスの、詳細な作って公開するガイドです。

自分のサイトキーのためだけのゲームが欲しいなら、代わりに [カスタムゲーム開発](/docs/custom-game-development/overview) です。すべての Caputchin ユーザーにゲームを配布したいときに、ここに来てください。

## パイプライン全体

```mermaid
flowchart TD
  A["Write the game (game-sdk)"] --> B["Describe it (caputchin.json manifest)"]
  B --> C["Make it replayable: run(seed, trace) yields a verdict"]
  C -.->|optional kit| K["engine-kit: produce run from a reducer"]
  C --> D["Publish: tag the repo caputchin-game"]
  D --> E["Indexer pins the bundle and runs the replay self-check"]
  E --> F["Listed and embeddable, replayable if the self-check passed"]
```

各ボックスは、このセクションのページに対応します：

| 部品 | それは何か | ページ |
|---|---|---|
| ゲーム | ウィジェットのサンドボックス化された iframe で走る、ゲーム SDK に対して作られた自己完結した JS バンドル。 | [マーケットプレイスゲームを作る](/docs/marketplace-game-development/build-a-marketplace-game)、[SDK リファレンス](/docs/marketplace-game-development/game-sdk-reference) |
| マニフェスト | ゲーム、そのプリセット、そのバンドルを記述する、リポジトリのルートの `caputchin.json`。 | [caputchin.json マニフェスト](/docs/marketplace-game-development/the-caputchin-json-manifest) |
| リプレイ契約 | サーバーが権威ある決定に達するために再実行する、決定論的な `run(seed, trace) -> verdict`。 | [リプレイ契約](/docs/marketplace-game-development/replay-contract) |
| エンジンキット | 素のレデューサーから適合する `run` を生む、**任意の** 作成キット。 | [engine-kit](/docs/marketplace-game-development/engine-kit) |
| 公開 | リポジトリにタグを付けると、インデクサーが発見して固定し、任意で CI で自動化します。 | [マーケットプレイスに公開する](/docs/marketplace-game-development/publish-to-the-marketplace) |

## リプレイ可能か、リプレイ不可か [#replayable-vs-not-replayable]

このパスで最も重要な単一の考え：マーケットプレイスのゲームは、サーバー側で **リプレイ可能** な場合だけ検証をゲートできます。インデクサーがあなたのゲームを取り込むとき、**リプレイのセルフチェック** を走らせます。封じられたアイソレートにあなたのヘッドレスの `run` アーティファクトを読み込み、それが有効な [判定](/docs/marketplace-game-development/replay-contract) を生むことを確認します。

- **セルフチェックが通る** → ゲームは **リプレイ可能** です。本物のプレイヤーのラウンドが決定に達するためにサーバーで再実行されるので、ゲームはサイトキーをゲートできます。
- **セルフチェックが失敗する** → ゲームは **リプレイ不可** と表示されます。それでも一覧され、埋め込めますが、通るバージョンを公開するまで、UX としてのみ（セキュリティゲートではなく）です。すでに以前のリプレイ可能なバージョンにいるサイトは、まさにそのスナップショットを走らせ続けます。

これが、決定論が任意の磨きではない理由です。それは、サイトキーを守れるゲームと、単に装飾的なゲームの間の線です。

## マーケットプレイスのゲームがカスタムゲームとどう違うか

| | マーケットプレイスのゲーム | [カスタムゲーム](/docs/custom-game-development/overview) |
|---|---|---|
| 誰が埋め込めるか | 誰でも、ゲーム id で | あなただけ |
| ホスティング | あなたの GitHub / npm からプラットフォームが固定 | あなたがバンドルをホスト（`game-src`） |
| カスタマイズスキーマ | `caputchin.json` で宣言 | ダッシュボードで宣言 |
| リプレイアーティファクト | マニフェストの `run` からインデックス | ダッシュボードでアップロード |
| 発見 | 閲覧できるマーケットプレイス | なし |

## どこから始めるか

Caputchin のゲームを作ったことがないなら、[マーケットプレイスゲームを作る](/docs/marketplace-game-development/build-a-marketplace-game) を上から下まで読み、それから [リプレイ契約](/docs/marketplace-game-development/replay-contract) を読んでください。出荷の準備ができたら、[マーケットプレイスに公開する](/docs/marketplace-game-development/publish-to-the-marketplace) に従ってください。[エンジンキット](/docs/marketplace-game-development/engine-kit) は任意で、丸ごと飛ばせます。

## あわせて読む

- [マーケットプレイスゲームを作る](/docs/marketplace-game-development/build-a-marketplace-game)：作成のチュートリアル。
- [リプレイ契約](/docs/marketplace-game-development/replay-contract)：ゲームをリプレイ可能にするもの。
- [マーケットプレイスに公開する](/docs/marketplace-game-development/publish-to-the-marketplace)：タグ、インデックス、自動化。
- [カスタムゲーム開発](/docs/custom-game-development/overview)：セルフホストの、自分のキーだけの選択肢。
