3 pontos por GN⁺ 2024-06-17 | 1 comentários | Compartilhar no WhatsApp

Micropolis em WebAssembly

Visão geral

  • Micropolis é um jogo originalmente baseado em SimCity Classic, com design da Maxis e concepção de Will Wright.
  • Esta é a versão portada para WebAssembly por Don Hopkins.
  • Atualmente está em desenvolvimento, com mais recursos previstos para serem adicionados.

Principais recursos

  • Pan e zoom: arraste com o botão esquerdo do mouse para mover a visão e use a roda do mouse para dar zoom.
  • Controles pelo teclado: use as setas para mover a visão e as teclas vírgula e ponto para zoom.
  • Carregamento de cidades: pressione teclas de letras para carregar diferentes cidades, e a tecla Tab para gerar uma cidade.
  • Ajuste de velocidade: use as teclas numéricas para definir a velocidade, e a tecla 0 para pausar.
  • Ajuste de impostos: use as teclas de colchetes para ajustar a taxa de imposto.

Informações adicionais

  • GitHub: MicropolisCore
  • YouTube: "MicropolisWeb Demo 1" e "Space Inventory Cellular Automata Music 1"
  • Referências: o livro "Building SimCity", de Chaim Gingold, e "SimCity Reverse Diagrams"

Observações

  • Barra de espaço: pressionar a barra de espaço abre o Space Inventory, então é preciso tomar cuidado.

Opinião do GN⁺

  • Ponto interessante: é interessante poder curtir o SimCity Classic original no navegador.
  • Desafio técnico: implementar na web um jogo de simulação complexo usando WebAssembly é um desafio técnico.
  • Experiência do usuário: os diversos controles por teclado e a interface com mouse melhoram a experiência do usuário.
  • Em desenvolvimento: o projeto ainda está em desenvolvimento, então há expectativa por novos recursos e easter eggs.
  • Projeto relacionado: um projeto semelhante é o OpenTTD, um jogo de simulação open source.

1 comentários

 
GN⁺ 2024-06-17
Comentários no Hacker News
  • Portar jogos clássicos para a web é divertido. Muitos jogos são menores, carregam mais rápido e funcionam melhor do que páginas web modernas.
  • Lembro de jogar SimCity quando era criança. Mas parece que ele não funciona direito no navegador atual. Dá para carregar e observar a cidade, mas é estranho não poder construir a própria cidade.
  • Eu não esperava SimCity no celular, mas esta página realmente travou o Firefox. Tive que encerrar o processo no Android. Aliás, também tenho um joguinho que portei para o navegador. Foi fácil fazê-lo rodar com Emscripten e SDL2, mas o maior esforço foi torná-lo totalmente jogável no celular.
  • Tenho experiência em portar o cliente do RuneScape para a web. Usei Wasm, Typescript e WebGL.
  • Os controles não funcionam e, assim que o navegador carrega alguma coisa, a ventoinha da CPU dispara. Fico desconfiado se isso não é um minerador de criptomoeda. Se não for, fico me perguntando por que publicar algo que não funciona.
  • Micropolis web demo 1: Micropolis é um SimCity open source baseado em navegador, usando WebAssembly, WebGL e SvelteKit. As versões iniciais executam o simulador em WebAssembly e animam os tiles com WebGL, mas a maior parte da interface de usuário ainda está em desenvolvimento.
  • No site do Micropolis web e no repositório do GitHub, é possível conferir o código-fonte e a documentação.
  • Você pode obter mais informações no livro "Building SimCity" de Chaim Gingold.
  • Space Inventory Cellular Automata Music 1: o primeiro vídeo do Micropolis web inclui música de Juho Hietala, Blamstrain, e apresenta o autômato celular de inventário espacial feito por Don Hopkins.
  • Surpresa com o que acontece ao pressionar a barra de espaço. Um fractal incrível aparece.
  • Fico me perguntando por que quase todos os quarteirões da cidade têm um corpo de bombeiros.
  • Fico pensando se uma LLM conseguiria portar esse tipo de jogo instantaneamente.