# O que o PlayDrop adiciona ao seu jogo

O que um jogo pode fazer com SDK, catalogue.json e hospedagem, onde cada recurso funciona e seus guias: salvamentos, placares, grupos, servidores e ganhos.

Source: https://www.playdrop.ai/pt-br/create/learn/playdrop-games

Um jogo do PlayDrop é um jogo web que o PlayDrop hospeda, lista e roda no site e nos apps do PlayDrop para iOS, Android, Windows e macOS. Nos apps, o jogo roda em tela cheia, sem a barra do navegador em volta; é o mesmo jogo web rodando na tela de jogo do app, e não um build nativo separado. Esta página lista o que o PlayDrop pode adicionar e onde cada parte está documentada.

## Duas formas de entrar

| | HTML simples | Pacote |
|---|---|---|
| O que você envia | Um único arquivo HTML autocontido, de até 10 MiB | Uma pasta compilada, ZIP ou .play com catalogue.json |
| SDK do PlayDrop | Não | Sim, todos os recursos abaixo |
| Imagens e vídeo da listagem | Não | Sim |
| Servidor de jogo hospedado | Não | Sim |
| Guia | [Jogos em HTML simples](https://www.playdrop.ai/pt-br/create/learn/html-games) | [Empacotamento](https://www.playdrop.ai/pt-br/create/learn/packaging) |

Qualquer jogo pode começar simples e virar um pacote depois, com o mesmo nome e o mesmo link.

## O que os jogadores ganham

| Recurso | O que oferece aos jogadores | Guia |
|---|---|---|
| Ciclo de vida do host | Pausa e retomada sem falhas, áudio que respeita o silenciamento do jogador e um primeiro quadro rápido | [Carregamento, pausa e áudio](https://www.playdrop.ai/pt-br/create/learn/lifecycle) |
| Layout em tela cheia | Jogo de ponta a ponta, com o HUD longe dos entalhes e dos controles do PlayDrop | [Tela cheia e áreas seguras](https://www.playdrop.ai/pt-br/create/learn/viewport) |
| Salvamentos na nuvem | Progresso que acompanha o jogador entre dispositivos | [Salvamentos na nuvem](https://www.playdrop.ai/pt-br/create/learn/cloud-saves) |
| Placares | Melhores pontuações e a posição do jogador | [Placares](https://www.playdrop.ai/pt-br/create/learn/leaderboards) |
| Conquistas | Objetivos com ícones e progresso | [Conquistas](https://www.playdrop.ai/pt-br/create/learn/achievements) |
| Compartilhamento e convites | Janelas de compartilhamento com imagem ou clipe, convites para amigos e cards de jogo no chat | [Compartilhamento, amigos e convites](https://www.playdrop.ai/pt-br/create/learn/social) |
| Grupos online e voz | Amigos entram juntos na mesma sala, com voz da sala opcional | [Grupos online e voz](https://www.playdrop.ai/pt-br/create/learn/online-party) |
| Grupos locais e controles | Controles físicos e celulares como controles em uma só tela | [Grupos locais e controles](https://www.playdrop.ai/pt-br/create/learn/local-party) |
| Servidores em tempo real | Salas Colyseus com um banco de dados MongoDB por jogo | [Servidores de jogo em tempo real](https://www.playdrop.ai/pt-br/create/learn/game-servers) |
| Avaliações, gorjetas, compras e anúncios | Formas de os jogadores apoiarem o jogo; Créditos para o criador | [Monetização](https://www.playdrop.ai/pt-br/create/learn/monetization) |
| Assets e geração com IA | Assets compartilhados, mídia gerada e criações dos jogadores | [Assets de jogo](https://www.playdrop.ai/pt-br/create/learn/game-assets), [Assets com IA](https://www.playdrop.ai/pt-br/create/learn/ai-assets), [Formatos personalizados](https://www.playdrop.ai/pt-br/create/learn/custom-assets) |

## O que a listagem ganha

O catalogue.json dá ao jogo a página dele: título, descrição, gênero e [tags](https://www.playdrop.ai/pt-br/create/learn/tags), [ícone, arte de destaque, capturas de tela e vídeo](https://www.playdrop.ai/pt-br/create/learn/listing-assets), [traduções](https://www.playdrop.ai/pt-br/create/learn/localization) e elegibilidade para o [Instantâneo](https://www.playdrop.ai/pt-br/create/learn/instant-games). A [visibilidade](https://www.playdrop.ai/pt-br/create/learn/distribution) decide quem pode abri-lo: privado para testes, não listado para qualquer pessoa com o link, público para ser descoberto no PlayDrop e aberto aos buscadores. Uma listagem pública cria oportunidades de descoberta; ela não garante jogadores.

## Onde cada recurso funciona

O site e os apps rodam o mesmo jogo com o mesmo SDK, mas alguns recursos do host dependem do dispositivo:

- A resposta tátil só funciona nos apps nativos; `sdk.haptics.supported` informa se ela está disponível.
- Compartilhar um clipe de vídeo depende do host; os hosts sem esse recurso rejeitam a chamada em vez de compartilhar só o link.
- O jogo offline e o pré-carregamento de arquivos acontecem nos apps nativos, para os jogos que os declaram; o site carrega os jogos online.
- A voz da sala e os grupos dependem da versão do host, do login e da liberação gradual na plataforma.
- Os anúncios dependem do host e do estoque disponível; `load()` informa quando nenhum está pronto.

Projete o jogo para que ele continue jogável quando faltar um serviço opcional.

## Comece pelo SDK

Carregue o SDK, leia o estado do host e depois sinalize que o jogo está pronto quando o primeiro quadro planejado estiver na tela:

```html
<script src="https://assets.playdrop.ai/sdk/playdrop.js"></script>
<script type="module">
  const sdk = await playdrop.init();
  // Set up pause, audio and HUD from sdk.host, then render the first frame.
  sdk.host.ready();
</script>
```

Continue com [carregamento, pausa e áudio](https://www.playdrop.ai/pt-br/create/learn/lifecycle). A [referência do SDK de cliente](https://www.playdrop.ai/pt-br/create/learn/sdk) lista todos os namespaces.

## O que o conector não faz

Seu app de IA publica jogos compilados e lê sua conta. Ele não pode abrir nem alterar jogos feitos no PlayDrop Studio, devolver código-fonte nem enviar código executável de modelos 3D. Esses limites são do conector, não da plataforma: o Studio e as ferramentas do próprio PlayDrop continuam podendo fazer isso.

## Guias relacionados

- [Jogos em HTML simples](https://www.playdrop.ai/pt-br/create/learn/html-games): Publique um único arquivo HTML autocontido de até 10 MiB com upload_game: o que cabe, minicatálogo, visibilidade, atualizações e quando mudar para um pacote.
- [Empacotamento e .play](https://www.playdrop.ai/pt-br/create/learn/packaging): Organize uma pasta, ZIP ou .play compilado com o catalogue.json na raiz, declare a mídia da listagem e os servidores e envie com prepare_catalogue_upload.
- [Carregamento, pausa e áudio](https://www.playdrop.ai/pt-br/create/learn/lifecycle): Inicialize o SDK, sinalize que está pronto no primeiro quadro jogável, pause e retome bem, siga o áudio do host e pré-carregue arquivos para apps e offline.
- [SDK de cliente](https://www.playdrop.ai/pt-br/create/learn/sdk): Referência do SDK de navegador: init, host, jogador e salvamentos, controles, social, multijogador, loja, anúncios, placares, conquistas, assets e IA.
