A opção delay-chunk-unloads-by na configuração de mundo do Paper mantém chunks por um intervalo depois que deixariam de ser necessários para os jogadores. A documentação descreve o valor como duração, com uma unidade única como segundos ou minutos. Esse atraso pode reduzir ciclos repetidos de carregar e descarregar quando alguém atravessa uma fronteira e volta logo em seguida; também mantém trabalho e dados residentes por mais tempo.

O ajuste não gera chunks à frente, não reduz automaticamente MSPT e não transforma uma área em chunk loader permanente. Ele muda o tempo de retenção de chunks no mapa do mundo. Antes de alterar, entenda quem mantém chunks carregados na instalação e meça se o problema observado realmente é churn de carregamento.

O que significa adiar o unload

Quando um jogador se afasta, alguns chunks podem se tornar candidatos a descarregamento. Um atraso permite reutilizá-los se o acesso ocorrer novamente pouco depois. Isso pode ajudar em rotas repetidas, teletransportes curtos ou movimento perto de uma borda entre áreas; o benefício depende da atividade e do padrão de acesso.

Durante o período, o chunk continua ocupando recursos até descarregar. A quantidade de memória, entidades e trabalho mantidos depende do conteúdo e de outros controles. Com muitos jogadores espalhados, atrasar todos os unloads pode aumentar a quantidade de mundo residente. Se o servidor sofre pressão de memória ou mantém enorme quantidade de chunks ativos, um intervalo alto pode piorar a situação.

Esse tempo não deve ser interpretado como promessa de que todas as mecânicas continuam funcionando da mesma forma. Carga de chunk, ticking e simulação têm conceitos distintos. Consulte a documentação de Paper para os mecanismos envolvidos na versão instalada e teste o tipo de mundo que seu servidor usa.

Confirme que o problema é chunk churn

Registre os sintomas: atrasos ao mover perto de áreas já visitadas, picos na carga de chunks, fila de geração, pausas de disco ou MSPT elevado. Use profiling e logs conforme a documentação. Se os picos vêm de geração de terreno novo, atrasar unload de chunks antigos pode não resolver. Se o gargalo é leitura aleatória de disco, pode ajudar em certos percursos, mas a comparação precisa demonstrar isso.

Reproduza um caminho conhecido: caminhe entre regiões, teletransporte para pontos alternados ou faça uma rota comum dos jogadores. Observe número de chunks carregados, uso de memória, CPU, espera de IO e experiência percebida. Execute a rota em staging com dados equivalentes antes de experimentar em produção.

Compare com períodos semelhantes de jogadores e exploração. Uma mudança de horário, população ou comportamento de jogo pode explicar a diferença. Não conclua que o atraso ajudou só porque uma medição isolada melhorou alguns minutos depois da alteração.

Escolha duração e escopo com cuidado

Comece com um intervalo pequeno, válido e documentado pela versão do Paper. A sintaxe usa unidade de duração; a referência oferece exemplos e regras aceitas. Não cole valores gigantes de guias antigos ou de outro fork. Se o YAML tiver valor padrão especial, não presuma que um texto livre será interpretado da mesma maneira que uma duração explícita.

Confira se a opção está nos padrões globais de mundo e se mundos específicos têm overrides. Um lobby, um survival e um mundo de eventos podem ter padrões de acesso muito diferentes. Não aumente o valor em todos os mundos se apenas um percurso mostrou churn; use escopo mais estreito quando a configuração suportar isso.

Procure também plugins de chunk loading, portais, mapas e fazendas que mantenham áreas ativas. Se eles são a causa, o atraso extra pode acumular-se ao comportamento que já existe. Faça inventário de chunk loaders e documente limites antes de ajustar a retenção.

Planeje o teste de forma reversível

Desligue o servidor normalmente, salve cópia da configuração atual e anote o valor por mundo. Faça a mudança de uma única opção e reinicie conforme exigido. Mantenha backup do mundo, principalmente se também atualizar versão ou plugins. Não altere várias configurações de chunk loading na mesma janela.

Em staging, execute a rota repetível e monitore memória, MSPT, taxa de carregamento, disco e quantidade de chunks residentes. Observe depois que o tráfego termina: o comportamento de descarregamento deve continuar coerente e não deixar consumo elevado indefinidamente. Reinicie a cópia e confira novamente dados e logs.

Se o resultado piorar, restaure o valor anterior e repita o cenário. Se melhora em um percurso mas piora a memória com jogadores dispersos, ajuste o plano ou remova a mudança. O critério de sucesso deve combinar carga aceitável e experiência, não apenas um número isolado.

Entenda efeitos em memória, entidades e plugins

Mais chunks retidos podem manter estruturas, entidades e dados disponíveis por mais tempo. Isso pode reduzir recargas, mas também amplificar o custo por jogador em redes extensas. Mobs ou blocos que parecem “continuar ativos” precisam ser testados conforme as regras de ticking; retenção na memória não significa necessariamente que todas as atualizações de jogo estão habilitadas.

Plugins podem ouvir eventos de carga e descarga e reagir com leituras de arquivo, caches ou persistência própria. Atrasar unload muda o momento desses eventos e pode revelar defeitos ou efeitos colaterais em extensões. Teste plugins centrais e confira documentação dos autores quando a mudança impactar dados ou tarefas agendadas.

Em rede de servidores, considere roteamento e troca de mundos. Um portal pode descarregar a região de saída ou carregar outra dimensão. O ajuste local de cada mundo pode alterar a quantidade de trabalho concorrente. Teste fluxos de jogadores reais e confira as métricas por instância.

Monitore e reverta quando necessário

Depois de promover, registre a mudança e monitore durante períodos normais e de pico. Compare uso de memória, GC, MSPT, chunks carregados e feedback. Revise após explorar regiões diferentes e após evento que espalhe os jogadores. Se uma métrica de saúde ultrapassar o limite definido, restaure a configuração ou reduza o intervalo.

Explique à equipe o que mudou, em quais mundos e qual o gatilho de rollback. Mantenha o arquivo anterior e o procedimento acessíveis. Essa disciplina evita que uma experiência temporária vire valor permanente sem que alguém entenda por quê.

O melhor valor é aquele que resolve um padrão comprovado sem acumular custo fora do cenário. Se o diagnóstico não aponta para carregamentos repetidos, invista tempo em profiling, geração prévia de mundo quando apropriado, armazenamento ou correção de plugins. Um atraso no unload é um ajuste de política de retenção, não um substituto para localizar o gargalo.

Fontes e referências

Documentação consultada em 2026-10-08. Os exemplos precisam ser conferidos na versão instalada; este guia não afirma que a configuração foi testada no seu ambiente.