Requisitos da GameSnacks

Este documento usa os seguintes termos (seguindo a RFC 2119):

  • precisam e não podem, que são requisitos rígidos que todos os jogos precisam cumprir.
  • devem e não devem: essas são recomendações que não são necessárias, mas podem ser usadas para decidir como classificar ou filtrar os jogos mostrados aos usuários. Por exemplo, se a tela do usuário for em modo paisagem, o GameSnacks poderá optar por recomendar apenas jogos com suporte a essa proporção.
  • pode: são sugestões que não são obrigatórias e não serão usadas para filtrar jogos, exceto quando explicitamente solicitadas pelo usuário. Por exemplo, recursos futuros podem permitir que o usuário confira uma lista de jogos com suporte à entrada do gamepad.

Os seguintes requisitos se aplicam ao jogo e aos recursos dele:

Estrutura do jogo

O jogo é enviado como um pacote de arquivos que inclui o código e os recursos de execução do jogo em si, os recursos de marketing para exibição no catálogo do GameSnacks e um arquivo game.json que armazena metadados que descrevem o jogo e enumera todos os recursos do pacote.

game.json

O arquivo de configuração com os metadados do jogo.

  • Seu jogo precisa incluir um arquivo game.json com todos os campos obrigatórios.
  • Esse arquivo precisa ser colocado no diretório raiz do jogo.

Ponto de entrada HTML

O documento HTML que carrega o jogo.

  • Seu ponto de entrada precisa ser um arquivo HTML válido.
  • Este arquivo precisa incluir no máximo um elemento head e um elemento body.

    • Se ambos os elementos, se presentes, precisam ter uma tag de início e uma de término.
    • O conteúdo fora desses elementos e atributos nesses elementos será ignorado.

      Em vez de definir atributos diretamente no elemento body, você pode usar:

Arquivos

Todos os arquivos individuais do pacote, incluindo o jogo e os recursos de marketing associados, precisam estar em conformidade com o seguinte:

  • Todos os arquivos precisam ter menos de 10 MiB.
  • Os arquivos precisam ser referenciados apenas usando caminhos relativos.
  • Os caminhos precisam usar apenas / como separador de diretório.
  • Os nomes de arquivo precisam usar apenas caracteres não reservados (RFC 3986).
  • Os nomes de arquivo e todos os caminhos precisam estar em minúsculas.

Tamanho do jogo

O tamanho do jogo é o tamanho total de todo o código e recursos transferidos por download para o dispositivo do usuário.

  • O tamanho do jogo não pode ser maior que 100 MiB.
    • Isso inclui todos os arquivos listados em files em game.json e não inclui recursos de marketing.

Requisitos técnicos

Seu jogo precisa estar em conformidade com os requisitos técnicos a seguir.

SDK do GameSnacks

  • Seu jogo precisa estar integrado ao SDK para desenvolvedores do GameSnacks, incluindo todas as interfaces necessárias.
  • Seu jogo não pode carregar APIs de anúncios diretamente (por exemplo, injetar uma tag de anúncios como adsbygoogle.js).
    • A GameSnacks vai carregar todos os serviços de anúncios necessários para você.
    • Veja os requisitos de monetização para mais informações sobre como usar anúncios no seu jogo.

Compatibilidade com navegadores

  • Seu jogo precisa usar a API Canvas ou o WebGL para renderizar.
  • Seu jogo precisa ser executado corretamente nas duas versões principais mais recentes dos seguintes navegadores:
    • Chrome no Android, iOS, Windows e macOS
    • Safari no iOS e macOS
    • Firefox no Android e no Windows
    • Edge no Windows
  • O jogo precisa ser executado corretamente nas visualizações da Web nas versões mais recentes das duas últimas versões principais do Android e do iOS:
    • WebView no Android
    • WKWebView no iOS
  • Seu jogo precisa ser testado na maior variedade possível de outros renderizadores da Web independentes e incorporados.

Recursos mínimos do dispositivo

Seu jogo precisa funcionar bem em dispositivos mais simples. Para orientação, as informações abaixo são indicadores dos recursos mínimos do dispositivo necessários para jogos do GameSnacks.

  • Seu jogo precisa ser executado a 30 QPS ou mais em qualquer dispositivo com as seguintes especificações ou mais:

    • CPU: Qualcomm 215, Samsung Exynos 7570, Mediatek MT6737 ou semelhante
    • RAM: 2 GiB
    • GPU: Arm Mali-T720 MP1, Qualcomm Adreno 308 ou semelhante

    Exemplos de smartphones que correspondem a essa especificação incluem JioPhone Next, Nokia 1.4, LG K22, Samsung J2 Core e Motorola Moto E4

Tamanho inicial do download

O tamanho inicial do download é a quantidade de dados que serão transferidos por download ao cliente para iniciar o jogo.

  • O download inicial precisa ser menor que 15 MiB.
  • O download inicial precisa ter menos de 5 MiB.

Requisitos funcionais

Seu jogo precisa estar em conformidade com os requisitos funcionais a seguir.

Tempo para carregar

O tempo de carregamento é o tempo necessário para executar inicialmente o código e iniciar o jogo.

  • Seu jogo precisa mostrar uma tela de carregamento ou ser interativo em menos de 1 segundo em qualquer conexão de pelo menos 10 Mbps.
  • Seu jogo precisa ser aberto em menos de 15 segundos em qualquer conexão de pelo menos 10 Mbps.

Falhas

  • Seu jogo não pode causar falhas que possam ser reproduzidas de forma consistente.
  • Seu jogo não pode causar falhas reproduzíveis de forma consistente em apps ou sites que o incorporam.

Proporção

O GameSnacks vai criar um frame para o jogo ser renderizado. O tamanho e a proporção desse frame variam de acordo com a plataforma de distribuição, o dispositivo e a presença de anúncios ao redor do jogo. Esse frame pode mudar de tamanho se, por exemplo, um usuário redimensionar a janela do navegador.

  • Seu jogo precisa usar toda a área disponível no frame para conteúdo interativo, sem padding ou preenchimento extra.
  • Seu jogo precisa oferecer suporte a uma proporção de retrato de 9:16.
  • Seu jogo deve oferecer suporte a uma proporção de paisagem de 16:9.
  • Seu jogo precisa oferecer suporte a uma proporção quadrada de 1:1.
  • O ideal é que o jogo seja responsivo e ofereça suporte a uma ampla variedade de proporções quadradas, de retrato e paisagem.
  • Quando o tamanho do frame muda, o jogo precisa ser redimensionado imediatamente para atender a esses requisitos.
    • Seu jogo deve fazer a transição tranquila para o novo tamanho.
  • O jogo não pode bloquear a orientação do navegador.

Interação no jogo

  • Seu jogo precisa ser totalmente jogável usando a entrada por toque.
  • Seu jogo precisa ser totalmente jogável usando a entrada do mouse.
  • Seu jogo deve ser totalmente reproduzível usando a entrada do teclado.
  • Seu jogo pode ser totalmente jogável usando a entrada gamepad.
  • Todos os elementos da IU exibidos no jogo precisam ser implementados e funcionar corretamente.
  • Seu jogo não pode incluir controles desativados. Se um recurso não estiver disponível, ele precisa ser totalmente removido da interface.
    • Isso inclui solicitações de prêmios. Só renderize uma solicitação de recompensa se o callback beforeReward para esse intervalo de anúncio for chamado.
  • Seu jogo não pode exibir solicitações de compartilhamento.
  • Seu jogo não pode exibir links no jogo ou na interface que levem o usuário a jogos, sites ou outros conteúdos externos.
  • Seu jogo precisa se comunicar claramente com o usuário quando ele concluir o último nível ou terminar o jogo.
  • Seu jogo não pode usar palavras como "comprar" ou "comprar" que possam ser confundidas com recursos de compra no aplicativo que não tenham suporte para jogos do GameSnacks.
  • Se o jogo incluir retorno tátil, o usuário precisará poder desativá-lo.

Startup do jogo

Seu jogo precisa se coordenar corretamente com o ambiente de execução do GameSnacks na inicialização. A interface Game do GameSnacks fornece funções para sinalizar o estado de carregamento do jogo, incluindo: firstFrameReady quando tudo estiver pronto para desenhar na tela pela primeira vez e ready quando o usuário puder começar a interagir com o jogo.

  • Seu jogo precisa chamar firstFrameReady quando o primeiro frame estiver pronto para ser renderizado.
  • Seu jogo precisa chamar ready quando estiver pronto para a interação do usuário.
  • Seu jogo não pode chamar ready enquanto ainda houver elementos não interativos sendo exibidos, como telas de apresentação ou de carregamento.

Controles de silenciamento e processamento de som

Seu jogo precisa respeitar os controles de som da plataforma GameSnacks.

  • Seu jogo não pode mostrar um botão de desativar microfone e deve recorrer ao controle de silenciamento da plataforma GameSnacks para isso.
  • Seu jogo precisa ser integrado à interface de áudio e precisa respeitar o método audio.isEnabled.
  • Seu jogo pode ter controles de áudio granulares separados, como para música de fundo ou efeitos sonoros, mas ainda precisa seguir esses requisitos.

Pausar e retomar

Seu jogo precisa ser compatível com a pausa e retomada.

  • Seu jogo precisa se integrar aos métodos da interface do jogo onPause e onResume para pausar e retomar o jogo.
  • Seu jogo não pode usar a API de visibilidade da página da Web ou APIs da Web semelhantes.
  • Seu jogo precisa se comunicar claramente com o usuário se for pausado.
  • Seu jogo precisa salvar o progresso do usuário quando estiver pausado.

Processamento de dados

Use apenas as APIs de armazenamento da GameSnacks para processar dados.

  • Seu jogo precisa usar apenas a interface de armazenamento para salvar dados.
  • Seu jogo não pode usar nenhuma outra forma de armazenamento, incluindo cookies, localStorage, sessionStorage e IndexedDB.
  • Seu jogo não pode coletar dados do usuário.
  • Seu jogo não pode fazer chamadas externas ou solicitações de dados de ou para qualquer servidor usando qualquer protocolo.
  • Seu jogo não pode exibir outros contratos do usuário, políticas de privacidade ou outras coletas de dados ou mensagens regulamentares.

Salvando progresso

salvar o progresso do usuário e poder restaurá-lo quando ele voltar ao jogo;

  • Seu jogo precisa usar a interface de armazenamento para salvar o progresso quando os usuários fizeram progresso significativo, como a conclusão de um nível.
  • O tamanho total do jogo salvo precisa ser menor que 3 MiB e precisa ser menor que 500 KiB.
  • Seu jogo precisa restaurar todo o progresso salvo quando for iniciado.
  • Seu jogo precisa ser capaz de restaurar o progresso salvo das versões anteriores.

Pontuação alta

Armazene a pontuação mais alta do usuário ou monitore o progresso dele usando uma métrica diferente.

  • Se o jogo tiver pontuações, ele precisará acompanhá-las usando a interface de pontuação.
  • Se o jogo não tiver pontuações, você precisará monitorar uma métrica de progresso alternativa, como o número de fases concluídas.

Conteúdo do jogo

Os requisitos a seguir se aplicam ao conteúdo do jogo:

Interface do jogo

  • Seu jogo precisa ser renderizado com clareza em diferentes resoluções de tela. Por exemplo, os elementos da interface não podem estar desfocados, pixelados ou esticados.
  • Seu jogo não pode usar recursos rasterizados de baixa resolução que parecem desfocados quando dimensionados para telas maiores.
  • Seu jogo não pode usar ícones que possam ser confundidos com os da barra de ações do GameSnacks.
  • Seu jogo não pode incluir botões para sair nem para sair. Isso será processado pelo app ou site que incorpora seu jogo.

Localização e acessibilidade

  • Seu jogo precisa oferecer suporte ao idioma inglês.
  • Seu jogo precisa fazer o possível para ser acessível. Recomendamos que você atenda às Diretrizes de Acessibilidade para Conteúdo Web (WCAG, na sigla em inglês), nível AA.
  • O texto do jogo precisa ser legível em vários dispositivos e tamanhos de tela. Consulte as WCAG 2.2 §1.4.3.

Conteúdo feito para crianças

Direitos e liberações

  • Seu jogo precisa ter todos os direitos de propriedade intelectual de terceiros.
  • Seu jogo não pode violar direitos de marca registrada ou a exibição comercial de terceiros.
  • Seu jogo precisa ter todos os direitos de música necessários.
  • Seu jogo precisa ter todos os direitos de personalidade necessários, incluindo o nome e a semelhança.

Onde meus jogos serão exibidos?

Publicamos os jogos da GameSnacks em várias plataformas, tanto em produtos do Google quanto em sites e apps de parceiros da GameSnacks, em dispositivos móveis e computadores. Alguns exemplos de onde publicamos jogos da GameSnacks incluem o app Google Play Games, em dispositivos Android, e o site gamesnacks.com. É daí que vem grande parte do nosso tráfego atualmente. No entanto, os locais onde publicamos jogos estão em constante evolução, e estamos sempre buscando expandir o público para jogos da GameSnacks. Com o tempo, vamos adicionar novas plataformas ou parceiros de distribuição do Google. De vez em quando, também podemos realizar experimentos à medida que trabalhamos com novas plataformas de distribuição.

Monetização

A GameSnacks vai gerar receita com seu jogo e fornecer uma parte dessa receita por contrato de licenciamento de desenvolvedor.

A GameSnacks pode posicionar anúncios automaticamente em eventos naturais do jogo, como anúncios precedentes, eventos de próximo nível e fim de nível. Você também pode inserir outros intervalos de anúncio no jogo (intersticiais e premiados) usando a interface de anúncios do SDK para desenvolvedores da GameSnacks.

Jogos que têm poucas oportunidades de monetização ou que não geram receita podem ser exibidos com menos frequência ou não ser aprovados para distribuição. Uma boa regra é garantir que haja oportunidade para um anúncio pelo menos uma vez por minuto. Isso inclui anúncios premiados e intersticiais veiculados, além dos intervalos de anúncio que o GameSnacks configura automaticamente para você.

No entanto, isso não significa que sempre exibiremos um anúncio. A GameSnacks equilibra cuidadosamente o carregamento de anúncios, o engajamento e a experiência do usuário. Portanto, fique à vontade para criar intervalos de anúncios em qualquer lugar que funcionem bem no seu jogo (ou seja, mais de uma vez por minuto) e deixe que a GameSnacks ajuste a taxa final em que os anúncios são exibidos.

Requisitos de monetização:

  • Seu jogo precisa oferecer uma experiência contínua e ininterrupta da jogabilidade principal, com oportunidades adequadas para exibir anúncios premiados e intersticiais que precisam ser configurados usando a interface do anúncio.

  • Não inclua nenhuma outra forma de promoção ou monetização. Isso inclui anúncios em jogos, pagamentos, patrocínios e inserções de produtos, solicitações de mídias sociais e links que direcionam os usuários a jogos, sites ou outros conteúdos externos.

  • Você precisa garantir que seus jogos ofereçam oportunidades suficientes de mostrar anúncios para que você e os parceiros de distribuição da GameSnacks possam gerar receita sustentável. Seja organicamente devido a eventos normais do jogo (por exemplo, próximo nível) ou explicitamente usando os métodos de interface de anúncios em outros momentos adequados durante o jogo.

  • Ao usar os métodos de interface de anúncios para inserir anúncios no seu jogo, você precisa aderir a todas as políticas comportamentais de anúncios premiados e intersticiais relevantes. Consulte também este conjunto de práticas recomendadas para mais dicas sobre como configurar anúncios em jogos.

  • Se estiver colocando anúncios intersticiais no seu jogo, você precisa garantir que eles aconteçam em pausas naturais do jogo. Os anúncios precisam se adequar ao fluxo do jogo. Não é permitido acionar intersticiais apenas no meio de um período contínuo de jogo.

  • Se a mecânica do jogo for compatível, você deve usar anúncios premiados. Essas oportunidades de recompensa precisam ser opcionais, você precisa descrevê-las claramente e não pode incentivar o usuário a clicar nos anúncios. Consulte as políticas comportamentais para conhecer os requisitos completos.