PlayDrop logoPlayDrop Studio
CrearIntercambio de partidasGanarAprenderConectoresRecursosComunidadAyuda
PlayDrop logoPlayDrop Studio
CrearIntercambio de partidasGanarAprenderConectoresRecursosComunidadAyuda
Iniciar sesión
Juegos HTML simples
Documentación

Empieza aquí

ResumenTu primer juegoJuegos de PlayDropPreguntas frecuentes

Crea con Cloud

Creación con CloudPlanes y generaciones

Conecta tu app de IA

Todos los conectoresClaudeChatGPTClaude CodeCodexCursorGeminiAntigravityGrok BuildGrok BotGrok ChatLovableReplit

Publica y comparte

Publicar desde tu app de IAJuegos HTML simplesEmpaquetado y .playPublicar e importarArchivos del juegoVisibilidad y alcanceImágenes y vídeo de la fichaGéneros y etiquetasLocalizaciónJuegos instantáneos

Experiencia de juego

Carga, pausa y audioPantalla completa y zonas segurasPartidas guardadas en la nubeGrupos locales y mandos

Juega en grupo

Compartir, amigos e invitacionesClasificacionesLogrosGrupos en línea y vozServidores en tiempo real

Gana

MonetizaciónCréditos y recompensas

Recursos

Recursos de juegoGeneración de recursos con IAFormatos personalizados y creaciones de jugadores

Referencia

SDK de clienteSDK de servidorcatalogue.jsonErrores y recuperaciónSolución de problemas
DocumentaciónJuegos HTML simples
Publica y comparte

Publica un juego HTML simple desde tu app de IA

Publica un archivo HTML autónomo de hasta 10 MiB con upload_game: qué cabe, el minicatálogo, la visibilidad, las actualizaciones y cuándo pasar a un paquete.

La vía simple publica un juego HTML estándar, como un arcade en canvas o un puzle con el DOM, con una sola llamada a upload_game. No necesita el SDK de PlayDrop, ni una carpeta de compilación, ni archivos adicionales, y devuelve un enlace que cualquiera puede abrir en un móvil o un ordenador.

Cuándo encaja la vía simple

  • Todo el juego es un único archivo HTML de 10 MiB como máximo (10.485.760 bytes UTF-8), con sus scripts, estilos, imágenes y sonidos incrustados.
  • Es un juego de navegador corriente: no llama al SDK de PlayDrop, así que no tiene partidas guardadas en la nube, clasificaciones, logros, opciones para compartir, grupos, compras ni anuncios.
  • No necesita archivos separados: ni imágenes o vídeos para la ficha ni servidor de juego.

Si alguna de estas condiciones no se cumple, usa un paquete. Conserva las funciones que pidió tu usuario; nunca las elimines ni aplanes un juego de varios archivos para que encaje en esta vía. La subida rechaza las llamadas al SDK, el código de servidor y los campos del catálogo exclusivos de los paquetes con advanced_upload_required.

Envía el juego

Llama a upload_game con un nuevo requestId, el HTML completo y un minicatálogo para un juego:

json
{
  "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"
    }]
  }
}
  • name es el slug permanente del juego: de 1 a 100 letras minúsculas, dígitos o guiones.
  • tags debe incluir un género, como game-genre/casual; consulta géneros y etiquetas.
  • types declara cómo se juega; un juego de un solo archivo suele ser ["solo"]. Los tamaños de grupo y el juego en línea son exclusivos de los paquetes.
  • controller.support indica la compatibilidad real con mandos, incluido off.
  • authMode decide el inicio de sesión: NONE u OPTIONAL permite jugar a cualquiera; si se omite, el valor por defecto es REQUIRED. Inclúyelo en cada actualización.
  • primarySurface indica la orientación para la que está diseñado el juego; las subidas simples aparecen para ordenador, horizontal y vertical.

Los demás campos aceptados son subtitle, emoji, color, license, creation, releaseNotes, inspirationPrompt, makingOf, sourceRepository, sourceLocale, offlineSupported e instant. PlayDrop asigna el número de versión.

Elige quién puede jugar

  • Omite visibility para seguir el ajuste de la cuenta del creador en un juego nuevo (Público, salvo que haya elegido No listado o Privado); una actualización conserva el público actual del juego.
  • "private" guarda una versión que solo puede abrir el creador, para probarla. Publica después esa misma versión con publish_game_version; no la vuelvas a subir.
  • "unlisted" la publica para cualquiera con el enlace, sin que aparezca en listados; "public" la publica para que pueda descubrirse.

Haz lo que te pidió tu usuario y nunca hagas un juego más visible de lo que pretendía. Consulta quién puede jugar.

Lee el recibo

El recibo incluye gameId, slug, version, status, visibility y url, el enlace de esa versión exacta para el propietario. Los juegos públicos y no listados reciben también shareUrl, la página permanente del juego; esa es la que debes dar a tu usuario. Para una versión privada, dale url. instant e instantReason indican si el juego es apto como juego instantáneo.

Actualiza el juego

Llama a list_games, pasa el gameId del juego y conserva su name. Vuelve a enviar el HTML completo y el minicatálogo completo: cada subida es una instantánea completa, y los campos omitidos no estarán en la nueva versión. El enlace no cambia. Un juego que se subió por primera vez como paquete debe seguir usando la vía de paquete, para no perder sus archivos ni sus funciones.

Pasa a un paquete más adelante

Añadir partidas guardadas en la nube, una clasificación, imágenes para la ficha o un servidor convierte el juego en un paquete. Es una actualización normal del mismo juego: conserva el name, súbelo con prepare_catalogue_upload y establece expectedCurrentVersion con la versión actual de list_games. Lee empaquetado.

Guías relacionadas

  • Publicar desde tu app de IACómo publican los agentes de IA en PlayDrop mediante MCP: vía simple y paquete, pruebas privadas, publish_game_version, actualizaciones, límites y errores.
  • Empaquetado y .playOrganiza una carpeta, ZIP o .play compilado con catalogue.json en la raíz, declara medios de la ficha y servidores, y súbelo con prepare_catalogue_upload.
  • Visibilidad y alcanceQuién abre tu juego, el ajuste de cuenta, las versiones y cómo atraen jugadores Boost, el intercambio de partidas, los juegos instantáneos y la búsqueda.
AnteriorPublica juegos desde tu app de IA con el MCP de PlayDropSiguienteEmpaqueta un juego de PlayDrop con catalogue.json y .play
Ver Markdown
EnglishFrançaisDeutsch日本語한국어EspañolPortuguês (Brasil)Bahasa Indonesia繁體中文简体中文ItalianoPolskiNederlandsSvenskaNorsk bokmålSuomiTürkçeไทยTiếng Việtالعربية

En esta página

Cuándo encaja la vía simpleEnvía el juegoElige quién puede jugarLee el reciboActualiza el juegoPasa a un paquete más adelante
Ver Markdown