Jogador deixa DOOM rodando por 2 anos e meio só para provar um bug
Por Gabriel Cavalheiro • Editado por Jones Oliveira |

Você sabia que é possível travar um jogo simplesmente por deixá-lo rodando tempo demais? Embora pareça loucura, não é tão fácil causar um overflow (estouro do limite de dados em um software): o título teria que ficar ativo por anos para simplesmente quebrar. Da série "se tem placa, tem história", um usuário revelou que conseguiu travar DOOM após deixá-lo rodando por dois anos e meio.
O feito foi registrado por "minki", que contou mais sobre a façanha no fórum "len0w0". O usuário descobriu que, a cada demonstração do clássico DOOM (quando o jogo começa a "se jogar sozinho" após ficar muito tempo na tela de título), um contador interno começava a subir.
Para quem já viu uma dessas demos, sabe que ela recomeça depois de um tempo. O problema de DOOM é que, a cada vez que a demonstração rodava na tela inicial, uma variável subia, ou seja, o contador não zerava, levando ao acúmulo de dados "gotinha por gotinha".
Confira um exemplo de uma dessas demonstrações no DOOM original:
"Eu havia lido um artigo sobre como a engine de DOOM funciona e notei como uma variável, usada para acompanhar a demo, continuava sendo incrementada mesmo após o início da próxima. Essa variável era comparada com uma segunda, que armazenava seu valor anterior", afirmou minki em uma publicação no fórum.
Esse tipo de vulnerabilidade fazia com que a variável se aproximasse lentamente de um overflow. Obviamente, ninguém jogaria um game por anos ininterruptamente para descobrir tal brecha — o que não seria um cenário realista —, mas o usuário "queria saber se isso realmente aconteceria no jogo de verdade, em hardware de verdade".
Para fazer o experimento, minki instalou DOOM em um PDA (Assistente Pessoal Digital, aparelho popular antes dos smartphones) alimentado por um no-break caseiro com baterias 18650, que, por sua vez, estavam conectadas à porta USB de seu roteador para um fornecimento constante de 5V.
"Deixei o sistema rodando e praticamente me esqueci dele", afirmou o usuário. Dois anos e meio depois, ele concluiu: "Até hoje, quando notei um pop-up aparecendo no dispositivo, um pouco antes de postar isto no fórum. O jogo tinha travado, apenas algumas horas depois da marca de dois anos e meio, provando que a variável de fato estourou e causou o esperado travamento completo (hard crash) do jogo".
DOOM roda em tudo?
Apesar de o experimento ser bem curioso, um fator que torna o caso ainda mais inusitado é o fato de DOOM conseguir rodar até em aparelhos e dispositivos que, definitivamente, não deveriam suportar o jogo.
Não é de hoje que o FPS da id Software é conhecido por rodar em absolutamente tudo que tenha qualquer componente eletrônico, por menor que seja, incluindo calculadoras e testes de gravidez.
Leia tabém no Canaltech:
- DOOM é adaptado para rodar em aparelhos de teste de gravidez
- DOOM The Dark Ages no PC: veja requisitos para jogar
- Análise | Doom Eternal é o jogo perfeito para quem cansou de “games cabeça”
Vídeo: O que é a Stop Killing Games, campanha que quer salvar os jogos?
Fonte: minki