Estudando o caso do jogo Starbound (no Linux)

Não sei quem aqui já jogou esse “aparente clone de Terraria”. Para quem não conhece, esse é um jogo desenvolvido e publicado pela Chucklefish para Windows, MacOS e Linux em Julho de 2016, cinco anos depois do lançamento de Terraria na Steam. Mas isso não significa que Starbound seja um clone de Terraria. Claro que a idéia de ser um jogo de visão lateral e construção livre “caixinha de areia” realmente dá essa impressão. Mas em todo o resto, Starbound supera Terraria em alguns pontos e é superado em outros. O jogo está 100% em inglês e não há opção de outros idiomas.


Um pouco sobre o jogo:

Starbound já começa de diferenciando de concorrentes como Terraria e Minecraft logo na parte de criação de personagem. Na data de postagem desse artigo, são sete raças de personagem que podem ser criados: Florans, Hylotls, Avians, Apex, Glitch, Humanos e Novakids. Virtualmente, as diferenças entre as sete raças são puramente estéticas. É possível selecionar o sexo, cor de pele, cor de cabelo, estilo de cabelo, roupas e personalidade, que apenas muda a pose do personagem quando ele, ou ela, está parado no lugar.

Após a criação do personagem, ele é levado ao quartel general do Protetorado Terráqueo, uma aliança interestelar entre raças alienígenas, com foco em formar relações de paz. Vou evitar de dar muitos detalhes para não estragar a experiência de quem estiver interessado em jogar. Mas logo logo você recebe sua nave pessoal e é com ela que você viajará de planeta em planeta no universo do jogo, que é gerado automaticamente. E da mesma forma como o nosso próprio universo, ele está em constante expansão, um ponto positivo se comparado com Terraria e Minecraft, que possuem mundos finitos. E esse universo é compartilhado entre personagens, então é possível visitar os mesmos planetas entre personagens, caso assim desejar.

O grande diferencial:

Starbound se destaca em ser um jogo escrito quase por completo em Lua e Jsons, permitindo um nível de modificação assombroso, porém limitado ao que os desenvolvedores do jogo permitem, tendo suporte a mods nativo, sendo algo até usado como ponto de marketing na página do jogo. É possível adicionar novas raças ao jogo, novas missões, novos tipos de planetas para explorar, novas armas, modificar os assets já existentes no jogo e muito mais.

Provavelmente esse deve ser a característica mais forte de Starbound. Eu já vi mods sensacionais, como o Shellguard, Elithian Races Mod e Extended Story, que servem mais como grandes expansões feitas por fãs do que meras adições. E por ter sido desenvolvido com mods em mente, a experiência base de Starbound acaba sendo um pouco rasa demais. A estória principal, inicialmente, é apresentada de forma impactante e que vai assustar jogadores a primeira vista. Mas após o objetivo ser apresentado, a execução é, de certa forma, bem fraca, realmente necessitando dos mods da comunidade, como os já citados, para realmente deixar o jogo mais interessante para aqueles que gostam de fazer as missões do jogo. Também fica uma grande recomendação da minha parte para o mod chamado Feast of Fire and Smoke. Pode ficar um pouco confuso para quem não entende muito de inglês mas para quem não vê isso como problema, está aí uma excelente expansão para a estória nativa do jogo.

A grande desvantagem:

Por causa da forma como o jogo foi programado, com todos esses assets escritos em Lua e Jsons, aliado de uma pobre otimização na parte gráfica, o jogo pode sofrer problemas de performance bem pesadas dependendo do que acontece na tela. Computadores com processadores Intel Core i5 de 7ª geração (e até superiores) com placa de vídeo dedicada, sofrem para rodar esse jogo em certos momentos, como quando uma missão pré criada do jogo tem um mapa enorme ou tem efeitos de névoa intensa, ou mesmo quando a ação na tela é intensa, com muitos inimigos na tela.

O resultado é uma queda intensa de performance. Normalmente, o jogo roda a 60 FPS em situações ideais de jogo. Para computadores menos potentes, o jogo pode ficar em torno dos 30 FPS. Mas independente das especificações do ocmputador, essa performance pode cair para 15 ou até mesmo 5 FPS. Um exemplo disso ocorre nas missões do mod Shellguard, com duas delas já tendo um aviso de que o mapa da missão é bem grande, necessitando um tempo adicional para carregar o mapa, o que pode levar de um a cinco minutos para computadores recentes, ou até dez minutos para computadores mais antigos.

Todos esses mapas, assets do jogo, tudo o que está acontecendo na tela, é carregado para a memória RAM do computador. Esse fato, aliado da má otimização do jogo, faz com que ele se torne bem pesado para a memória do computador. No caso do Windows, pode deixar o jogo extremamente lento e irresponsivo. No Linux, pode causar o sistema mandar um SIGKILL para fechar o jogo caso o SWAP não esteja ativado. E mesmo com SWAP ativado, pode tornar muitos computadores irresponsivos, como os que tem 4 GB ou 6 GB de RAM. Computadores com 8 GB de RAM ainda podem ter uma baixa de performance considerável mas não tão extrema, embora ainda não seja 100% jogável

Steam Linux Runtime

A estória muda quando falamos do lançamento para Steam. A versão de Linux, embora ainda possa apresentar esses mesmos problemas acima, possui uma opção de usar a camada de compatibilidade Steam Linux Runtime que, assombrosamente, resolve muitos dos problemas de otimização desse jogo. A baixa de performance em momentos de gráficos intensos, como de névoa, não afetam tanto assim a performance do jogo, mesmo em computadores com gráficos integrados. Momentos de muita ação também não causam quedas de frames extremas, permitindo que mods como Feast of Fire and Smoke, que leva as missões ao pé da letra do nome do mod, funcionem suavemente. E outros que, por outro momento carregaria mapas inteiros na RAM, faz melhor uso da RAM.

Tudo isso que eu disse foi testado em um Intel Core i3-7020U com apenas a Intel Graphics UHD 620. Se comparado com um Ryzen 5 3500U com NVIDIA GTX 1050, que é o computador que um amigo meu que também joga o jogo, possui, vê-se momentos o qual o jogo dele caia tantos frames que simplesmente congelava. E nós dois estavamos jogando em um servidor dedicado, o que teoricamente reduziria a necessidade de fazer um host local em P2P.

Agora fica aqui minha hipótese. Steam Linux Runtime foi capaz de tornar um jogo mal otimizado, com melhor performance. Seria isso devido as versões de bibliotecas e controle de recursos ser gerenciado pela própria runtime, ou será que tem mais algo acontecendo por debaixo dos panos para tornar esse jogo, melhor jogável em Steam Linux Runtime do que nativamente? Quero ouvir a opinião de vocês

3 curtidas

Não estou apto a responder os questionamentos finais, mas depois da sua divulgação e comparação entre plataforma até me deu vontade de testar o game

:sweat_smile:

2 curtidas

Opa! Depois me diz o que achou. Quem sabe até dá para combinar um horário para jogar junto

2 curtidas