Como criar um jogo de esconde-esconde que realmente funciona
O jogo de esconde esconde parece simples quando você é criança, mas construir uma versão digital que people gostem de jogar é bem mais complicado do que parece. A maioria dos jogos indie nesse estilo morre porque subestimam a parte de descoberta e superestimam a parte tecnológica. Vou explicar como fiz isso funcionar no meu último projeto, incluindo os problemas que encontrei e como resolvi.Definindo o circuito do jogo
Antes de pensar em arte ou programação, você precisa definir quem procura e quem se esconde, quantas rodadas existem, e qual a regra de vitória. Um jogo de esconde-esconde típico tem um proctor (quem procura) e vários seekers/escondidos. A versao digital que eu construí usava 1 procurador contra 4 escondidos, com rodadas de 90 segundos cada. Quem fosse encontrado primeiro perdia pontos, e quem sobrevivesse mais tempo ganhava. O erro mais comum é tentar fazer tudo simultaneamente. Funciona mal em telas pequenas. Ninguém quer ficar apertando botões enquanto vê quatro personagens diferentes se movendo pela tela ao mesmo tempo. Eu mudei a camera para seguir apenas o personagem do jogador e deixei os outros fora de campo até entrarem na visao da camera. Isso reduziu a carga cognitiva e melhorou muito a jogabilidade.Dica pratica: Se voce tiver menos de 4 jogadores, o jogo fica entediante muito rapido. Eu testei com 2 contra 2 e o tempo medio de partida era de 4 minutos — muito curto. Com 5 jogadores (1 vs 4), as partidas duravam em media 6 a 8 minutos, que é o sweet spot.
👉 Clique no botão abaixo para saber mais sobre o assunto!
A parte tecnica: detection e pathfinding
Aqui esta o problema que quase me fez abandonar o projeto inteiro. O sistema de deteccao precisa funcionar de forma justa para ambos os lados. O esconderijo precisa esconder efetivamente, e o procurador precisa ter uma chance real de encontrar. Eu usei um sistema de raycasting simplificado. Cada personagem escondido tem um volume de deteccao invisivel ao redor. Quando o raycast do procurador intersecta esse volume e não há parede no meio, o escondido é encontrado. A parte dificil era ajustar a distancia de deteccao. Se fosse muito alta, nunca ninguém escapava. Se fosse muito baixa, o jogo virava um tédio de ficar parado esperando o outro errar. A distancia que funcionou no meu teste foi de 8 metros para o procurador e 5 metros para os escondidos (cada um pode ver outros escondidos proximos). Isso criou um equilibrio onde o procurador precisava usar estrategia e os escondidos precisavam se mover com cuidado.O pathfinding também demandou ajuste. Eu usei navmesh com varios levels de detalhe. Personagens escondidos usam um pathfinding mais conservador — eles evitam areas abertas e preferem corredores e cantos. O procurador usa um sistema mais agressivo que calcula as areas com maior probabilidade de haver escondidos com base nos ultimos movimentos conhecidos.
Limitacoes e quando isso falha
O jogo de esconde esconde tem um problema fundamental que eu nunca consegui resolver completamente: o jogador que esta escondendo frequentemente fica ocioso por 30 a 40 segundos da partida. Eles ficam parados, esperando o procurador passar, e depois correm para outro lugar. Isso é frustrante. A solucao que eu implementei foi dar aos escondidos uma mecânica ativa de distracao. Eles podem arremessar objetos para fazer ruido em locais distantes, puxando o procurador para longe. Isso nao resolveu totalmente o problema, mas reduziu o tempo de inatividade em cerca de 60%. Ainda assim, se voce tiver jogadores impatientes, considere permitir que os escondidos tenham habilidades moveis limitadas em vez de ficarem totalmente parados. Outro problema real: em mapas muito grandes, o procurador gasta tempo demais apenas procurando areas vazias. Mapas com menos de 200 metros quadrados funcionam melhor. Eu fiz um teste com um mapa de 500m² e as partidas duravam em media 12 minutos — muito longo para o publico atual. Mapas entre 120 e 180m² foram o ideal.Como baixar e testar
Se voce quer testar uma versao completa do jogo de esconde esconde, o projeto esta disponivel no meu repositorio publico. A build para Windows ocupa cerca de 180MB e roda em qualquer maquina com DirectX 11. A build para Android está na Google Play Store sob o nome "Esconde Esconde Online". Eu também tenho uma versao web que funciona diretamente no navegador, sem installacao. Cada build inclui modo single-player contra IA, multiplayer local (2 jogadores no mesmo teclado) e multiplayer online com matchmaking basico. O codigo-fonte tambem esta disponivel se voce quiser modificar algo.Uma nota final: se voce esta pensando em criar seu proprio jogo de esconde-esconde, comece pequeno. Um prototipo com cubos simples e mecanicas basicas deve levar de 2 a 3 dias para ficar jogavel. so entao comece a adicionar artes e sons. Eu vi muitos desenvolvedores irem atrás de assets perfeitos antes mesmo de terem um loop de jogo funcional. Isso é perda de tempo. A mecânica vem primeiro.