Arnis converte locais do mundo real em mundos de Minecraft que os jogadores podem explorar. O projeto de código aberto utiliza o OpenStreetMap e outras fontes e, desde que Louis Erbkamm o iniciou em 2022, registrou quase 900.000 downloads no GitHub. Cerca de 70 colaboradores ajudaram a desenvolvê-lo.

Erbkamm criou o primeiro protótipo em cerca de duas semanas, durante uma pausa nos estudos. O projeto começou como um experimento pessoal que combinava Minecraft com dados geográficos. Ele escolheu a cidade alemã de Arnis como local de teste porque seus edifícios, ruas e cursos d’água ofereciam uma variedade de elementos para experimentar. Mais tarde, o projeto recebeu o nome da cidade, embora Erbkamm diga que nunca a visitou.

Arnis gera uma área selecionada consultando o OpenStreetMap em busca de elementos mapeados e usando suas coordenadas e tipos para posicioná-los no jogo. Os elementos que não estão mapeados não podem ser gerados. Para estruturas que exigem mais detalhes do que os dados cartográficos fornecem, como a Estátua da Liberdade ou o Cristo Redentor, o projeto pode converter modelos 3D em blocos de Minecraft.

A comunidade do projeto contribuiu com traduções para cerca de 20 idiomas e desenvolveu recursos importantes. Quando Erbkamm considerou migrar Arnis de Python para Rust, abriu discussões no GitHub para coletar opiniões. A inclusão de dados de elevação também atraiu especialistas em geoespacial, que ofereceram ideias para o projeto.

Erbkamm é o único mantenedor do Arnis e revisa solicitações de pull request além de seu trabalho diário, muitas vezes à noite ou nos fins de semana. Ele usa o GitHub Copilot para revisar problemas e bugs em aberto, avaliar quantos usuários são afetados, rastrear problemas na base de código e ajudar a preparar correções. Ele afirma que a ferramenta também ajudou a aumentar a quantidade de trabalho de revisão de código e documentação.

Para solicitações de pull request maiores, Erbkamm usa o aplicativo GitHub Copilot para obter uma visão geral inicial e avaliar o desempenho. Ele também usa subagentes para examinar áreas do código que podem estar vulneráveis a regressões e sugerir casos extremos para testes. Pequenos erros, como um cálculo incorreto envolvendo postes de iluminação, podem atrasar significativamente a geração de uma cidade inteira.

Erbkamm diz que um de seus usos favoritos do Arnis é nas escolas. Professores geraram áreas locais para atividades em sala de aula, nas quais os alunos aprimoram parques ou playgrounds no Minecraft e comparam seus trabalhos.

Lançamentos recentes acrescentaram a Lua e Marte. Erbkamm quer que o projeto continue fácil de usar enquanto adiciona detalhes e reduz o tempo de geração, e espera vê-lo usado em mais escolas. Os usuários podem baixar o Arnis no GitHub, selecionar um lugar e um ponto de partida no mapa e gerar um mundo para abrir no Minecraft. Elementos ausentes podem ser reportados como bugs ou adicionados ao OpenStreetMap.

Fontes: GitHub Blog.