Como fazer um jogo de plataforma com IA no navegador
Como fazer um jogo de plataforma com IA no navegador
Descreva o personagem, como ele anda e pula, como as plataformas se comportam, o que mata e onde a fase recomeça. O Zugo gera o jogo em 2D para navegador, testa o projeto num ambiente isolado antes de entregar e publica em seu-slug.zugo.run. A construção custa 6 créditos e cada edição, 3.
Neste gênero tudo se decide no pulo. Uma fase mal desenhada ainda dá para jogar, mas um pulo com peso errado destrói o jogo inteiro, por mais bonito que esteja o cenário.
O que faz um jogo de plataforma parecer bom?
A sensação de controle. O jogador precisa acreditar que todo erro foi dele, e essa crença vem de um punhado de comportamentos que ninguém percebe conscientemente quando estão presentes.
Pulo que sobe rápido e cai um pouco mais rápido ainda. Altura que responde ao tempo em que o botão fica pressionado. Uma pequena tolerância quando a pessoa aperta pular um instante depois de já ter saído da beirada. Outra tolerância quando ela aperta um instante antes de tocar o chão.
Nenhum desses itens aparece num prompt escrito às pressas, e todos aparecem se você pedir. É por isso que vale gastar cinco minutos escrevendo o pulo em vez de escrever o enredo.
O resto (inimigos, moedas, cenário) é conteúdo que se acrescenta depois, uma edição por vez, sem risco de estragar o que já funciona.
O que sai da primeira construção?
Um personagem que anda para os lados com as setas, pula, cai com gravidade, para em cima das plataformas e morre ao encostar num obstáculo ou ao cair da tela. Uma fase com começo e fim, e uma tela de fim de jogo.
O que costuma faltar é a câmera. Sem pedido explícito, a fase inteira cabe na tela e o jogo vira um quadro único. Uma câmera que segue o personagem com leve atraso e mostra mais do lado para onde ele anda muda a experiência mais do que qualquer arte nova.
Falta também o reinício imediato. O padrão do gênero é morrer e voltar em menos de um segundo, sem tela intermediária. Se cada morte pedir dois cliques, ninguém tenta a fase difícil dez vezes.
E falta o controle de toque, que discutimos adiante e é o que decide se o link funciona quando você manda para alguém no WhatsApp.
Como descrever o pulo sem falar de código?
Descrevendo o efeito com números do mundo do jogo. Você não precisa citar aceleração nem constante nenhuma, precisa dizer o que o olho vê.
| Comportamento | Como pedir no prompt |
|---|---|
| Altura do pulo | "o personagem pula um pouco mais alto do que a própria altura, cerca de duas vezes" |
| Peso da queda | "a queda é mais rápida do que a subida, o pulo tem cara de peso" |
| Pulo variável | "segurar o botão sobe mais, tocar de leve dá um pulinho curto" |
| Perdão na beirada | "ainda dá para pular por um instante depois de sair da plataforma" |
| Pulo antecipado | "se apertar pouco antes de encostar no chão, o pulo acontece ao tocar" |
| Ar controlável | "dá para corrigir a direção no meio do salto, mas com menos força do que no chão" |
As duas linhas de perdão são as que mais mudam a percepção de qualidade. Elas existem em praticamente todo jogo de plataforma comercial e são invisíveis: o jogador só nota a ausência, nunca a presença.
A linha do pulo variável é a que dá profundidade ao controle. Com ela, a mesma fase aceita jogadores de níveis diferentes sem mudar nada no cenário.
Por que o personagem gruda na parede ou atravessa o chão?
São os dois bugs clássicos de colisão e ambos têm causa conhecida. Grudar na parede acontece quando a caixa de colisão do personagem tem atrito lateral: encostado na parede e segurando a direção, ele fica pendurado no ar.
O pedido que resolve é direto: "o personagem não deve grudar nem escorregar devagar pelas paredes, ao encostar de lado ele simplesmente para de avançar e continua caindo normalmente".
Atravessar o chão acontece em queda rápida, quando entre um quadro e o outro o personagem já passou para o lado de baixo da plataforma. A correção se pede como comportamento: "por mais rápida que seja a queda, o personagem nunca atravessa uma plataforma".
Um terceiro caso vale citar: bater a cabeça no canto de uma plataforma e perder o pulo inteiro. Pedir que o personagem escorregue para o lado quando bate quase na quina é o tipo de detalhe que separa um jogo agradável de um jogo irritante.
Como o jogo funciona no celular?
Só se você pedir. Um jogo gerado sem menção a toque vem com teclado, e no telefone ele simplesmente não responde, o que é frustrante porque a página abre normalmente e parece que travou.
Peça botões na tela: uma área à esquerda para andar e um botão grande à direita para pular. O botão de pulo precisa ser generoso, porque dedo não tem a precisão de uma tecla.
Peça também que os botões fiquem sobre o jogo, semitransparentes, e que sumam quando um teclado for detectado. Assim o mesmo link serve para o computador e para o celular sem duas versões.
E teste na horizontal. Jogo de plataforma na vertical mostra pouquíssimo do caminho à frente, e o jogador morre por não enxergar. Um aviso pedindo para virar o aparelho resolve com uma edição.
Como montar fases e checkpoints?
Peça as fases como uma lista de configuração, não como código separado para cada uma. Assim acrescentar a fase seguinte é editar uma lista, e não mexer na lógica que já está funcionando.
O checkpoint é a decisão de ritmo mais importante depois do pulo. Fase longa sem ponto de retorno gera abandono; ponto a cada dez segundos tira o peso do erro. O equilíbrio comum é um checkpoint antes de cada trecho realmente difícil.
Vale também guardar o progresso no navegador, para que fechar a aba não apague tudo. É uma edição simples e evita a pergunta mais comum de quem testa o jogo pela primeira vez.
Se a sua ideia envolve alavancas, blocos que se empurram e portas que abrem numa ordem certa, o gênero muda de nome e as regras também: veja como fazer um puzzle platformer com IA.
Quanto custa em créditos um jogo de plataforma jogável?
| Ação | Créditos |
|---|---|
| Construir o jogo | 6 |
| Uma edição | 3 |
| Construção no modo Hi-Fi | 12 |
| Edição no modo Hi-Fi | 6 |
A conta realista é uma construção mais cinco a sete edições: ajuste de pulo, câmera, colisão de parede, controle de toque, checkpoints e as fases. Bem escrito, o primeiro prompt já elimina duas dessas edições.
O Pro custa $25 por mês com 200 créditos, cerca de 33 construções ou 66 edições. O Business custa $99 por mês com 800 créditos. O Free tem 5 créditos, o que não fecha nem uma construção.
Vale lembrar que reescrever o prompt e construir de novo custa 6, enquanto uma edição custa 3. Quando o problema é a base do jogo, e não um detalhe, reconstruir sai mais barato do que corrigir em cinco pedidos.
O que esse formato não entrega?
Jogos 2D no navegador. Isso cobre bem o gênero clássico de correr e pular, e não cobre um jogo em três dimensões nem uma publicação nas lojas de aplicativo com compra dentro do app.
Fase com dezenas de inimigos com comportamento próprio, chefe com fases de ataque e sistema de habilidades que se desbloqueiam é um projeto grande, e cada peça dele é mais uma edição. Dá para chegar lá, mas não em uma tarde, e num produto complexo o Zugo não substitui um time de desenvolvimento.
Arte também não é o forte de um prompt. Formas geométricas e cores saem bem; personagem animado com sprites próprios é trabalho seu. A boa notícia é que o código é seu e pode sair para o GitHub quando quiser continuar por fora, como está explicado em dá para exportar o código?. Os limites gerais do que sai de um prompt estão em a IA consegue fazer um jogo?.
O que escrever no primeiro prompt?
Seis frases: como o personagem anda, como ele pula (com as duas tolerâncias), o que acontece ao encostar na parede, o que mata, onde a fase recomeça e como a câmera segue. Uma fase curta, sem menu e sem inimigo.
Jogue por cinco minutos antes de pedir qualquer coisa nova. Se o pulo já estiver gostoso, o jogo está feito e o resto é conteúdo. Se não estiver, nenhuma fase nova vai salvar. Monte o seu em Zugo.