Publier un jeu HTML simple depuis votre app d’IA
Publiez un fichier HTML autonome de 10 MiB maximum avec upload_game : ce qui convient, le mini catalogue, la visibilité, les mises à jour et quand passer au paquet.
La voie simple publie un jeu HTML standard, comme un jeu d’arcade sur canvas ou un puzzle en DOM, en un seul appel upload_game. Elle ne nécessite ni SDK PlayDrop, ni dossier de compilation, ni fichiers supplémentaires, et renvoie un lien que tout le monde peut ouvrir sur un téléphone ou un ordinateur.
Quand la voie simple convient
- Le jeu entier tient dans un seul fichier HTML de 10 MiB maximum (10 485 760 octets UTF-8), avec ses scripts, styles, images et sons intégrés.
- C’est un jeu de navigateur ordinaire : il n’appelle pas le SDK PlayDrop, donc pas de sauvegardes cloud, de classements, de succès, de partage, de groupes, d’achats ni de publicités.
- Il n’a besoin d’aucun fichier séparé : ni images ou vidéos de fiche, ni serveur de jeu.
Si l’une de ces conditions n’est pas remplie, utilisez plutôt un paquet. Conservez les fonctionnalités demandées par la personne que vous aidez ; ne les supprimez jamais et n’aplatissez jamais un jeu à plusieurs fichiers pour le faire entrer dans cette voie. L’envoi refuse les appels au SDK, le code serveur et les champs de catalogue réservés aux paquets avec advanced_upload_required.
Envoyez le jeu
Appelez upload_game avec un nouveau requestId, le HTML complet et un mini catalogue pour un seul jeu :
{
"requestId": "moon-jump-first-upload",
"html": "<!doctype html><html><head><meta charset=\"utf-8\"><title>Moon Jump</title></head><body>…</body></html>",
"catalogue": {
"apps": [{
"name": "moon-jump",
"displayName": "Moon Jump",
"description": "Jump between lunar platforms and reach the flag.",
"controls": "Tap or press Space to jump.",
"tags": ["game-genre/casual"],
"types": ["solo"],
"controller": { "support": "off" },
"authMode": "NONE",
"primarySurface": "MOBILE_PORTRAIT"
}]
}
}nameest le slug permanent du jeu : de 1 à 100 lettres minuscules, chiffres ou traits d’union.tagsdoit inclure un genre commegame-genre/casual; consultez genres et tags.typesdéclare comment on y joue ; un jeu en un seul fichier vaut normalement["solo"]. Les tailles de groupe et le jeu en ligne sont réservés aux paquets.controller.supportindique la prise en charge réelle des manettes, y comprisoff.authModedétermine la connexion :NONEouOPTIONALpermet à tout le monde de jouer ; s’il est omis, la valeur par défaut estREQUIRED. Incluez-le à chaque mise à jour.primarySurfaceindique l’orientation pour laquelle le jeu est conçu ; les envois simples sont proposés sur ordinateur, en paysage et en portrait.
Les autres champs acceptés sont subtitle, emoji, color, license, creation, releaseNotes, inspirationPrompt, makingOf, sourceRepository, sourceLocale, offlineSupported et instant. PlayDrop attribue le numéro de version.
Choisissez qui peut jouer
- Omettez
visibilitypour qu’un nouveau jeu suive le réglage du compte du créateur (Public, sauf s’il a choisi Non répertorié ou Privé) ; une mise à jour conserve le public actuel du jeu. "private"enregistre une version que seul le créateur peut ouvrir, pour les tests. Publiez plus tard cette version exacte avecpublish_game_version; ne la renvoyez pas."unlisted"la publie pour toute personne qui a le lien, sans la répertorier ;"public"la publie pour qu’elle puisse être découverte.
Suivez ce que la personne que vous aidez a demandé et ne rendez jamais un jeu plus visible qu’elle ne le souhaitait. Consultez qui peut jouer.
Lisez le reçu
Le reçu contient gameId, slug, version, status, visibility et url, le lien de cette version exacte pour le propriétaire. Les jeux publics et non répertoriés reçoivent aussi shareUrl, la page durable du jeu : c’est ce lien qu’il faut transmettre à la personne que vous aidez. Pour une version privée, transmettez url. instant et instantReason indiquent l’admissibilité à Instantané.
Mettez à jour le jeu
Appelez list_games, passez le gameId du jeu et conservez son name. Renvoyez le HTML complet et le mini catalogue complet : chaque envoi est une copie complète, et les champs omis sont absents de la nouvelle version. Le lien reste le même. Un jeu envoyé d’abord sous forme de paquet doit continuer à utiliser la voie des paquets, pour que ses fichiers et ses fonctionnalités ne soient pas perdus.
Passez à un paquet plus tard
Ajouter des sauvegardes cloud, un classement, des illustrations de fiche ou un serveur transforme le jeu en paquet. C’est une mise à jour ordinaire du même jeu : conservez le name, envoyez-le avec prepare_catalogue_upload et définissez expectedCurrentVersion sur la version actuelle issue de list_games. Consultez la page paquets.