# Jogos instantâneos e jogos comuns no PlayDrop

O que faz um jogo ser instantâneo: vertical, aberto a convidados, até 10 MiB de arquivos iniciais, início em 2 segundos, e a diferença para um jogo comum.

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

Os jogos instantâneos são os jogos curtos, na vertical, do feed Instantâneo dos apps de celular do PlayDrop: os jogadores deslizam e o próximo jogo já está rodando. Todos os outros jogos são jogos comuns, abertos pela página, pela busca ou por um link. Os dois são publicados do mesmo jeito; ser instantâneo é uma propriedade de uma versão.

## Instantâneo ou comum

| | Instantâneo | Comum |
|---|---|---|
| Onde roda | Feed Instantâneo e todos os lugares onde os jogos comuns rodam | Início, busca, página do jogo, links |
| Orientação | Vertical em primeiro lugar | Qualquer superfície declarada |
| Login | Convidados podem jogar | Qualquer `authMode` |
| Início | Jogável em até 2 segundos | Sem limite, mas quanto mais rápido, melhor |
| Arquivos iniciais | No máximo 10 MiB | Sem limite para o início |
| Selo | Selo de raio | Nenhum |

Um jogo que não atinge o padrão do Instantâneo continua sendo publicado como jogo comum.

## Requisitos

```json
{
  "primarySurface": "MOBILE_PORTRAIT",
  "surfaceTargets": { "desktop": true, "mobileLandscape": false, "mobilePortrait": true },
  "authMode": "OPTIONAL",
  "instant": true,
  "prefetch": { "required": ["game.js", "atlas.png"], "optional": ["music.mp3", "levels/world-2.json"] }
}
```

- `primarySurface` é `MOBILE_PORTRAIT` e o jogo funciona em celulares na vertical.
- `authMode` é `OPTIONAL` ou `NONE`, para que convidados possam jogar.
- Os arquivos iniciais somam no máximo 10 MiB: a página de entrada mais `prefetch.required`, ou todos os arquivos enviados quando nada estiver listado.
- `instant: true` reivindica a elegibilidade.

O envio verifica o tamanho, e os campos `instant` e `instantReason` do recibo informam o resultado. Depois do lançamento, o PlayDrop mede os inícios reais nos apps: quando uma versão chega a 20 inícios a partir de arquivos baixados e mais de um quarto deles leva 2 segundos ou mais, ela perde o selo. Uma nova versão pode se qualificar de novo.

## Comece rápido

- Coloque as fases seguintes, a música e os extras em `prefetch.optional` e carregue-os depois de `ready()`.
- Compile os shaders e faça o aquecimento antes de chamar `ready()`, para que os primeiros quadros não travem.
- Mostre o jogo imediatamente: sem tela de título, sem menu, sem exigir login antes do primeiro movimento.
- Faça os primeiros segundos se explicarem sozinhos, sem texto.
- Grave um vídeo de jogabilidade na vertical para a listagem; o feed usa esse vídeo.

Veja [carregamento, pausa e áudio](https://www.playdrop.ai/pt-br/create/learn/lifecycle) para o pré-carregamento e [tela cheia e áreas seguras](https://www.playdrop.ai/pt-br/create/learn/viewport) para o layout na vertical.

## Guias relacionados

- [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.
- [Tela cheia e áreas seguras](https://www.playdrop.ai/pt-br/create/learn/viewport): Faça o jogo ocupar a tela toda, com o HUD dentro das áreas seguras do CSS e longe dos controles do host, usando os reservedCorners medidos pelo SDK.
- [Arte e vídeo da listagem](https://www.playdrop.ai/pt-br/create/learn/listing-assets): Imagens e vídeos da listagem no PlayDrop: caminhos, formatos e orientações, e como criar arte que funcione em feeds, na busca e em prévias de links.
- [catalogue.json](https://www.playdrop.ai/pt-br/create/learn/catalogue-json): Os campos do catalogue.json que os jogos do PlayDrop usam: identidade, listagem, modos de jogo, superfícies, login, Instantâneo, pré-carregamento, mídia, traduções, pontuações e servidores.
