Umoria

Umoria (also known by the more complete title The Dungeons of Moria) is a roguelike video game, originally written as a C port of the VMS Pascal game Moria. The current actively-developed version of Umoria is written in C++. It is released under the terms of the GPL version 3 or later.

In Umoria, players create a character and venture into the "Mines of Moria", a cavernous dungeon inhabited by dangerous monsters and stuffed with valuable treasures. Players descend deeper into the randomly-generated mines, until they encounter the mighty Balrog at the bottom. Victory is achieved when the Balrog is destroyed.

Gameplay
Umoria, like its direct predecessor Moria, is set in a fantasy world heavily inspired by The Lord of the Rings by J.R.R. Tolkien. The goal of the game is to descend deep in the Mines of Moria and defeat a terrible monster called the Balrog. At the beginning of the game, the player creates their character by making a series of choices to determine their race, class, background, and gender. The background is randomly generated, but can be re-rolled (this re-rolling feature was one of the first defining additions that Umoria had over the original VMS Moria in its later versions). Once a character has been created, certain characteristics (such as weight, height, and sex) cannot be modified, while others (such as strength, dexterity, and constitution) can be increased or decreased over the course of the game by using items.

The game begins on a town level, where the player has access to a number of shops where they can spend their money to purchase weapons, armor, and other items. Once finished on the town level, the player descends into the randomly-generated dungeon levels where they will fight monsters and acquire loot. Every time a staircase is used to ascend or descend a level in the dungeon, the player will arrive at a completely random level, meaning that it is impossible to return to levels one has already beaten. The deeper the player travels in the Mines of Moria, the more powerful the monsters become, until eventually the Balrog is encountered at a depth of 2500 feet. If the player is able to defeat the Balrog, they will achieve victory, and will no longer be able to save their game.

Different classes have different abilities they can acquire over the course of their adventure, with some having access to magic and some having access to prayers (priest spells). The warrior is a physical-combat-only class and does not have any extra abilities.

Like most roguelike games, Umoria features permadeath, meaning that characters that are killed during their adventure cannot be recovered and a new character must be created and the adventure restarted. Umoria is notably difficult; most players have never even encountered the Balrog, much less beaten the game.

History
The original Moria was first developed in VMS Basic (and later rewritten in VMS Pascal) by Robert Alan Koeneke with the help of Jimmey Wayne Todd at the University of Oklahoma in the early 1980s. Koeneke was heavily inspired by Rogue, which he had played earlier on a UNIX system, but which could not be run on the VAX-11/780 to which he had access at the time. The initial versions of Moria were not portable to systems other than the minicomputers running VMS that Koeneke's chosen dialect of Pascal was supported on. In 1985 the source code for the original Moria was distributed to other students at the University of Oklahoma and the University of Texas, and eventually ended up online. Around 1986, Koeneke released Moria version 4.7, the last VMS Pascal version of the game. He was developing a "5.0" version of the game at the time, but graduated soon after and never completed it.

In 1987, James E. Wilson created a C language conversion of the last officially released version of Moria, targeting UNIX and MS-DOS, and released it on the comp.sources.games mailing list. Wilson originally called his C port "UNIX Moria", but the moderator of the comp.sources.games mailing list shortened it to "Umoria", and the name stuck. This version was a complete rewrite of the game from scratch, using the VMS sources as a reference, and had a totally original codebase and a few new features and bug fixes. Wilson continued development on this version for some years, and Umoria was eventually ported to many different machines and operating systems.

In 2006, Ben Asselstine and Ben Shadwick began the "free-moria" project, which was an effort to change the license of Umoria from its original release terms (which were not fully free owing to the restrictions placed on distribution) to a true free software license. The free-moria project went about this task by contacting Robert Alan Koeneke (who holds the copyright on the original Moria) and receiving his permission to relicense the Umoria derivative, and then emailing everyone who provided actual code to the C language Umoria project to request their permission to relicense their contributions. This process was completed in October 2007, and Umoria was officially relicensed under the GPL version 2+, and later under the GPL version 3+.

Many other roguelikes are directly descended from Moria and/or Umoria, notably Angband.

Development
Currently, Umoria is being actively developed on GitHub. The game has been rewritten in C++, and the main development focus recently is the version 5.7 "Umoria Restoration Project", which aims to continue the restoration of the Umoria source and documentaion, and targets supporting the modern versions of the Windows, macOS, and Linux operating systems. This has resulted in the game becoming playable on much wider variety of machines.