Após a publicação do seu jogo, é importante monitorar métricas-chave com os Insights sobre jogos. Acompanhar de perto as métricas permite que você avalie o design de recursos, receba informações sobre o público e valide as atualizações que mantêm seu jogo no caminho certo.
Os Insights sobre jogos registram automaticamente muitos eventos e informações demográficas. É possível receber informações agregadas e anônimas sobre seu público, como faixa etária, país e idiomas falados. Você também pode ver informações sobre engajamento, como retenção e usuários ativos diários.
Devido a uma funcionalidade da seção Hospedagem na web, é possível distribuir o pacote de jogo a um subgrupo do seu público, bem como acompanhar de perto as alterações nos dados para validar se as atualizações do jogo estão melhorando suas métricas.
O carregamento inicial não deve levar mais do que cinco segundos (6 MB): os Jogos Instantâneos precisam ser "instantâneos", já que os jogadores tendem a abandonar o jogo se o carregamento inicial for muito demorado. Carregue apenas até 6 MB de conteúdo para iniciar o jogo. O tamanho máximo total do seu pacote é de 200 MB. No entanto, carregaremos apenas os arquivos explicitamente exigidos pelo index.html
durante o carregamento inicial. Por isso, procure usar esse tempo para carregar somente os ativos essenciais para a primeira sessão e adie o carregamento de outros ativos para quando eles forem necessários.
Relate o progresso do carregamento inicial: durante essa etapa, você precisa nos informar sobre o progresso do carregamento usando setProgress
.
Evite telas de carregamento secundária: quando o indicador nativo de carregamento mostrar 100%, não deixe o jogador esperando ainda mais. Ele deve poder jogar imediatamente.
Otimize para desktop: obtenha uma orientação diferente para navegadores desktop usando override_web_orientation
na configuração de pacote. Isso permitirá a você fazer bom uso de todos os recursos da web.
Otimize para dispositivos móveis: apesar dos Jogos Instantâneos funcionarem em navegadores desktop, recomendamos otimizar a renderização e a taxa de proporção para dispositivos iOS e Android populares.
Carregue recursos em paralelo com initializeAsync
: você não precisa esperar a promessa initializeAsync
ser resolvida antes de baixar seus recursos. É possível baixar em paralelo.
Considere fazer a minificação ou a uglificação: é possível reduzir de forma significativa o tamanho de download e os requisitos de memória para os ativos de código. Além disso, a ofuscação aplicada no processo previne atividades de roubo ou trapaça no código do jogo.
Permita que os jogadores experientes retornem ao tutorial se quiserem. Pode ser que eles não joguem há um tempo ou que queriam mostrar o tutorial a um amigo. Não force a visualização do tutorial em cada sessão e permita que os jogadores mais experientes passem direto para o jogo.
Considere as configurações de grupo para os novos jogadores que entrarem mais tarde. É preciso garantir que esses jogadores conseguirão ver o tutorial em sua primeira vez no jogo.
Se possível, use tutoriais interativos em vez de texto. O ideal é que os usuários não percebam que estão seguindo um tutorial.
O tutorial deve estar acessível para jogadores novos e experientes. No entanto, ele precisa ser fácil de pular.
Considere solicitar aos usuários que adicionem um atalho para seus jogos. Essa estratégia pode aumentar a retenção de longo prazo ao criar um ponto de entrada adicional persistente. Use a API de Atalho na tela inicial para exibir um diálogo no jogo para os jogadores salvarem o jogo na tela inicial em dispositivos Android. Você pode incentivar essa ação. Use o método canCreateShortcutAsync
para determinar se a sessão de jogo atual é compatível com a criação de um atalho.
Localize seu jogo: os jogadores tendem a interagir mais com o jogo em um idioma que seja natural para eles. A tabela a seguir ajudará a decidir para quais idiomas traduzir o conteúdo do seu jogo:
Classificação | Idiomas | Prioridade |
---|---|---|
Dez idiomas principais | EN (inglês), ES (espanhol), PT (português), FR (francês), AR (árabe), ID (indonésio), VI (vietnamita), TH (tailandês), PL (polonês), DE (alemão) | Obrigatório |
Próximos dez idiomas principais | IT (italiano), ZH (chinês), RU (russo), TR (turco), MY (birmanês), MS (malaio), RO (romeno), NL (holandês), SV (sueco) | Opcional |