# catalogue.json：PlayDrop ゲームのメタデータとローカライズ

ゲームのタイトル、説明、ジャンルタグ、掲載用の画像と動画、翻訳、任意の server フィールドについて、PlayDrop Connector のフォーマットで説明するリファレンスです。

Source: https://www.playdrop.ai/ja/docs/catalogue-json

[PlayDrop Connector](https://www.playdrop.ai/ja/docs/connectors) は、小さな `catalogue.json` を使ってゲームを公開します。これは、ゲームをちょうど 1 つ含む `apps` を持つ JSON オブジェクトです。必須なのは `name` のみです。エージェントはこれをカタログ引数としてゲームファイルと一緒に送信するため、コマンドラインツールは不要です。PlayDrop Cloud では、このメタデータが自動で管理されます。

## 最小限の公開例

更新時は、小文字のスラッグを変更せずに維持してください。必要に応じて、表示タイトル、正確な説明、操作方法、元の言語、既知のタグを追加します。以下の例では、既存のプラットフォーマーのジャンルタグを使用しています。

```json
{
  "apps": [{
    "name": "moon-jump",
    "displayName": "Moon Jump",
    "description": "Jump between lunar platforms and reach the finish.",
    "controls": "Arrow keys to move. Space to jump.",
    "sourceLocale": "en",
    "tags": ["game-genre/platformer"]
  }]
}
```

## 対応フィールドと制限

`name`：英小文字、数字、ハイフンからなる 1–100 文字。先頭は英字または数字。`displayName`：空でないタイトル。`subtitle`：最大 120 文字。`description`：最大 3,000 文字の Markdown（H1 見出し、埋め込みメディア、表は使用不可）。`inspirationPrompt`：最大 400 文字の 1 行のプレーンテキスト。テキストの長さの制限は、JavaScript の UTF-16 コード単位で数えます。

任意のフィールドには、`controls`、`releaseNotes`、`makingOf`、`emoji`、`color`、`sourceRepository`、`license`、`tags`、`sourceLocale`、`listingLocalizations`、`listingMedia`、`server` があります。タグには既存の `group-slug/tag-slug` 形式の参照を使用し、一意のタグを最大 20 個まで指定できます。`server` には、アップロードする `server.js` の Colyseus ルームを `"server": { "rooms": ["game"] }` のように記載します。[サーバー SDK](https://www.playdrop.ai/ja/docs/server-sdk) を参照してください。公開前に、現在受け付けられるライセンスの値とフィールドの完全なルールをコネクタに確認してください。

## 掲載用の画像と動画

掲載用メディアは、パスで名前を付けたファイルとして `index.html` と同じ場所にアップロードします。ゲームタイトル入りのアートを使った `listing/icon.png`、`listing/hero-landscape.png`（16:9）、`listing/hero-portrait.png`（9:16）、`listing/screenshots/landscape/0.png` のようなスクリーンショット、そして動画 `listing/videos/landscape/0.mp4`（トレーラー）と `listing/videos/portrait/0.mp4`（モバイル向けティーザー）です。動画はゲームカードとゲームページで無音再生され、パソコンとテレビではトレーラー、スマートフォンではティーザーが流れます。そのため、ゲームプレイを伝えて最初のプレイにつなげる最速の方法です。画像は PNG、動画は MP4 です。

## 掲載情報を正確に翻訳する

必ず英語で公開し、あなたの言語が英語と異なる場合はその言語でも公開してください。`sourceLocale` には元の言語を設定します。`listingLocalizations` は、英語、フランス語、ドイツ語、スペイン語、ブラジルポルトガル語、インドネシア語、日本語、韓国語、繁体字中国語、簡体字中国語に対応しています。各翻訳には `locale` と `displayName` が必要です。元の内容と一緒にアップロードすると、PlayDrop が `sourceHash` を自動で設定します。翻訳したアートは `listing/locales/<locale>/` 以下にアップロードします。たとえば、フランス語のタイトルを入れた `listing/locales/fr/hero-landscape.png` です。アートは対応する翻訳に自動で関連付けられます。元の内容を変更したら、翻訳を更新してください。掲載情報を翻訳しても、ゲーム自体は翻訳されません。
