





Six D&D style classes and up to eight races create a unique play experience in your battle with randomized dungeon depths. Start your game in town with rags or riches based on a custom character backstory. Warrior class is recommended for players who are new to the game.
Progress you character with experience and attribute gains (strength, intelligence, wisdom, constitution, and charisma). Acquire spells, armors, weapons, wands, staves, potions, scrolls, legendary artifacts, and mining tools that shape your journey.
A character checkpoint is saved on each level transition. Checkpoints are persistent saves valid across all versions of the game. You may exit at any time, creating a midpoint save which provides the capability to quickly resume play. CTRL-z may be used to rewind previous actions up to the last checkpoint. Game patches ensure bugs are fixed by loading the last checkpoint, and invaliding the midpoint save.
Each town is generated during character creation. Shopkeepers feature unique personalities, item value preferences, and racial bias. You may visit town to renew your character and barter for goods using scrolls of Word-Of-Recall. The same scroll Word-of-Recall, when used in town, can return you to the deepest depths that you have visited in the Dwarvish mines below.
Koeneke paints a world of entropy where even artifacts of incredible power may fall apart. Learn the conditions of survival and die at the hands of merciless foes. This game wasn't made to be won, for the Balrog is a foe beyond any of you.
# Features of awesomeness
* Accessible gameplay: intuitive interactions with five essential commands.
* Preserves the roguelike variety that keeps you playing again and again.
* Pixel Artwork for 279 monsters plus dungeon tiles.
* Rewindable game simulation; learn quickly from your mistakes and play on!
2025 Q2 Game Updates:
# Art
map draw preserves pixel art aspect ratio
ASCII mode uses unsmoothed glyphs; uses no zoom factor
# Gameplay
Victory Screen
Extra Feature: balrog reset (balrog spawning is otherwise disabled)
"gp" suffix for shop/pawn price (previously "g")
digging tunnel rewrite
str bonus added per turn of digging tool (up to 5/4)
str bonus added per turn of non-digging tool (up to 5/16)
heavy weapon penalty removed (it's hard enough to carry tools when weak)
digging tools provide base 25; non-digging tools provide max dice roll
base/dice requirement: 80 granite, 16 magma, 10 quartz, 0 rubble
https://rufe.org/moria/patch2025_q2.html
## Gameplay
* Victory Screen
Extra Feature: balrog reset (balrog spawning is otherwise disabled)
* "gp" suffix for shop/pawn price (previously "g")
* digging tunnel rewrite
str bonus added per turn of digging tool (up to 5/4)
str bonus added per turn of non-digging tool (up to 5/16)
heavy weapon penalty removed (it's hard enough to carry tools when weak)
digging tools provide base 25; non-digging tools provide max dice roll
base/dice requirement: 80 granite, 16 magma, 10 quartz, 0 rubble
https://rufe.org/moria/patch2025_q2.html
Shop & Pawn gold display fixes.
Icon is disabled on windows until I get more info on user crashes.
# Font Changes
* greyscale glyphs
* larger glyphs w/ bold styling
* optimize away per-glyph logic
* remove intermediate text render target
# Game
* Unknown Scroll names preserve syllables
* Rewrite study object & inventory object descriptions
* Optimizations to monster movement
* Fix monster behavior relating to eating lesser creatures
* Monster breath AoE no longer gives player credit for kills
https://rufe.org/moria/patch2025_q1.html
Windows
- init errors open an console and print information
- graphics errors fallback to software renderer (try running the game twice)
- gameplay errors flush character to disk
Linux/Mac
- init errors write to "log.txt"
Additional:
- Steam runtime detection; moria_at.exe can be run from commandline
- Compiler update for windows threading improvements (cosmocc 4.0.2)
For those who want the crisp nostalgic moment of playing the original terminal game, here you go!
Windows users have an additional launch option. Linux and Mac users may run launch.sh from the classic/ subfolder.
Friends of Moria, this patch overhauls game controllers to align with the SteamDeck ecosystem. In some cases this is contradictory with the mobile build of the game, and that's OK. The game plays intuitively in the context of the device.
We've generalized game controller support to aim for all SDL2 controllers listed as of Nov 2nd, 2023. We tested on SteamDeck and PS5 Dual Sense (Windows and Linux). Please reach out if you have a question about specific game controllers.
We've joined x.com @RufeDotOrg or email us moria@rufe.org
Here are the gameplay mappings for controllers:
buttons by position: NORTH, EAST, SOUTH, WEST (ignoring label A/B/X/Y etc)
## Left Analog Stick
* The left analog stick selects the direction of an action.
* Buttons perform actions in the direction specified.
## Directional Button Input (LSTICK 8 directions)
* SOUTH: move or attack
* EAST: run
## Non-directional Button Input (LSTICK in neutral position)
* SOUTH: dungeon interaction / search, stairs, open chest, reenter town shop
* EAST: inventory / actuate or drop item
* NORTH: repeat last actuate (zap, cast, dig, ...)
* WEST: history of combat text
* LEFT SHOULDER: character screen
* RIGHT SHOULDER: minimap
* BACK: undo last gameplay command
* START: advanced gameplay options
* LEFT TRIGGER: look prompt
* RIGHT TRIGGER: adjust camera zoom
# Menu: Directional Input (LSTICK 4 directions)
* SOUTH: single-step
* EAST: multi-step
## Menu: Non-Directional Input (LSTICK in neutral position)
* SOUTH: confirm choice
* EAST: alternate choice
* NORTH/WEST: close menu
* LEFT TRIGGER: drop toggle for inventory
* RIGHT TRIGGER: sort inventory or shop
# Patch Notes; Novemenber 2024 (Q4)
## Performance
* puff() inflate uses streaming; reducing start-up time and memory requirements
* sprite initialization uses SDL for index1 to texture conversion
## Gameplay
*Ring of Koeneke replaces Ring of Sustain Charisma
** Character XP to level penalties are reduced by half. This greatly improves the viability of race/class combinations that yielded very high penalties (Elf Ranger for example).
** Potion of ugliness is the only item that drains charisma. Sustain charisma makes a good candidate for replacement.
*Regeneration (crown or DF weapons) adds a bonus of +40 Max HP.
** Characters with bad luck HP rolls may be as low as 3/8 of their maximum hit dice. It may be mid to late game before you discover low HP, and thus itemization can provide an alternative to deleting and starting over.
## PC-only
* fix -more- text when using examine/look
* update to cosmocc 3.9.6 (build determinism fix for uninitialized memory)
* Fix loot drops in special rooms
* Global game option for landscape font size
* windows minspec change: version 10 or beyond
* smaller game binary ~100KB x2: aarch64 & x86_64
* determinism for release builds
* xnu (macOS) crash handler enabled
* xnu (macOS) game logging enabled
* floating point trapping disabled
* set window icon, title
* a crash during initialization switches to software rendering for subsequent runs
email moria@rufe.org if you are impacted by this release. It may be helpful to include your operating system, cpu, and gpu.
* JOYSTICK subsystem is initialized after pre-game setup.
-Gameplay zoom is adjusted if a controller change is detected
-Inventory selection screen rewrite (drop mode access, input hints)
-bugfix -more- text getting stuck after failure to dig
- Button mapping for Steam Input virtual gamepad
- Support for analog triggers when using Steam Input virtual gamepad
- Fix Steam Deck's built-in controller
Fix display issues on 1280x800 display (downscale layout using linear filtering).
Please contact us if you have any SteamDeck requests or issues!
Gameplay changes:
Create food may place food on any dungeon tile of distance 1 or less.
Other changes:
Zoom adjustment: minus key only; plus key is unbound
Study screen is read-only (no more drop/actuate)
Quit option added to the game menu
# Game Controller Reference Devices
* Sony Interactive Entertainment DualSense Wireless Controller
* Steam Deck (XBox style)
# Controller Menu Navigation
Right button to confirm.
Left or Bottom button to cancel.
Main menu: Left button delete character prompt.
Reroll Popup: Left button reroll. Right to accept.
Inventory menu: Bottom button study. Right button to actuate. Top button to sort. DPAD step 1, step many, step to first/last, toggle inventory/equipment.
Death menu: Left button back back to death. Right button for menu. Gameplay character, message history, and undo (see below).
# Controller Gameplay
Right button: dpad move, dpad center is acknowledgement-only
Bottom button: dpad run, dpad center is actuate item
Left button: game reset menu
Top button: search, pick-up item, take stairs, open chest, reenter shop
Left trigger: drop menu
Right trigger: repeat actuate
Left bumper: character
Right bumper: minimap
Tiny left: undo
Tiny right: message history
system button: zoom adjustment
Controller info source: https://rufe.org/moria/game_controller.html
# Patch Notes; Q3 2024
# Gameplay
* Fix the proliferation of multiplying monsters by checking player distance against creature awareness
* Add -more- prompt to a few text displays that wait for input
# Interface
* Display version text on all screens (non-interactive)
# Spells: Detect evil, detect monster, detect invisible (scroll)
* increase duration from 1, add player level divided by 5
* remove distance limitations
* optimize visibility test of creatures subject to detection
* optimize visibility override by deleting the code
# PC changes (Keyboard)
* Warn when numlock is enabled, due to windows handling of shift+numpad
* Remove low mana warning on spells with no target
* Reduce latency of keyboard input
(Holding off on key rebinding / controller changes; still in progress)
Users getting a black screen on start-up may copy "software.cache" to "moria.cache". This disables GPU acceleration and uses the software renderer as a safe mode. We are working to improve GPU accelerator compatibility.
Minimum Setup
- OS: Linux Kernel 2.6.18+
- Processor: AMD K8 | Intel Core Series or newerMemory: 4 MB RAM
- Memory: 4 MB RAM
- Graphics: OpenGL
- Storage: 10 MB available space
[ 6404 ]
[ 1916 ]
[ 4299 ]