Setores de sete segundos: como o TUNL marca o ritmo de uma corrida

Uma curva de dificuldade te diz o quão difícil o jogo está em qualquer momento. Ela não te diz como a corrida parece. Esta é a história de substituir um monte de curvas independentes por um plano, e de medir se funcionou.

Devlog · 20 de setembro de 2026 · todos os posts

Pela primeira dezena de versões, a dificuldade do TUNL era um conjunto de curvas separadas. O espaçamento das estalactites tinha uma curva, o espaçamento das minas tinha uma curva, o espaçamento das moedas tinha uma curva, e cada uma era função de quão fundo na caverna você estava. Cada curva fazia sentido sozinha. Juntas, produziam uma corrida que parecia irregular, e quando finalmente medi isso, os números diziam a mesma coisa que a sensação.

O que a auditoria encontrou

Reproduzi os geradores reais e a física real com bots em quatro níveis de habilidade, cem corridas cada, em 24 sementes diárias diferentes. Depois observei quando coisas novas aconteciam e onde os bots morriam. Quatro problemas se destacaram:

A ideia: uma corrida é uma sequência de setores

Em vez de curvas separadas, escrevi um plano. Uma corrida é uma sequência de setores, cada um com sete segundos de duração numa velocidade de referência fixa. O setor 0 é o voo de abertura seguro. Cada setor depois disso introduz exatamente uma coisa nova ou intensifica algo que você já conhece. Um aviso "SETOR n" aparece em cada limite a partir do terceiro, para que o jogador sinta a estrutura.

O comprimento é medido deliberadamente em segundos, não em pixels. A caverna continua acelerando, então um número fixo de pixels do mundo representa cada vez menos tempo conforme a corrida avança. Um setor definido em pixels ficaria cada vez mais curto. Definido em segundos de referência, e reconvertido em posição no mundo integrando a tendência da velocidade de referência, um limite de setor continua sendo uma função pura da posição. Isso importa porque o jogo inteiro precisa permanecer idêntico para cada jogador: escrevi sobre o porquê no post sobre a caverna diária.

SetorPontuaçãoO que há de novo
00 - 50Corredor aberto. Moedas de ouro e ampulheta.
150 - 110Primeiras estalactites, moeda de escudo
2110 - 180Munição, ímã
3180 - 250Primeira mina (sozinha, centrada), moeda de bomba
4250 - 330Rochas
5330 - 410Chicanas, surgindo gradualmente
6410 - 490Canhões
7490 - 580Estalactites caindo
8580 - 680Moeda de veneno
9680 - 770Moeda de dreno
10+770 em dianteNada de novo. As taxas continuam crescendo.

Duas regras decidem a ordem. Ferramentas vêm antes da ameaça a que respondem. A moeda de escudo aparece um setor antes da primeira mina, para que o jogador tenha uma para gastar. E as ferramentas não podem chegar tarde demais, porque as missões diárias ("colete cinco munições", "pegue dois ímãs", "use três bombas") são cumulativas para o dia e precisam continuar acessíveis para jogadores casuais, cujas corridas terminam por volta do segundo ou terceiro setor. Antes de mover qualquer portão de moeda, verifiquei a lista de missões.

Densidades são taxas, não espaçamentos

Dentro de um setor, a densidade de um perigo é uma taxa por segundo de referência: slots de estalactites a dois por segundo no setor 1, crescendo 14% por setor, e suavizando para 8% por setor a partir do setor 8. Minas começam em 0,28 por segundo no setor 3, crescendo 20% por setor e depois 10%. O espaçamento em pixels é derivado da taxa e mantém um piso rígido, então as taxas podem crescer sem limite e toda corrida ainda assim termina. A mina é o que garante isso, porque uma mina pode ficar em qualquer lugar do corredor, então nenhuma largura de corredor torna sobrevivível uma caverna rápida o suficiente.

Cada setor também é um dente de serra. Seu primeiro quinto roda a 55% da densidade alvo, com candidatas a moedas extras como recompensa, e depois sobe de 80% para 115% rumo ao próximo limite. Assim o jogador ganha um respiro no início de cada setor, depois pressão crescente, depois uma ideia nova. Uma subida constante é exaustiva. Uma subida com pausas é algo que as pessoas chamam de justo.

Ajuste pela taxa medida, nunca pelo número de espaçamento. Regras de posicionamento vetam objetos que cairiam em algum lugar injusto, e a fração que vetam muda com a densidade. Reduzir pela metade um valor de espaçamento não dobra os perigos, e esse acoplamento é exatamente como a contagem de minas triplicou da primeira vez. Então toda passagem de ajuste termina com uma repetição que conta os objetos realmente posicionados por segundo real.

Arranhões no casco: perdoando a parede, não o espinho

A segunda grande mudança foi para os iniciantes que morriam na primeira parede. Uma nave agora tem dois arranhões no casco. Um contato com parede consome um, faz a nave quicar de volta para dentro e diz "ARRANHÃO!". Sem nenhum restante, o próximo contato termina a corrida.

Eles começaram como uma ajuda temporária que expirava no setor 3. Assim que toda corrida passou a começar voando para a boca do túnel com paredes letais desde o início, fazia sentido que durassem a corrida toda, e agora duram. O período de graça após um arranhão protege só contra a parede. Estalactites, minas, rochas e tiros continuam letais, e a nave não pisca. Se a graça cobrisse tudo, um bom jogador poderia raspar numa parede de propósito para voar por um campo de estalactites, então a regra é que arranhões perdoam erros de parede e acertos diretos são trabalho do escudo.

Também testei a alternativa óbvia, um escudo grátis no mesmo momento. Ajudou principalmente o nível forte, que o usava para sobreviver a uma estalactite depois, e elevou sua corrida mediana em cerca de 72%. Recompensava uma habilidade que não precisava da ajuda, e eu descartei.

Funcionou?

Os mesmos bots, nas mesmas sementes, antes e depois. "Médio" é o nível cujo comportamento mais se aproximava de jogadores reais na versão anterior.

Nível do botPontuação medianaAlcança 100Morre a até 8 pontos do momento em que as paredes se tornam letais
Iniciante65 → 954% → 39%41% → 3%
Médio107 → 15532% → 70%16% → 2%
Bom205 → 40180% → 91%1% → 1%
Especialista715 → 928100%0%

A taxa de morte por setor do nível médio se tornou uma rampa (38%, depois 60%, depois 68% nos primeiros três setores de perigo) em vez de um precipício. Essa é a forma que eu queria: uma corrida deveria terminar de forma gradualmente mais provável, não subitamente certa.

O que não corrigiu

Especialistas ainda esbarram numa parede de tempo de reação por volta dos setores 10 e 11, onde 63% e depois 77% das corridas de especialistas terminam. Antes do plano era 100% nos setores 7 e 8, então essa é uma melhoria real, mas não é a rampa suave que os setores anteriores têm. Testei duas correções óbvias: um crescimento mais lento do comprimento das estalactites e uma rampa mais lenta da probabilidade de chicanas. Ambas se mediram como sem efeito. A alavanca que resta é a própria velocidade, e a deixei intocada, porque a velocidade nunca estaciona de propósito, e uma caverna que para de acelerar é uma caverna que parou de pedir algo novo de um jogador muito bom.

O que eu manteria

Dois hábitos. Primeiro, planeje a sequência do que um jogador encontra, não só o quão difícil cada coisa é: uma ideia nova de cada vez se lê como um jogo que te ensina, enquanto cinco de uma vez se lê como um jogo que te sobrecarrega. Segundo, nunca confie numa mudança de dificuldade até que uma simulação te diga onde cada tipo de jogador morre. As duas maiores surpresas aqui, a contagem de minas e as mortes na primeira parede, eram invisíveis jogando e óbvias numa tabela.

Você pode ler a versão voltada ao jogador do mesmo plano no guia de como jogar.

Jogue a caverna de hoje