The Dungeons of Moria é uma simulação de masmorra para um jogador originalmente escrita por Robert Alan Koeneke, com seu primeiro lançamento público em 1983. O jogo foi originalmente desenvolvido usando VMS Pascal antes de ser portado para a linguagem C por James E. Wilson em 1988, e lançado como Umoria .
Moria/Umoria teve muitas variantes ao longo dos anos, sendo Angband a mais conhecida. Umoria também foi uma inspiração para um dos jogos roguelike de ação de maior sucesso comercial, Diablo !
Plataformas suportadas:
Windows
macOS
Linux (Ubuntu/Debian)
A compilação e os testes limitados foram feitos para outros sistemas baseados em Linux, incluindo NetBSD 8.1 e Fedora 32.
O foco principal da versão 5.7.0
foi fornecer suporte para os três principais sistemas operacionais: Windows, macOS e Linux. O suporte para todos os outros sistemas de computador desatualizados, como MS DOS, Mac OS "Clássico" (pré OSX), Amiga e Atari ST foi removido.
Observação: não houve mudanças intencionais na jogabilidade nas versões 5.7.x.
Desde o lançamento inicial 5.7, uma grande restauração de código foi realizada na esperança de ajudar no desenvolvimento futuro do jogo. Alguns exemplos do trabalho realizado incluem reformatar o código-fonte com a ajuda de clang-tidy
e clang-format
, modernizar o código para usar tipos C padrão, dividir a maioria das funções grandes (muitas das quais tinham centenas de linhas de código) em funções menores. , funções mais fáceis de ler e corrigindo todos os avisos do compilador ao compilar em versões recentes do GCC e Clang.
Detalhes completos de todas as alterações podem ser encontrados no CHANGELOG e navegando no histórico de commits.
Devido à falta de suporte para Windows e macOS, Moria era inacessível para muitas pessoas. Esperamos que essas mudanças dêem a muito mais pessoas a chance de jogar este clássico jogo roguelike.
O Umoria foi testado no GCC ( 10
e 11
) e no ncurses 6.x
, embora versões anteriores recentes também devam funcionar bem.
Você precisará deles, bem como CMake
e das ferramentas de construção C++ para o seu sistema.
Mude para o diretório do jogo umoria
e digite os seguintes comandos no terminal:
$ mkdir build && cd build $ cmake .. $ make
NOTA: use make -j $(nproc)
para acelerar a compilação no Linux.
Um diretório umoria
será criado no diretório atual contendo os arquivos binários e de dados do jogo, que podem então ser movidos para qualquer outro local, como o diretório home
.
MinGW é usado para fornecer GCC e GNU Binutils para compilação na plataforma Windows. A solução mais fácil de configurar é usar o instalador MSYS2. Uma vez instalado, pacman
pode ser usado para instalar GCC
, ncurses
e as ferramentas de compilação make
/ cmake
.
Atualmente, uma variável de ambiente para o sistema MinGW que está sendo compilado precisará ser especificada. Será mingw64
ou mingw32
.
No prompt de comando, digite o seguinte, certificando-se de adicionar o rótulo correto a MINGW=
:
$ MINGW=mingw64 cmake . $ make
Para executar uma compilação fora do código-fonte, digite o seguinte:
$ mkdir build $ cd build $ MINGW=mingw64 cmake .. $ make
Tal como acontece com as compilações do macOS/Linux, todos os arquivos serão instalados em um diretório umoria
.
A maioria dos arquivos de documentos originais incluídos nas fontes do Umoria 5.6 foram colocados no diretório histórico. Você encontrará até o antigo CHANGELOG, que rastreia todas as alterações de código feitas entre as versões 4.81 e 5.5.2 (1987-2008). Se você quiser aprender mais sobre a história do desenvolvimento de Umoria, esta pode ser uma leitura interessante.
Há também o Manual Moria original e FAQ. Embora estejam um pouco desatualizados agora, certamente vale a pena lê-los, pois contêm muitas informações interessantes e úteis.
Veja aqui detalhes sobre nosso Código de Conduta.
Para obter detalhes sobre como contribuir para o projeto Umoria, leia nosso guia de contribuição.
Umoria é lançado sob a Licença Pública Geral GNU v3.0.
Em 2007, Ben Asselstine e Ben Shadwick iniciaram o projeto free-moria para licenciar novamente o UMoria 5.5.2 sob GPL-2, obtendo permissão de todos os autores colaboradores. Um ano depois, eles conseguiram seu objetivo e no final de 2008 o mantenedor oficial David Grabiner lançou o Umoria 5.6 sob uma licença GPL-3.0 ou posterior.