Soluções para travamentos comuns que você pode encontrar ao jogar A Hat in Time em um sistema Linux através do Steam Play.
Antes de seguir este guia
Se estiver com problemas para executar o jogo, você deve adicionar
PROTON_LOG=1
às opções de inicialização do seu jogo. Isso criará um arquivo de log (steam-253230.log) em seu diretório pessoal, contendo tudo o que o jogo/Proton está fazendo durante a execução do jogo. Isso deve ajudar se a falha for algo que não acontece no Windows.
Certifique-se de remover esta opção de inicialização se não a estiver usando – o tamanho do arquivo de log pode aumentar rapidamente durante a reprodução.
Também tenha em mente:
- Muitos dos comandos neste guia assumem que você tem acesso root/superusuário ao seu sistema
Falha ao usar muitos mods ou vários mods grandes
Se você estiver tendo problemas para carregar o jogo ou entrar em um nível com certos mods instalados, ou passar por uma certa quantidade de mods, verifique seu arquivo de log em busca de uma linha como esta:
err:virtual:try_map_free_area erro mmap() não pode alocar memória, intervalo 0xf4f60000-0x8ad0000, unix_prot 0x3
Neste caso, o intervalo não importa.
Se isso aparecer muito em seus logs, você pode ter um vm.max_map_count baixo.
O que é vm.max_map_count?
No Linux, os parâmetros do sistema podem controlar vários comportamentos do sistema subjacente, independentemente da distribuição que você está executando. vm.max_map_count controla os limites do sistema operacional no número máximo de áreas de mapa de memória (mmap) que um processo pode ter. Se um processo não puder alocar áreas de mapa de memória suficientes, o processo poderá travar.
Por padrão, vm.max_map_count é cerca de 65530 ou 65535 na maioria das distribuições do Linux (1 por 128kb de memória do sistema ou cerca de 8gb de memória por padrão). O Steam Deck, no entanto, vem com um valor de 2147483642 (ou, MAX_INT – 5) para compatibilidade máxima com jogos do Windows, portanto, não deve ocorrer esse problema.
Um valor mais sensato para defini-lo pode ser 262144 (32 GB).
Você pode verificar o valor atual em seu sistema executando este comando de terminal (saída de exemplo incluída):
sudo sysctl vm.max_map_count [sudo] senha para root: vm.max_map_count = 65530
Alterando vm.max_map_count temporariamente
Mesmo se você quiser corrigi-lo permanentemente, tente isso primeiro.
Para alterar o valor de vm.max_map_count, execute este comando de terminal, substituindo com o número que você deseja usar.
sudo sysctl -w vm.max_map_count=
Isso deve entrar em vigor instantaneamente. Tente executar A Hat in Time novamente e veja se ele será inicializado agora!
Se isso não funcionar para você, você mesmo pode definir o valor de volta ou reiniciar o sistema.
Alterando vm.max_map_count permanentemente
Encontrou um valor que funciona para você? Ótimo! Vamos agora configurá-lo para que seu sistema o aplique automaticamente na inicialização.
O local para definir isso é em /etc/sysctl.conf, mas se você tiver uma pasta /etc/sysctl.d, pode ser preferível criar /etc/sysctl.d/99-steamplay.conf.
Em qualquer arquivo que você decidir, adicione a seguinte linha, novamente substituindo com o número de sua escolha:
vm.max_map_count=
Certifique-se de salvar o arquivo e, ao reiniciar, o novo valor deve ser aplicado automaticamente!
Isso é tudo o que estamos compartilhando hoje para isso Um Chapéu in Time guia. Este guia foi originalmente criado e escrito por Splatsune Miku. Caso não consigamos atualizar este guia, você pode encontrar a atualização mais recente seguindo este link.