Jogo Do Dinossauro Robo
Como funciona o jogo do dinossauro do Chrome
O jogo do dinossauro robo é aquele pequeno jogo offline que aparece no Chrome quando a internet cai. Ele usa o Canvas da API do navegador para renderizar um quadrado preto sobre fundo branco, e controla o dinossauro através de um loop de animação simples chamado requestAnimationFrame. Quando você aperta a barra de espaço, o navegador executa uma função JavaScript que altera a propriedade y do sprite do dinossauro para simular o pulo. A colisão é calculada checando se as retângulos delimitadores do Dino e dos obstáculos se sobrepõem. Se sim, o jogo termina. Nada mais, nada menos.
Vantagens do jogo do dinossauro robo
O jogo funciona 100% offline, então não precisa de servidor ou conexão. Apontamento feito pela equipe do Chrome em 2014, quando Lars Knoll estava testando um novo build. O código original foi escrito por Svyatoslav Zakharov. É essencialmente um prototype que eles decidiram manter como Easter egg. A parte interessante é que a velocidade aumenta gradualmente. Cada 100 pontos, o jogo acelera em cerca de 0,5%. Isso significa que nos primeiros minutos a dificuldade é baixa, mas depois de 2.000 pontos você começa a sentir pressão real.
Problema que eu enfrentei pessoalmente
Eu notei que em telas com resolução alta (como monitores 4K), o jogo às vezes desenha os obstáculos fora da posição correta. O sprite do cacto aparecia alguns pixels acima do chão, causando falsos positive no cálculo de colisão. A solução que eu encontrei foi adicionar um pequeno offset de compensação: ao invés de ler diretamente a posição Y do cacto, eu subtraía 3 pixels dela antes de comparar com a posição Y do Dino. Outro detalhe técnico importante é que o jogo detecta pulo duplo quando você aperta espaço duas vezes rapidamente. A cada 300ms após um pulo, a variável isJumping volta para false, permitindo outro pulo. Se você estiver tocando em um teclado que envia repetição rápida de teclas (como alguns teclados mecânicos antigos), o jogo pode interpretar isso como dois pulos consecutivos em vez de um único pulo longo.

Desvantagens e limitações
O jogo é basicamente infinito, mas tem um bug conhecido de memory leak. Depois de cerca de 10.000 pontos, o navegador começa a consumir mais memória porque os objetos de colisão não são coletados corretamente pelo garbage collector. Eu já vi processadores de celular esquentarem depois de uma sessão longa jogando isso. Também existe um limite máximo de velocidade. Depois de 999.999 pontos, o jogo trav porque o counter é um inteiro de 32 bits sem sinal. Quando ele estoura, o jogo simplesmente para de funcionar até você atualizar a página.
Como jogar corretamente
Use a barra de espaço para pular. Teclas alternativas: seta para cima ou simplesmente tocar na tela se estiver no mobile. O jogo reconhece tanto touch events quanto keydown events nativamente. Dica prática: não tente pular cada cacto individualmente. O padrão é sempre o mesmo: espere o cacto chegar a cerca de 1/4 da tela, pulse, e pronto. Tentar prever cada movimento aumenta o tempo de reação e causa erros desnecessários. Deixe o instinto assumir depois de uns 500 pontos. Para melhorar seus recordes, pratique a técnica do "timing de pulo". A maioria dos jogadores casuais espera demais para pular, o que resulta em batidas com os cactos mais altos. O segredo é pular um pouco antes do obstáculo, não depois. Eu levei cerca de 2 semanas praticando isso até conseguir consistentemente ultrapassar os 3.000 pontos.
Onde encontrar o código fonte
O código completo está disponível no repositório oficial do Chromium. Você pode clonar e rodar localmente usando um servidor HTTP simples (python3 -m http.server é suficiente). Não precisa de compilação especial ou bundler — é apenas HTML, CSS e JavaScript vanilla. Se quiser modificar algo, comece pelas cores no arquivo main.js. A paleta original é #535353 para o Dino e #757575 para os obstáculos. Alterar essas constantes é uma das mudanças mais fáceis e imediatas que você pode fazer.

Galeria
-
Dinossauro robô Triceratops e Carnotaurus (Dino Robot) Jogo de Android ... -
2 Dinossauros Robô - Dinossauro Rex + Estegossauro - Jogo de Dinossauro ... -
Jogo de Dinossauro (Robô Dinossauro) Jogos Online Dinossauro Rex - YouTube