# catalogue.json : métadonnées et localisation des jeux PlayDrop

Référence pour les titres de jeux, les descriptions, les tags de genre, les images et vidéos de fiche, les traductions et le champ facultatif server, au format PlayDrop Connector.

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

[PlayDrop Connector](https://www.playdrop.ai/fr/docs/connectors) publie votre jeu avec un petit fichier `catalogue.json` : un objet JSON comportant `apps`, qui contient exactement un jeu. Seul `name` est obligatoire. L’agent l’envoie en tant qu’argument catalogue, avec les fichiers du jeu ; aucun outil en ligne de commande n’est nécessaire. PlayDrop Cloud tient ces métadonnées à jour pour vous.

## Exemple minimal de publication

Gardez le même slug en minuscules lors des mises à jour. Ajoutez selon vos besoins un titre d’affichage, une description précise, les commandes, la langue source et des tags connus. L’exemple ci-dessous utilise le tag de genre existant pour les jeux de plateforme.

```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"]
  }]
}
```

## Champs pris en charge et limites

`name` : de 1 à 100 lettres minuscules, chiffres ou traits d’union, commençant par une lettre ou un chiffre. `displayName` : titre non vide. `subtitle` : jusqu’à 120 caractères. `description` : jusqu’à 3 000 caractères en Markdown, sans titres H1, médias intégrés ni tableaux. `inspirationPrompt` : jusqu’à 400 caractères de texte brut sur une seule ligne. Les limites de texte sont calculées en unités de code UTF-16 JavaScript.

Les champs facultatifs comprennent `controls`, `releaseNotes`, `makingOf`, `emoji`, `color`, `sourceRepository`, `license`, `tags`, `sourceLocale`, `listingLocalizations`, `listingMedia` et `server`. Les tags utilisent des références existantes au format `group-slug/tag-slug`, dans la limite de 20 tags uniques. `server` liste les salles Colyseus d’un fichier `server.js` envoyé, par exemple `"server": { "rooms": ["game"] }` ; consultez le [SDK serveur](https://www.playdrop.ai/fr/docs/server-sdk). Avant la publication, demandez au connecteur les valeurs de licence actuellement acceptées et l’ensemble des règles applicables aux champs.

## Images et vidéos de la fiche

Envoyez les médias de la fiche sous forme de fichiers placés à côté de `index.html` et nommés selon leur chemin : `listing/icon.png`, `listing/hero-landscape.png` (16:9) et `listing/hero-portrait.png` (9:16) avec le titre du jeu dans l’illustration, des captures d’écran comme `listing/screenshots/landscape/0.png`, ainsi que les vidéos `listing/videos/landscape/0.mp4` (la bande-annonce) et `listing/videos/portrait/0.mp4` (le teaser mobile). Les vidéos sont lues sans le son sur les cartes de jeu et sur la page du jeu, la bande-annonce sur ordinateur et TV et le teaser sur téléphone : c’est le moyen le plus rapide de montrer le gameplay et de décrocher une première partie. Les images sont au format PNG et les vidéos au format MP4.

## Traduisez fidèlement la fiche

Publiez toujours la fiche en anglais, et aussi dans votre langue si elle est différente. Définissez `sourceLocale` sur la langue d’origine. `listingLocalizations` prend en charge l’anglais, le français, l’allemand, l’espagnol, le portugais du Brésil, l’indonésien, le japonais, le coréen, le chinois traditionnel et le chinois simplifié. Chaque traduction doit contenir `locale` et `displayName` ; lorsque vous l’envoyez avec sa source, PlayDrop renseigne `sourceHash`. Envoyez les illustrations traduites dans `listing/locales/<locale>/`, par exemple `listing/locales/fr/hero-landscape.png` avec le titre en français ; elles sont automatiquement associées à leur traduction. Actualisez les traductions après toute modification de la source. La traduction de la fiche ne traduit pas le jeu lui-même.
